🛠 Transformer la carte en clé de sécurité FIDO2 avec OpenSK

nRF52840-MDK (boards.json id: nrf52840-mdk) · avance · Le projet FIDO2 open source de Google tourne sur la famille MDK : CryptoCell 310, USB natif en HID, et une clé d'authentification que vous buildez vous-même.

The project

OpenSK is the open-source implementation (Rust, google/opensk) of a FIDO2/CTAP2 authentication key. It runs on the nRF52840 MDK family, and MakerDiary documents building its own firmware in a dedicated wiki post. The choice of board is not random:

Step 1 — Prerequisites

rustup target add thumbv7em-none-eabihf
git clone https://github.com/google/opensk
cd opensk

The expected toolchain (Rust version, signing tools) is listed in the repository's README; follow the MakerDiary post "Building your own OpenSK firmware" for board-specific steps.

Step 2 — Compile the firmware

The OpenSK build produces a signed application image (the repository provides packaging tools, historically makeelf). The exact command and attestation provisioning variables are found in the README and the MakerDiary guide — do not invent them: the default attestation for a custom build is self-signed.

# principe (détails et flags : README opensk + billet MakerDiary)
cargo +nightly build --release --target thumbv7em-none-eabihf \
  --features ...      # cible la carte, voir le guide

Step 3 — Flash without bricking

Step 4 — Test the key

  1. Plug in the board: it enumerates as a HID FIDO device (the native USB port, not the DAPLink).
  2. Register it on a WebAuthn-compatible service (GitHub, Google, a test passkey server): the RGB LED serves as a presence indicator — touching it validates the operation.
  3. Verify the configured PIN and countersignatures; development logs are available via the DAPLink's CDC port.

Honest limitations

Other tutorials for this board

Code examples for this board

← Back to the board 🛠 All tutorials