Pol Henarejos
bddad2f837
Harden GitHub workflows
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-06-12 17:34:51 +02:00
Pol Henarejos
83b3273f51
Fix pico build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-05-02 11:39:37 +02:00
Pol Henarejos
cf6be6c121
Use ecp keypair calc public instead.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-05-01 21:05:35 +02:00
Pol Henarejos
9865b697de
Use dynamic dependence resolver.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-05-01 19:44:34 +02:00
Pol Henarejos
cb474f7ad3
Fix build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-05-01 12:59:46 +02:00
Pol Henarejos
38a7d147b6
Upgrade PicoKeys SDK.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-05-01 12:54:04 +02:00
Pol Henarejos
251b35dd9c
Upgrade to v6.6
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-04-07 19:27:37 +02:00
Pol Henarejos
0eebdd330a
Upgrade Pico Keys SDK 8.6 and Mbedtls v3.6.6
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-04-06 20:16:15 +02:00
Pol Henarejos
2a4ee5d42f
Fix includes.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-04-06 20:16:11 +02:00
Pol Henarejos
d5b0a94ba4
Fix build for cyw43.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-28 20:32:46 +01:00
Pol Henarejos
504bb0fc05
Remove debugs.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-27 17:20:56 +01:00
Pol Henarejos
f1d927d4ef
Add regression tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-26 19:07:16 +01:00
Pol Henarejos
1b322755a1
Do not include OTP FIDO in the CCID interface if not available.
...
Solves #125
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 14:35:32 +01:00
Pol Henarejos
e8a398f508
Update memory layout.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 13:31:23 +01:00
Pol Henarejos
5297e368d1
Sometimes sc-hsm-tool returns $?=1 despite it succeeds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 13:31:05 +01:00
Pol Henarejos
7c8b39ff82
Update tests
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 01:20:46 +01:00
Pol Henarejos
254159d44d
Allow access to EE_DEV.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 01:19:53 +01:00
Pol Henarejos
75c56bb2c7
Migrate PIN and MKEK to new system.
...
This new system is more robust, with derived keys by context and safe in case of flash/ram dumps.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 01:19:35 +01:00
Pol Henarejos
1f96fe619b
Fix bounds on update ef.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 17:42:25 +01:00
Pol Henarejos
3af776ec26
Removed unused functions in extras.
...
Some of them are transfered to rescue interfaces. Others, like OTP, are supressed for security.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 16:57:49 +01:00
Pol Henarejos
54cba3efdf
Remove session pin.
...
It is intended for bio features, not supported by Pico HSM.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 16:40:08 +01:00
Pol Henarejos
1ced9f6267
Check bounds on update ef.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 16:04:20 +01:00
Pol Henarejos
c14a12d9d1
Set ACL for all registers.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 16:03:39 +01:00
Pol Henarejos
bbbf28cb42
Fix ACL for static files.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 14:26:43 +01:00
Pol Henarejos
db9d6ef2f5
Do not allow reading private objects if not authenticated.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 13:21:14 +01:00
Pol Henarejos
983a5b7d10
Fix secp521r1 test with newer OpenSSL versions.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 13:19:20 +01:00
Pol Henarejos
839fb431c4
Add strict build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-09 11:02:47 +01:00
Pol Henarejos
cc0e4e43ca
Fix MLKEM build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-07 17:54:59 +01:00
Pol Henarejos
7a12177745
Update memory layout.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-07 17:54:14 +01:00
Pol Henarejos
64c4afb5d9
Small typos
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-07 17:19:20 +01:00
Pol Henarejos
aae66e7db3
Fix link with mbedtls in openssl backend.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-07 17:16:40 +01:00
Pol Henarejos
2d25ed9939
Fix strict non-prototype declaration warn.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-07 17:12:49 +01:00
Pol Henarejos
0ad7e3a610
Fix Secure boot enable.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-16 16:03:01 +01:00
Pol Henarejos
25889094e5
[BETA] Add support to Secure Boot in ESP32.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-07 14:32:31 +01:00
Pol Henarejos
b78c1485c1
Add support for HIGH/LOW ESP32 LED
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-04 23:45:14 +01:00
Pol Henarejos
7e651c78e3
Upgrade to v6.4
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-01 20:34:41 +01:00
Pol Henarejos
2dec7c0b4e
Fix phy marker write.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-01 20:34:24 +01:00
Pol Henarejos
0b18ab5e3d
Upgrade to Pico Keys SDK 8.5
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-29 16:12:41 +01:00
Pol Henarejos
868caff665
Use new VID:PID allocated to Pico HSM.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-22 12:33:42 +01:00
Pol Henarejos
ed980c3093
Use new layout
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-22 11:59:46 +01:00
Pol Henarejos
16d4d0d26e
Update README with up-to-date info.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-06 21:20:13 +01:00
Pol Henarejos
380ff7afa4
Upgrade to v6.2
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-05 19:54:07 +01:00
Pol Henarejos
60dafec2e8
Upgrade Pico Keys SDK to v8.2
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-05 19:51:51 +01:00
Pol Henarejos
3207fe3451
Disable button press by default since LED may not be properly configured until it is commissioned.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-05 19:40:50 +01:00
Pol Henarejos
6914be4fea
Fix build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-29 20:36:55 +01:00
Pol Henarejos
7d551f6fea
Blink led three times to acknowledge proper commissioning.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-29 20:17:03 +01:00
Pol Henarejos
d3a7ff425a
Fix pimoroni led
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-27 22:03:47 +01:00
Pol Henarejos
97e7303505
Move pointer
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-26 20:00:59 +01:00
Pol Henarejos
e41f2ba712
Releaser is available up to 6.7.0
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-26 19:54:15 +01:00
Pol Henarejos
710eb70af7
Update reamde & usage.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-13 23:36:43 +01:00
Pol Henarejos
9dbd764c8c
Reset by recopying memory file.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-13 21:12:45 +01:00
Pol Henarejos
feec958d10
Not used
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-11 20:05:08 +01:00
Pol Henarejos
9720bcfd4b
Fix build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-11 19:59:39 +01:00
Pol Henarejos
4bb81f5b25
Build only necessary boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-11 19:56:01 +01:00
Pol Henarejos
c9926a71d1
Do not call pytest
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-11 19:48:23 +01:00
Pol Henarejos
10c25b6a3a
Update pointer.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-11 19:36:06 +01:00
Pol Henarejos
629f14ab0d
Revert "Move EDDSA to another branch."
...
This reverts commit a0faf5308e .
2025-12-11 19:35:27 +01:00
Pol Henarejos
4d6f6e4635
Revert "Move Secure Boot to another branch."
...
This reverts commit 8978456524 .
2025-12-11 19:35:20 +01:00
Pol Henarejos
8e35104695
Update memory.flash for tests
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-10 00:20:28 +01:00
Pol Henarejos
82f4b2201c
Remove printf
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-09 21:38:15 +01:00
Pol Henarejos
8978456524
Move Secure Boot to another branch.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-09 21:37:52 +01:00
Pol Henarejos
a0faf5308e
Move EDDSA to another branch.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-09 15:49:20 +01:00
Pol Henarejos
f4df9766b6
Fix MSOS/BOS descriptor.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-03 16:34:24 +01:00
Pol Henarejos
a1d64d2523
Set anti-rollback version only when the binary is signed.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-02 09:55:49 +01:00
Pol Henarejos
82c6badc48
Increase anti-rollback version to 2.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-01 23:42:16 +01:00
Pol Henarejos
2243629d58
Add anti-rollback argument.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-01 23:42:01 +01:00
Pol Henarejos
b5b5ccd53c
Upgrade to v6.0
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-01 17:21:26 +01:00
Pol Henarejos
0df97c881f
Update mbedtls only when necessary.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-01 17:20:36 +01:00
Pol Henarejos
3c0706f7b2
Fix on AID selection. It should support shorter AID if matches.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-01 01:45:43 +01:00
Pol Henarejos
0d1d77b3f6
Upgrade Pico Keys SDK to v8.0
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-30 18:30:57 +01:00
Pol Henarejos
25301f14e1
Upgrade to mbedtls v3.6.5
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-30 18:28:24 +01:00
Pol Henarejos
256e61d813
Update tests to new CA2/DV2
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-28 12:14:36 +01:00
Pol Henarejos
1fe771f074
Fix tests
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-28 01:13:27 +01:00
Pol Henarejos
0588dde490
Do not use editable mode.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-28 00:53:29 +01:00
Pol Henarejos
1d6cc6ff89
Do not install apt pyscard
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-28 00:21:42 +01:00
Pol Henarejos
8fde25eff2
Fix build, key generation for RP2040 and added reboot bootsel command.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-28 00:13:10 +01:00
Pol Henarejos
634eac50b1
Moved to pypicohsm.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-18 01:05:49 +01:00
Pol Henarejos
c4a1cf32e5
Add Pico Version Major
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-18 01:05:40 +01:00
Pol Henarejos
de33124d6b
Fix test case with newer openssl.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-09 21:38:52 +01:00
Pol Henarejos
ae61150f5c
Upgrade Dockerfile for fixing.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-09 20:00:23 +01:00
Pol Henarejos
605819f0a3
Fix build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-09 19:56:18 +01:00
Pol Henarejos
c9dc70b095
Add template for pull requests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-27 08:58:12 +01:00
Pol Henarejos
7060e4df7c
Add CONTRIBUTING
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-27 08:53:48 +01:00
Pol Henarejos
28c99a21bd
Update license models and add ENTERPRISE.md
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-26 20:46:01 +01:00
Pol Henarejos
dba614ed36
Relicense project under the GNU Affero General Public License v3 (AGPLv3)
...
and add the Enterprise / Commercial licensing option.
Main changes:
- Replace GPLv3 headers with AGPLv3 headers in source files.
- Update LICENSE file to the full AGPLv3 text.
- Add ENTERPRISE.md describing the dual-licensing model:
* Community Edition: AGPLv3 (strong copyleft, including network use).
* Enterprise / Commercial Edition: proprietary license for production /
multi-user / OEM use without the obligation to disclose derivative code.
- Update README with a new "License and Commercial Use" section pointing to
ENTERPRISE.md and clarifying how companies can obtain a commercial license.
Why this change:
- AGPLv3 ensures that modified versions offered as a service or deployed
in production environments must provide corresponding source code.
- The Enterprise / Commercial edition provides organizations with an
alternative proprietary license that allows internal, large-scale, or OEM
use (bulk provisioning, policy enforcement, inventory / revocation,
custom attestation, signed builds) without AGPL disclosure obligations.
This commit formally marks the first release that is dual-licensed:
AGPLv3 for the Community Edition and a proprietary commercial license
for Enterprise customers.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-26 20:18:45 +01:00
Pol Henarejos
5f5e010a19
Stick with Espressif v5.5
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-08-12 00:51:24 +02:00
Pol Henarejos
5e4f2286e6
Add autobuild for RP2350.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-07-05 00:52:06 +02:00
Pol Henarejos
f0f8e4382a
Fix cross build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-06-22 20:33:06 +02:00
Pol Henarejos
a0f6abf6a6
Remove the tweak for packets multiple of 64 bytes. It was fixed in the USB stack handling (don't remember where).
...
Fixes #95 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-23 20:18:29 +02:00
Pol Henarejos
defa18a5ec
Add ESPICOHSMCA00002 to scs3 docs.
...
Fixes #87 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-18 19:06:23 +02:00
Pol Henarejos
bf06081b9c
Fix interface descriptor when HID is disabled.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-02 18:28:43 +02:00
Pol Henarejos
f1a8d8bc91
Use pyscard 2.2.1 since 2.2.2 has a bug
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-24 19:11:32 +02:00
Pol Henarejos
d6f15f8384
Fix eddsa output folder.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 19:56:20 +02:00
Pol Henarejos
dce4e304bc
Upgrade to v5.6
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 18:41:31 +02:00
Pol Henarejos
f97aaadd17
Update build script to automatize EdDSA builds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 18:41:00 +02:00
Pol Henarejos
611b762a1f
Use K1 curve in emulation mode.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-07 01:29:02 +02:00
Pol Henarejos
7c1ef56799
Fix ne parameter when secure message protocol is used.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-07 01:27:57 +02:00
Pol Henarejos
4b59bd6481
0x85 and 0x86 should return not found to avoid authentication path.
...
Fixes #81 and #84 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-07 01:27:21 +02:00
Pol Henarejos
9b1dceb8da
Use K1 curve for general authentication.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-07 01:24:22 +02:00
Pol Henarejos
c4bc346d98
Sign release builds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-06 18:37:36 +02:00