├── .github └── workflows │ └── build.yml ├── CMakeLists.txt ├── LICENSE ├── README.md ├── main ├── CMakeLists.txt ├── Kconfig.projbuild ├── apdu.c ├── applets.c ├── applets │ ├── admin │ │ └── admin.c │ ├── ctap │ │ ├── cose-key.h │ │ ├── ctap-errors.h │ │ ├── ctap-internal.h │ │ ├── ctap-parser.c │ │ ├── ctap-parser.h │ │ ├── ctap.c │ │ ├── secret.c │ │ ├── secret.h │ │ ├── u2f.c │ │ └── u2f.h │ ├── meta │ │ └── meta.c │ ├── ndef │ │ └── ndef.c │ ├── oath │ │ └── oath.c │ ├── openpgp │ │ ├── key.c │ │ ├── key.h │ │ └── openpgp.c │ └── piv │ │ └── piv.c ├── cert │ ├── attestation-ca-cert.cnf │ ├── attestation-device-cert.cnf │ ├── gen_attestation_ca.sh │ ├── gen_attestation_devive_cert.sh │ ├── u2f_aaguid.bin │ ├── u2f_cert.bin │ └── u2f_cert_key.bin ├── common.c ├── crypto │ ├── aes.c │ ├── algo.c │ ├── block-cipher.c │ ├── crypto-util.c │ ├── des.c │ ├── ecc.c │ ├── esp32_ed25519.c │ ├── hmac.c │ ├── include │ │ ├── aes.h │ │ ├── algo.h │ │ ├── block-cipher.h │ │ ├── crypto-util.h │ │ ├── des.h │ │ ├── ecc.h │ │ ├── esp32_ed25519.h │ │ ├── hmac.h │ │ ├── memzero.h │ │ ├── rand.h │ │ ├── rsa.h │ │ ├── sha.h │ │ ├── sha3.h │ │ └── sm3.h │ ├── memzero.c │ ├── rand.c │ ├── rsa.c │ ├── sha.c │ ├── sha3.c │ └── sm3.c ├── device.c ├── fs.c ├── idf_component.yml ├── include │ ├── admin.h │ ├── apdu.h │ ├── applets.h │ ├── ccid.h │ ├── ccid_device.h │ ├── common.h │ ├── ctap.h │ ├── ctaphid.h │ ├── device-config-default.h │ ├── device.h │ ├── fs.h │ ├── key.h │ ├── meta.h │ ├── ndef.h │ ├── nfc.h │ ├── oath.h │ ├── openpgp.h │ ├── pin.h │ └── piv.h ├── key.c ├── littlefs │ ├── lfs.c │ ├── lfs.h │ ├── lfs_util.c │ └── lfs_util.h ├── main.c ├── pin.c └── usb │ ├── ccid │ ├── ccid.c │ └── ccid_device.c │ └── ctaphid │ └── ctaphid.c ├── sdkconfig.defaults └── u2f_partitions.csv /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/README.md -------------------------------------------------------------------------------- /main/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/CMakeLists.txt -------------------------------------------------------------------------------- /main/Kconfig.projbuild: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/Kconfig.projbuild -------------------------------------------------------------------------------- /main/apdu.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/apdu.c -------------------------------------------------------------------------------- /main/applets.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets.c -------------------------------------------------------------------------------- /main/applets/admin/admin.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/admin/admin.c -------------------------------------------------------------------------------- /main/applets/ctap/cose-key.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/cose-key.h -------------------------------------------------------------------------------- /main/applets/ctap/ctap-errors.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/ctap-errors.h -------------------------------------------------------------------------------- /main/applets/ctap/ctap-internal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/ctap-internal.h -------------------------------------------------------------------------------- /main/applets/ctap/ctap-parser.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/ctap-parser.c -------------------------------------------------------------------------------- /main/applets/ctap/ctap-parser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/ctap-parser.h -------------------------------------------------------------------------------- /main/applets/ctap/ctap.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/ctap.c -------------------------------------------------------------------------------- /main/applets/ctap/secret.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/secret.c -------------------------------------------------------------------------------- /main/applets/ctap/secret.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/secret.h -------------------------------------------------------------------------------- /main/applets/ctap/u2f.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/u2f.c -------------------------------------------------------------------------------- /main/applets/ctap/u2f.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ctap/u2f.h -------------------------------------------------------------------------------- /main/applets/meta/meta.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/meta/meta.c -------------------------------------------------------------------------------- /main/applets/ndef/ndef.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/ndef/ndef.c -------------------------------------------------------------------------------- /main/applets/oath/oath.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/oath/oath.c -------------------------------------------------------------------------------- /main/applets/openpgp/key.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/openpgp/key.c -------------------------------------------------------------------------------- /main/applets/openpgp/key.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/openpgp/key.h -------------------------------------------------------------------------------- /main/applets/openpgp/openpgp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/openpgp/openpgp.c -------------------------------------------------------------------------------- /main/applets/piv/piv.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/applets/piv/piv.c -------------------------------------------------------------------------------- /main/cert/attestation-ca-cert.cnf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/attestation-ca-cert.cnf -------------------------------------------------------------------------------- /main/cert/attestation-device-cert.cnf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/attestation-device-cert.cnf -------------------------------------------------------------------------------- /main/cert/gen_attestation_ca.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/gen_attestation_ca.sh -------------------------------------------------------------------------------- /main/cert/gen_attestation_devive_cert.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/gen_attestation_devive_cert.sh -------------------------------------------------------------------------------- /main/cert/u2f_aaguid.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/u2f_aaguid.bin -------------------------------------------------------------------------------- /main/cert/u2f_cert.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/u2f_cert.bin -------------------------------------------------------------------------------- /main/cert/u2f_cert_key.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/cert/u2f_cert_key.bin -------------------------------------------------------------------------------- /main/common.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/common.c -------------------------------------------------------------------------------- /main/crypto/aes.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/aes.c -------------------------------------------------------------------------------- /main/crypto/algo.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/algo.c -------------------------------------------------------------------------------- /main/crypto/block-cipher.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/block-cipher.c -------------------------------------------------------------------------------- /main/crypto/crypto-util.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/crypto-util.c -------------------------------------------------------------------------------- /main/crypto/des.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/des.c -------------------------------------------------------------------------------- /main/crypto/ecc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/ecc.c -------------------------------------------------------------------------------- /main/crypto/esp32_ed25519.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/esp32_ed25519.c -------------------------------------------------------------------------------- /main/crypto/hmac.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/hmac.c -------------------------------------------------------------------------------- /main/crypto/include/aes.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/aes.h -------------------------------------------------------------------------------- /main/crypto/include/algo.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/algo.h -------------------------------------------------------------------------------- /main/crypto/include/block-cipher.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/block-cipher.h -------------------------------------------------------------------------------- /main/crypto/include/crypto-util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/crypto-util.h -------------------------------------------------------------------------------- /main/crypto/include/des.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/des.h -------------------------------------------------------------------------------- /main/crypto/include/ecc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/ecc.h -------------------------------------------------------------------------------- /main/crypto/include/esp32_ed25519.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/esp32_ed25519.h -------------------------------------------------------------------------------- /main/crypto/include/hmac.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/hmac.h -------------------------------------------------------------------------------- /main/crypto/include/memzero.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/memzero.h -------------------------------------------------------------------------------- /main/crypto/include/rand.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/rand.h -------------------------------------------------------------------------------- /main/crypto/include/rsa.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/rsa.h -------------------------------------------------------------------------------- /main/crypto/include/sha.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/sha.h -------------------------------------------------------------------------------- /main/crypto/include/sha3.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/sha3.h -------------------------------------------------------------------------------- /main/crypto/include/sm3.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/include/sm3.h -------------------------------------------------------------------------------- /main/crypto/memzero.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/memzero.c -------------------------------------------------------------------------------- /main/crypto/rand.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/rand.c -------------------------------------------------------------------------------- /main/crypto/rsa.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/rsa.c -------------------------------------------------------------------------------- /main/crypto/sha.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/sha.c -------------------------------------------------------------------------------- /main/crypto/sha3.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/sha3.c -------------------------------------------------------------------------------- /main/crypto/sm3.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/crypto/sm3.c -------------------------------------------------------------------------------- /main/device.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/device.c -------------------------------------------------------------------------------- /main/fs.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/fs.c -------------------------------------------------------------------------------- /main/idf_component.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/idf_component.yml -------------------------------------------------------------------------------- /main/include/admin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/admin.h -------------------------------------------------------------------------------- /main/include/apdu.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/apdu.h -------------------------------------------------------------------------------- /main/include/applets.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/applets.h -------------------------------------------------------------------------------- /main/include/ccid.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/ccid.h -------------------------------------------------------------------------------- /main/include/ccid_device.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/ccid_device.h -------------------------------------------------------------------------------- /main/include/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/common.h -------------------------------------------------------------------------------- /main/include/ctap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/ctap.h -------------------------------------------------------------------------------- /main/include/ctaphid.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/ctaphid.h -------------------------------------------------------------------------------- /main/include/device-config-default.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/device-config-default.h -------------------------------------------------------------------------------- /main/include/device.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/device.h -------------------------------------------------------------------------------- /main/include/fs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/fs.h -------------------------------------------------------------------------------- /main/include/key.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/key.h -------------------------------------------------------------------------------- /main/include/meta.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/meta.h -------------------------------------------------------------------------------- /main/include/ndef.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/ndef.h -------------------------------------------------------------------------------- /main/include/nfc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/nfc.h -------------------------------------------------------------------------------- /main/include/oath.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/oath.h -------------------------------------------------------------------------------- /main/include/openpgp.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/openpgp.h -------------------------------------------------------------------------------- /main/include/pin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/pin.h -------------------------------------------------------------------------------- /main/include/piv.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/include/piv.h -------------------------------------------------------------------------------- /main/key.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/key.c -------------------------------------------------------------------------------- /main/littlefs/lfs.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/littlefs/lfs.c -------------------------------------------------------------------------------- /main/littlefs/lfs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/littlefs/lfs.h -------------------------------------------------------------------------------- /main/littlefs/lfs_util.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/littlefs/lfs_util.c -------------------------------------------------------------------------------- /main/littlefs/lfs_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/littlefs/lfs_util.h -------------------------------------------------------------------------------- /main/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/main.c -------------------------------------------------------------------------------- /main/pin.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/pin.c -------------------------------------------------------------------------------- /main/usb/ccid/ccid.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/usb/ccid/ccid.c -------------------------------------------------------------------------------- /main/usb/ccid/ccid_device.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/usb/ccid/ccid_device.c -------------------------------------------------------------------------------- /main/usb/ctaphid/ctaphid.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/main/usb/ctaphid/ctaphid.c -------------------------------------------------------------------------------- /sdkconfig.defaults: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/sdkconfig.defaults -------------------------------------------------------------------------------- /u2f_partitions.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jocover/esp32_u2f/HEAD/u2f_partitions.csv --------------------------------------------------------------------------------