Skip to content
Firmware for Nitrokey FIDO U2F
Branch: master
Clone or download
Pull request Compare This branch is 365 commits ahead, 2 commits behind conorpp:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
70-u2f.rules Use usb subsystem in udev rules file Jul 27, 2018

Nitrokey FIDO U2F

Nitrokey Fido U2F Rev.5

Nitrokey FIDO U2F is based on U2F Zero, an open source, open hardware U2F token for 2 factor authentication. It is implemented securely and works with Google accounts, Github, Duo, and anything else supporting U2F. Uses key derivation and has no limit on registrations.

Hardware files are provided here. Nitrokey's device differs in using a touch button instead of a regular one, as well as using smaller PCB and bigger flash MCU.


U2F key derivation algorithm, and other working details, are documented in files placed in the doc folder.

Build (Ubuntu 18.04)


Instructions for H/W Rev4 and lower, based on UB10 MCU.

  1. Download Simplicity Studio 3 link (v4 will make bigger binary, which will not fit).
  2. Unpack it and run ./ script.
  3. Rename internal wine installation: cd SimplicityStudio_v3/developer/utilities/third-party && mv wine{,_}.
  4. Install wine-stable package: sudo apt install wine-stable.
  5. Run Studio.
  6. Select and download proper dev kit (will be autodetected if debugger and device are connected).
  7. Register KEIL compiler.
  8. Build the source.


Pending. Simplicity Studio 4 will be used.

Usage (Ubuntu 18.04)

Udev rules might be required to use the device without administrator privileges. Please run ./ script, which will copy rules file (./70-u2f.rules) to system directory on Ubuntu. For other OSes - please check the proper path and issue the copying manually.

Client and setup scripts are in ./tools/ directory.


License is the same as the base project: Simplified BSD License.

You can’t perform that action at this time.