Solo is an open source security key. We just launched Solo v2,
 
 
 
 
 
Go to file
Conor Patrick 31cec1c1ef test fido2 2018-05-29 22:19:36 -04:00
crypto start aes_gcm 2018-05-26 11:36:55 -04:00
python-fido2@38c093ef0e
tinycbor@c9059d9e33
tools make_credential works 2018-05-11 23:20:10 -04:00
.gitignore update build env 2018-05-06 20:14:52 -04:00
.gitmodules support getPinToken 2018-05-17 23:11:00 -04:00
LICENSE Update LICENSE 2018-05-15 22:08:30 -04:00
Makefile start aes_gcm 2018-05-26 11:36:55 -04:00
README.md add readme 2018-04-28 14:15:41 -04:00
cose_key.h more towards make_credential 2018-05-06 20:15:18 -04:00
crypto.c encrypt credential with aes for start 2018-05-26 11:36:34 -04:00
crypto.h start aes_gcm 2018-05-26 11:36:55 -04:00
ctap.c allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
ctap.h allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
ctap_device.c whitebox patch u2f not tested 2018-05-26 12:51:56 -04:00
ctap_errors.h properly propogate errors 2018-05-14 22:55:47 -04:00
ctap_parse.c encrypt credential with aes for start 2018-05-26 11:36:34 -04:00
ctap_parse.h fix infrequent der formatting bug. start excludelist 2018-05-24 21:26:46 -04:00
ctap_test.py test fido2 2018-05-29 22:19:36 -04:00
ctaphid.c more or less consistant with other authenticator 2018-05-29 00:16:26 -04:00
ctaphid.h allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
log.c u2f support added 2018-05-26 15:29:37 -04:00
log.h u2f support added 2018-05-26 15:29:37 -04:00
main.c allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
time.c start of ctaphid 2018-04-28 21:40:13 -04:00
time.h start of ctaphid 2018-04-28 21:40:13 -04:00
u2f.c fix der encoding bug in u2f 2018-05-26 15:35:58 -04:00
u2f.h u2f support added 2018-05-26 15:29:37 -04:00
udp_bridge.c allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
udp_bridge.h allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
usbhid.c allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
usbhid.h allocate cids better and do proper timeouts in hid 2018-05-28 14:14:59 -04:00
util.c
util.h buffer hid messages then act on cmd 2018-04-30 23:27:26 -04:00

README.md

U2F One

This project is in early development.

It will be a embedded device friendly implementation of FIDO 2.0 and U2F protocols.

No hardware is needed for development.

Setting up

Clone and Compile CBOR library and FIDO 2 client library.

git clone https://github.com/conorpp/u2f-one
cd u2f-one/
git submodule update --init

cd tinycbor && make
cd ..

cd python-fido2/
python setup.py install

Now compile FIDO 2.0 and U2F authenticator.

make

Testing and development

The application is set up to send and recv USB HID messages over UDP to ease development and reduce need for hardware.

Testing can be done using Yubico's client software. Note that the client software is also a work in progress and the FIDO 2.0 specification is ultimate. Some small changes to Yubico's Client software make it send USB HID over UDP to the authenticator application.

Run FIDO 2 / U2F application.

./main

Run client software.

python python-fido2/examples/credential.py

You should see messages exchange between the client and the authenticator but that's it. Follow specifications to develop further.

https://fidoalliance.org/specs/fido-v2.0-ps-20170927/fido-client-to-authenticator-protocol-v2.0-ps-20170927.html

Contributors

Contributors are welcome. The ultimate goal is to have a FIDO 2 hardware token capable of USB, Bluetooth, and NFC interfaces. There could be multiple tokens for each interface. Hardware is still being decided on.

This is an upgrade to U2F Zero. A lot of the hardware and software will be different so I think it's best to start a new repository.