Commit Graph
123 Commits
Author SHA1 Message Date
Pol Henarejos 2dd04d377e Do not abort on revoked cred
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-16 20:10:30 +02:00
Pol Henarejos 935a32d625 Merge branch 'main' into development
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>

# Conflicts:
#	src/fido/cbor_config.c
2026-08-15 12:25:44 +02:00
Pol Henarejos 50c577c398 Remove vault legacy commands.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-11 21:17:16 +02:00
Pol Henarejos 8933c05b40 Remove legacy vault commands. Update tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-11 18:03:27 +02:00
Pol Henarejos 53735f97aa Test all vault algorithms
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-11 17:27:58 +02:00
Pol Henarejos 2a2e8e0749 Move vault stuff to another file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-09 01:32:50 +02:00
Pol Henarejos fbfc8f9a83 Add credential expiration and revocation.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-05 16:35:44 +02:00
Pol Henarejos ed2038743e Add windows test launchers.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-08-02 18:46:53 +02:00
Pol Henarejos 7056e57b61 Add CCID waiter before triggering.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-30 13:59:16 +02:00
Pol Henarejos fc906c3604 Make emulation build cleanly with MSVC
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-29 19:08:27 +02:00
Pol Henarejos 474cf565a0 Migrate Pico FIDO to byte-array SDK APIs
Update file, crypto, RNG, TLV, HID, PIN, policy, and object-container
callers to use byte_array_t, const_byte_array_t, and stateful
byte_buffer_t arguments.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-27 11:44:37 +02:00
Pol Henarejos 6be15ac4b3 Add power lost test for otp.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-27 11:26:18 +02:00
Pol Henarejos 7357f78759 Move OATH credentials and OTP slots to object containers
Preserve legacy formats while adding authenticated metadata, atomic OTP swaps, and power-loss tests

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-26 22:21:37 +02:00
Pol Henarejos 0227ae8833 Preserve compatible resident credential containers
Keep legacy flash and prior container roots readable without migration, cache resident metadata and public keys and preserve silent credential discovery across restarts.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-26 20:09:16 +02:00
Pol Henarejos ad6109c560 Redesign resident credential storage using containers
Introduce a container-based layout for new resident credentials while maintaining full compatibility with the legacy format.

The new design stores RP hash, credential ID, encrypted credential data, and cached COSE public key as independent objects, enabling atomic updates, recovery after interrupted transactions, and more efficient credential enumeration.

Support both storage formats throughout the resident credential lifecycle and add extensive tests for updates, recovery, tampering, collisions, and deletion.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-18 01:11:03 +02:00
Pol Henarejos 43cf570ac3 Add FIDO object authorization context with operation-scoped evidence
Invalidate authorization epochs on PIN/UV token and session changes, with host tests

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-17 22:49:30 +02:00
Pol Henarejos 16f9379e70 Adapt object crypto protection to the existing FIDO device key
Add provider tests without changing persistent storage or CTAP behavior

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-17 19:50:36 +02:00
Pol Henarejos e0c69de98c Add test for OTP
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 21:45:30 +02:00
Pol Henarejos 847ab03c6d Add thirdPartyPayment tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 14:33:37 +02:00
Pol Henarejos 3acac02794 Add alwaysUv and complexityPolicy tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 14:33:23 +02:00
Pol Henarejos 290196f7ee Add hmac-secret-mc tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 14:33:00 +02:00
Pol Henarejos 2cc8adcab8 Add FIDO_2_3 test.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 14:32:51 +02:00
Pol Henarejos 70a6a18bb9 Upgrade python-fido2 to 2.2.1
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 14:32:32 +02:00
Pol Henarejos 96ffcaffc1 Fix config request below maxMsgSize.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-13 12:05:55 +02:00
Pol Henarejos a5ece3943d Add support for UTF-8 pin.
Fix conformance test F-5

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-09 21:10:19 +02:00
Pol Henarejos 4477fa8760 Add OATH decrement and check auth.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-05 12:22:06 +02:00
Pol Henarejos 7247bd3f6c Add check for max pin length.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-05 01:25:57 +02:00
Pol Henarejos d2dd0f161a Fix hmac-secret-mc check.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-05 01:21:21 +02:00
Pol Henarejos eab3398da8 Fix validation on verify hotp.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-04 23:41:35 +02:00
Pol Henarejos f761d06388 Encrypt PIN access to oath.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-04 12:37:37 +02:00
Pol Henarejos 7730788061 Use constant time cmp for userId.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-07-04 12:27:00 +02:00
Pol Henarejos bb2764bc75 Add test results.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-29 00:40:37 +02:00
Pol Henarejos 3d8183d15e Fix EA P-2, F-2, F-3.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-23 11:58:31 +02:00
Pol Henarejos 4ae2a0492f Revert "Fix P-10"
This reverts commit 8e24c97230.
2026-06-22 21:35:48 +02:00
Pol Henarejos 854f5a2bdb When a device is reset, all previous non-resident credentials shall be invalidated, regardless silent or active assertions.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 21:19:33 +02:00
Pol Henarejos 465ded39bd Fix F-7.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 20:01:14 +02:00
Pol Henarejos 8e24c97230 Fix P-10
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 19:28:26 +02:00
Pol Henarejos 654b6c9bdc Add more conformance tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 14:29:43 +02:00
Pol Henarejos 26f41ceff0 Do not check up presence in getinfo tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 13:49:11 +02:00
Pol Henarejos 0b41db259c Add and check MAX_RPIDS for minpin set.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 13:27:15 +02:00
Pol Henarejos edd6f78768 Allow up=true on MC.
The conformance test might be outdated.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-06-22 12:57:57 +02:00
Pol Henarejos 0e3d0d9a7d Add libtss2 to runners.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-05-28 23:47:20 +02:00
Pol Henarejos 0e1512a135 Fix rename oath when old name starts with the newer.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-03-06 18:55:30 +01:00
Pol Henarejos 18d68d7e05 Fix needs power cycle logic.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-01-22 00:57:31 +01:00
Pol Henarejos bd499ae1d4 Remove print
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-01-05 19:37:27 +01:00
Pol Henarejos ac7e34522a Fixed resident credential storage when two userId have the same prefix.
Added a specific test for this case.

Fixes #241.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-01-05 12:34:04 +01:00
Pol Henarejos 5f45a6b75b Fix oath aid test.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-11-30 19:06:15 +01:00
Pol Henarejos 5b778f2e27 Fix CI/CD
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-10-28 10:19:48 +01:00
Pol Henarejos 1ac628d241 Major refactor on resident keys.
Now, credential ids have shorter and fixed length (40) to avoid issues with some servers, which have maximum credential id length constraints.

Fixes #184

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-09-04 21:57:53 +02:00
Pol Henarejos a5fd31a5d6 Upgrade to bookworm CI for fido2
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-08-29 01:32:22 +02:00