Skip to content

nRF52 FIDO U2F Security Key
An Open-Source FIDO U2F implementation on nRF52 SoC

Description

nRF52-U2F is an open-source FIDO U2F implementation on nRF52 SoC. Taking advantage of Nordic’s powerful SoC nRF52840 and nRF5 SDK, it's quite easy to make a FIDO U2F key with a number of distinguishing features, such as USB HID class modules, comprehensive cryptography library with ARM® TrustZone® Cryptocell-310, reliable Device Firmware Update (DFU), etc.

The FIDO Universal 2nd Factor (U2F) is an open authentication standard that allows online services to augment the security of their existing password infrastructure by adding a strong second factor to user login.

During registration and authentication, the user presents the second factor by simply pressing a button on a FIDO U2F key. The user can use their FIDO U2F key across all online services that support the protocol leveraging built-in support in web browsers.

FIDO U2F has been successfully deployed by large scale online services, including Google, Facebook, Twitter, GitHub, GitLab, and many more.

The FIDO U2F technical specifications are hosted by the open-authentication industry consortium known as the FIDO Alliance. Learn more about U2F on https://fidoalliance.org/.

Features

  • Support Nordic nRF52840 System-on-Chip

    • ARM® Cortex®-M4F processor optimized for ultra-low power operation
    • Combining Bluetooth 5, Bluetooth Mesh, Thread, IEEE 802.15.4, ANT and 2.4GHz
    • On-chip NFC-A tag
    • On-chip USB 2.0 (Full speed) controller
    • ARM TrustZone® Cryptocell-310 security subsystem
    • 1 MB FLASH and 256 KB RAM
  • Standard FIDO U2F Protocol supported

  • Driver-less installation on all major host platforms
  • Multi-application support with concurrent application access without the need for serialization and centralized dispatching.
  • Comprehensive cryptography library with ARM® TrustZone® Cryptocell-310
  • Reliable Device Firmware Update (DFU)

How it works?

The following diagram explains the basic process flow of FIDO U2F:

Supported Boards

The following developmet boards are supported well and it's easy to port to other nRF52840 boards. More boards are planned and will show up gradually over time.

nRF52840-MDK nRF52840 Micro Dev Kit USB Dongle

Supported Services

There are a list of featured services that use FIDO U2F. More services will deploy U2F and will show up here over time.

Service
Google Facebook Twitter GitHub
GitLab yubico demo

Reference

Create an Issue

Interested in contributing to this project? Want to report a bug? Feel free to click here: