Skip to content

A FIDO2 USB security key implementation for the Raspberry Pi Zero

License

Notifications You must be signed in to change notification settings

mphi-rc/pi-zero-security-key

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pi-zero-security-key

This is a FIDO2 USB security key implementation for the $5 Raspberry Pi Zero.

You can use it with any FIDO2-compatible browser (Google Chrome or Chromium) and any website supporting FIDO2 WebAuthN.

It is experimental -- please do not rely on this for use cases with strong security requirements.

Features

Usage

Download the latest release, then run java -jar pi-zero-security-key.jar with superuser privileges.

If you prefer to build from source, you must checkout pi-ssd1306-java and run ./gradlew publishToMavenLocal. Then, to build, run ./gradlew shadowJar in this repo.

Note that your kernel must be compiled with ConfigFS USB gadget support. Raspbian appears to support this by default.

Configuration

All state is stored in config.json, which is created on first run. Common options:

Option Type Description
enabledAlgorithms string array A list of attestation algorithms, ordered from most to least preferred. Valid values are Ed25519 and P256_ECDSA.
enableBonnet boolean Whether to expect button presses from, and display auth/register status using, an Adafruit OLED Bonnet

About

A FIDO2 USB security key implementation for the Raspberry Pi Zero

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages