YubiKey USB Device Used for Physical Lock Prototype
Lockpicking has become a popular hacking sub-discipline, and after considering the risks even to renowned physical hardware, Richard J. Prinz decided to experiment with something new. Instead of using a mechanical key, his approach was see if he could make the YubiKey that he uses daily to interface with IT systems and services to activate a lock.
His goals for the project included that it be easy to build, cheap, open source, and electrically autonomous, all of which are fulfilled with his Arduino Uno-based prototype. A 64-character key is generated and stored on a YubiKey device, along with the matching code on the board. Once inserted into a USB host shield, the Arduino compares the key code with the stored code, unlocking access, or lighting up a green LED in this case.
Testing shows that the setup can be implemented with multiple keys — five stored codes gives an unlock time of around one second — matching up with another of his project requirements. As of now, the device is still very much prototype, but it’s an interesting concept that could provide an extra layer of security when implemented in a secured housing with an actual locking mechanism.
Code for the project can be found on GitHub if you want to try it yourself!