A little suite of FIDO2-tools based on libfido2
for debugging purposes.
Tested on Debian bullseye, you first need to install the dependencies:
# Install base dependencies.
sudo apt install \
build-essential \
cmake \
git \
libcbor-dev \
libpcsclite-dev \
libssl-dev \
libudev-dev \
libz-dev \
pkg-config \
&& true
# Compile & install libfido2.
git clone https://github.com/Yubico/libfido2.git
cd libfido2
mkdir build && cd build
cmake ..
make -j
sudo make install
To compile, you can simply run make
.
However, if you want to use a specific relying party ID (RPID) for the lock simulator,
you can provide this with make RPID=somedomain.tld
.
create_credential
: Creates a new credential on the authenticator, outputting thecredentialId
.read_credential
: Reads a credential (assertion) bycredentialId
.read_device_info
: Reads basic info about authenticator.read_large_blob
: Reads the large blob from the authenticator.reset
: Resets the authenticator.write_large_blob
: Writes a large blob to the authenticator.lock_simulator
: A simulator for a smart lock using FIDO2 (for Raspberry Pi).
Common utilities being shared between the tools are found in fido_util.c
.