FIDO2 Authenticator Tool
- for macOS
brew tap gebogebogebo/tap
brew install ctapcli% ./ctapcli -h
ctapcli 3.3.0
gebo
This tool implements CTAP HID and can communicate with FIDO Authenticator.
about CTAP(Client to Authenticator Protocol)
https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-
20210615.html
USAGE:
ctapcli [OPTIONS] [SUBCOMMAND]
OPTIONS:
-d, --device Enumerate HID devices.
-f, --fidokey Enumerate FIDO key.
-h, --help Print help information
-u, --user-presence User Presence Test.
-V, --version Print version information
-w, --wink Blink the LED on the FIDO key.
SUBCOMMANDS:
bio Bio management.
- List registered biometric authenticate data without any FLAGS and OPTIONS.
blob Large Blob.
- Large amount of information can be stored in the security key.
config Authenticator Config.
- Configure various authenticator features.
cred Credential management.
- List discoverable credentials without any FLAGS and OPTIONS.
help Print this message or the help of the given subcommand(s)
info Get Authenticator infomation.
- List All Infomation without any FLAGS and OPTIONS.
memo Record some short texts in Authenticator.
- Get a Memo without any FLAGS and OPTIONS.
pin PIN management.
- Get PIN retry counter without any FLAGS and OPTIONS.% ctapcli -f
Enumerate FIDO keys.
- vid=0x1050 , pid=0x0402 , info="product=YubiKey FIDO usage_page=61904 usage=1 serial_number= path=\"IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/XHC1@14/XHC1@14000000/HS04@14400000/YubiKey FIDO@14400000/IOUSBHostInterface@0/AppleUserUSBHostHIDDevice\""% ctapcli info -g pin
Get the Authenticator infomation.
option pin = true
This authenticator is capable of accepting a PIN from the client and PIN has been set.% ctapcli pin
PIN Management.
Get PIN retry counter.
PIN retry counter = 8
:) :) :) :) :) :) :) :)
PIN retry counter represents the number of attempts left before PIN is disabled.
Each correct PIN entry resets the PIN retry counters back to their maximum values.
Each incorrect PIN entry decrements the counter by 1.
Once the PIN retry counter reaches 0, built-in user verification are disabled and can only be enabled if authenticator is reset.
Get UV retry counter.
UV retry counter = 3
UV retries count is the number of built-in UV attempts remaining before built-in UV is disabled on the device.% ctapcli pin -n
PIN Management.
Set new PIN.
new PIN:
[xxxx]
Success! :)% ctapcli pin -c
PIN Management.
Change PIN.
current PIN:
[xxxx]
new PIN:
[zzzz]
Success! :)% ./ctapcli bio
Bio Management.
List registered biometric authenticate data.
PIN: xxxx
Number of registrations = 2
32C7 : finger-1
EFFD : finger-2% ./ctapcli bio -e
Bio Management.
Enrolling fingerprint.
PIN: xxxx
bio enrollment
Please follow the instructions to touch the sensor on the authenticator.
Press any key to start the registration.
[enter]
- Touch the sensor on the authenticator
Good fingerprint capture. 0x00: CTAP2_ENROLL_FEEDBACK_FP_GOOD
- Number of samples required = 4
- Touch the sensor on the authenticator
Good fingerprint capture. 0x00: CTAP2_ENROLL_FEEDBACK_FP_GOOD
- Number of samples required = 3
- Touch the sensor on the authenticator
Good fingerprint capture. 0x00: CTAP2_ENROLL_FEEDBACK_FP_GOOD
- Number of samples required = 2
- Touch the sensor on the authenticator
Good fingerprint capture. 0x00: CTAP2_ENROLL_FEEDBACK_FP_GOOD
- Number of samples required = 1
- Touch the sensor on the authenticator
Good fingerprint capture. 0x00: CTAP2_ENROLL_FEEDBACK_FP_GOOD
- Number of samples required = 0
- bio enrollment Success
templateId: "CA57"
input name:
finger-3
- Success% ./ctapcli cred
PIN:xxxx
Enumerate discoverable credentials.
- existing discoverable credentials: 3/46
- rp: (id: ctapcli, name: G2phL$kFJ4L!L8n)
- credential: (id: 617070732E6E756C61622E636F6D, name: G2phL$kFJ4L!L8n, display_name: )
- credential: (id: 74657374, name: hogehoge, display_name: )
- rp: (id: test-rk.com, name: gebo)
- credential: (id: 31313131, name: gebo, display_name: GEBO GEBO)
% ctapcli memo -a
Record some short texts in Authenticator.
Add a memo.
PIN: [xxxx]
tag:
test
memo:
hoge
- Touch the sensor on the authenticator
Add Success! :)% ctapcli memo
Record some short texts in Authenticator.
Get a memo.
PIN: [xxxx]
- test
- aaa
(2/10)
tag:
[test]
Copied it to the clipboard :) :) :) !https://github.com/gebogebogebo/ctap-hid-fido2/tree/master/examples/ctapcli
% cargo build --example ctapcli --release