Commit Graph
100 Commits
Author SHA1 Message Date
Pol Henarejos c4bc346d98 Sign release builds.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-04-06 18:37:36 +02:00
Pol Henarejos 3e1b29f72a Add support for slot selection.
Fixes #83.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-03-23 20:03:46 +01:00
Pol Henarejos bb27c2324b Only pin to core in ESP32-S3 since it is multicore.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-03-07 19:35:25 +01:00
Pol Henarejos 8c0a7c6681 Fix commissioned values for LED.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-23 00:53:50 +01:00
Pol Henarejos 2db265c9c8 Merge branch 'development' 2025-02-21 20:35:19 +01:00
Pol Henarejos c58823f9ef Build tests for EDDSA.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-21 20:22:07 +01:00
Pol Henarejos 21b6a7782a Add EdDSA support as a conditional build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-21 20:20:43 +01:00
Pol Henarejos 26f9e0dd54 Fix cyw43 build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-21 18:02:42 +01:00
Pol Henarejos 4053b22f2e Fix cyw43 build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-21 17:32:42 +01:00
Pol Henarejos ef71ec6a29 Upgrade to v5.4
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-20 18:10:49 +01:00
Pol Henarejos 72f2e0a58b Upgrade to v5.4
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-20 18:09:50 +01:00
Pol Henarejos 17ca65a41b Upgrade to v5.4
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 20:21:57 +01:00
Pol Henarejos 92fe26c1e1 Upgrade to v6.4
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 19:18:02 +01:00
Pol Henarejos 5c2dce9e52 Take led_driver on build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 19:14:07 +01:00
Pol Henarejos 1cbcfce23f Use all available boards.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 19:13:36 +01:00
Pol Henarejos 1f3cecea8b Use fastest clk for rp2040.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 19:13:18 +01:00
Pol Henarejos ac8d05b9e9 Add support for esp32s2 autobuild.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 12:14:47 +01:00
Pol Henarejos e00e620264 Upgrade to Pico SDK 2.1.1 autobuild.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-19 12:13:58 +01:00
Pol Henarejos 64d8dafa2b Fix multiple interfaces in older PCSC versions.
Fixes #74 again.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-12 13:25:43 +01:00
Pol Henarejos 0f3bb8242c Fix multiple interfaces in older PCSC versions.
Fixes #74 again.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-12 13:25:07 +01:00
Pol Henarejos 747e5fbe86 Added phy_save() and phy_load() to save and load PHY.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-29 17:09:29 +01:00
Pol Henarejos 8eb4669c0f Fixes #74.
LibCCID allows propietary class for CCID (ALLOW_PROPIETARY_CLASS in LibCCID). Then both interfaces are loaded but since both belong to same device, only the last is opened.

We change maxSlot value even it breaks the ICCD spec to cause a timeout in LibCCID and deactivate WebCCID interface.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-17 20:56:11 +01:00
Pol Henarejos 4c636e0ce5 Upgrade to v5.2
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-15 13:07:35 +01:00
Pol Henarejos 297f2e6228 Upgrade to v5.2
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-15 12:06:00 +01:00
Pol Henarejos 12a26f8506 Merge branch 'development' 2025-01-15 12:04:47 +01:00
Pol Henarejos 45a96f8742 Add rollback version to 1.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-15 12:04:20 +01:00
Pol Henarejos ca2e04af53 Update initial memory for tests and KDM
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-08 14:47:23 +01:00
Pol Henarejos f0a9d03ca8 Fix storing MKEK in devices with OTP_1 available.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-08 14:38:02 +01:00
Pol Henarejos 2502f99aff Add OTP for emulation.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-01-08 13:26:08 +01:00
Pol Henarejos 71636f4d66 Use partition bounds if available.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-30 21:42:33 +01:00
Pol Henarejos 310bcb8092 Fix bin name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:22:20 +01:00
Pol Henarejos 6c5735fc4b Fix bin name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:21:58 +01:00
Pol Henarejos 3430655897 Fix merge file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:09:16 +01:00
Pol Henarejos 3d9e806409 Fix merge file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:09:05 +01:00
Pol Henarejos ff8b343df4 Auto generate an esp32-s3 firmware bin file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:08:30 +01:00
Pol Henarejos 0c6b0d295f Auto generate an esp32-s3 firmware bin file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-27 02:03:08 +01:00
Pol Henarejos c6b03e54ca Fix TX/RX buffers to align them with USB buffers and avoid overflows.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-24 02:06:15 +01:00
Pol Henarejos 991f5fc960 More uint funcs.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 21:41:40 +01:00
Pol Henarejos 6d516b1b78 Use BE/LE functions for packing uint16.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 21:01:12 +01:00
Pol Henarejos 2a3ac550ec Pack file struct.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 20:40:11 +01:00
Pol Henarejos 73232b6de4 Add LE/BE functions for uint16, 32 and 64.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 20:39:03 +01:00
Pol Henarejos d56b540324 Add support for displaying memory usage.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 20:24:10 +01:00
Pol Henarejos 74b635fa3c Increase TinyUSB task stack size.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-23 20:12:15 +01:00
Pol Henarejos 07d9e225d2 Use PHY value for LED GPIO number. Fixes #71.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-16 13:12:11 +01:00
Pol Henarejos 3d960b931a Fix MKEK masking order. Fixes #69.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-08 01:26:47 +01:00
Pol Henarejos ff7ef56cda Dev options file must be persistent, since it manipulates MKEK which is in turn persistent.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-08 01:25:19 +01:00
Pol Henarejos 320455815f Only allow initialize if secure lock is disabled or has mkek mask.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-08 01:24:35 +01:00
Pol Henarejos 859dec7e4a Accept mkek mask only if secure lock is enabled.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-08 01:23:51 +01:00
Pol Henarejos 053ccf4a89 Fix esp32 build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-03 08:47:44 +01:00
Pol Henarejos f88aad1e2c Fixed buffer overflow when unlocking the device.
Fixes #68.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-12-03 08:36:05 +01:00
Pol Henarejos 866aac8fe3 Add reboot extra command.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-27 21:48:04 +01:00
Pol Henarejos a242a28394 Fix disable secure aut.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-27 16:11:18 +01:00
Pol Henarejos c33ed9b968 Fix autobuild for Pico SDK 2.1.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-25 23:59:54 +01:00
Pol Henarejos 65a4474dec Fix build for RP2350.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-25 23:46:12 +01:00
Pol Henarejos e243def565 Add UP button timeout for PHY.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-25 15:24:27 +01:00
Pol Henarejos 78bc34827e Autobuild for Pico SDK 2.0.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-25 13:13:31 +01:00
Pol Henarejos a69cb8a95a Add CCID SET_CLOCK_AND_FREQUENCY command for latest IFD.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-25 12:55:28 +01:00
Pol Henarejos bb45c9b3a8 Merge branch 'master' into development-eddsa 2024-11-12 20:10:07 +01:00
Pol Henarejos 1ea0a91ba8 Fix initialization when initializing a RP2350 board for first time.
Fixes #60.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-12 19:25:22 +01:00
Pol Henarejos 6f572954d5 If the board is RP2350 or ESP32, the requested certificate must be for secp256k1 key.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-12 19:24:10 +01:00
Pol Henarejos 5535f3ec10 No esp32 in eddsa workflows.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 18:47:41 +01:00
Pol Henarejos f992a04142 Fix eddsa signature.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 18:45:05 +01:00
Pol Henarejos d858a1e1d5 Upgrade to v5.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 18:10:56 +01:00
Pol Henarejos b7c6ca58d0 Upgrade to v5.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 15:47:40 +01:00
Pol Henarejos 2f3d70fcac Upgrade mbedtls v3.6.2
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 15:16:32 +01:00
Pol Henarejos 91c641033a Merge branch 'development' 2024-11-09 15:00:26 +01:00
Pol Henarejos f3bf3cd8f4 Do not use pico patcher script anymore.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 14:58:42 +01:00
Pol Henarejos e4736cc448 Upgrade Pico Keys SDK to v7.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 14:58:06 +01:00
Pol Henarejos bfa8891c8d Update README.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 14:54:51 +01:00
Pol Henarejos 618fdb4c1a Do not request dev cert when performing tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 00:50:51 +01:00
Pol Henarejos 9457433844 Add compile flags for optimization build in ESP32.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-09 00:20:31 +01:00
Pol Henarejos c239b4dd7c Fix secure otp build for non rp2350.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-08 19:46:00 +01:00
Pol Henarejos 96359ebe03 Add secure boot and secure lock commands via rescue.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-08 19:36:54 +01:00
Pol Henarejos f301b2a1b1 Add --no-dev-cert to do not request a certificate and use a self-signed one. Do not use if attestation is needed.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-08 19:13:14 +01:00
Pol Henarejos 4ec1d4d891 Fix initialization and terminal certificate generation.
Fixes #59.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-08 17:52:13 +01:00
Pol Henarejos f1410bbf04 Only request and upload the device certificate if needed.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-08 17:45:48 +01:00
Pol Henarejos 9b9ea7cae5 Add product and mcu to info in rescue mode.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-07 20:00:41 +01:00
Pol Henarejos f5b89aed69 Use DEV key from OTP if available when initializing.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-07 00:16:22 +01:00
Pol Henarejos f74a374c64 Fix version header.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-05 19:33:07 +01:00
Pol Henarejos 3c6684cdab Rename CCID_ codes to PICOKEY_
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-11-05 19:29:00 +01:00
Pol Henarejos 20ef94c301 Upgrade Pico HSM Tool to v2.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-28 00:28:49 +01:00
Pol Henarejos 68360978d6 Use BOOTKEY instead of reading json.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-28 00:25:22 +01:00
Pol Henarejos 1933498a33 Add optional bootkey index param for secure_boot.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-28 00:24:17 +01:00
Pol Henarejos 0ce89ae968 Add support for lock chip on secure_boot.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-28 00:19:55 +01:00
Pol Henarejos 9fa3758dad Add support for OTP raw read/write.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-28 00:15:48 +01:00
Pol Henarejos d1ee43baab Add secure_boot enable.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-27 02:37:16 +02:00
Pol Henarejos 2856ec6917 Align data in case it's not.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-27 02:14:51 +02:00
Pol Henarejos ccec83dfb1 Fix otp write length check.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-27 01:41:12 +02:00
Pol Henarejos 9de1b4ca5d Fix OTP data check size.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-27 01:24:49 +02:00
Pol Henarejos cbd9a5d296 Add sanitize check.
Only pages 0 and 1 are allowed for reading.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-27 01:24:36 +02:00
Pol Henarejos eaf3d051e3 Fix sc-hsm test.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-15 23:16:02 +02:00
Pol Henarejos 8e3801e9a2 Revert "Update flash memory for tests."
This reverts commit 5388c11182.
2024-10-15 23:00:35 +02:00
Pol Henarejos 5388c11182 Update flash memory for tests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-15 22:54:18 +02:00
Pol Henarejos 2b77519a3b Add OTP command to Pico HSM Tool.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-15 22:12:34 +02:00
Pol Henarejos 812a737ff5 Fix length.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-13 20:52:29 +02:00
Pol Henarejos 6163b870ed Fix haders.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-13 20:51:18 +02:00
Pol Henarejos 08d4dc58aa Add OTP extra command to read/write OTP without bootmode.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-13 20:25:59 +02:00
Pol Henarejos 0193e55f7b Use macros in extras.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-13 20:06:58 +02:00
Pol Henarejos 9dc3ea3232 Fix emulation alignment.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-01 14:38:56 +02:00
Pol Henarejos 48d92f53a0 Update Dockerfile with latest versions.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-10-01 14:38:44 +02:00