317 Commits

Author SHA1 Message Date
Pol Henarejos
90e77f7c61 Yubico and GnuPG interpretate the standard in different ways. While Yubico follows strictly the spec and expects the TAG encapsulating the output of GET_DATA, GnuPG expects consecutive DO in the response.
A possible workaround is to detect whether sub-DO are called (GnuPG) or management AID is called (Yubico).

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
v4.0
2025-12-05 19:11:21 +01:00
Pol Henarejos
504d90a2b3 Fix MSOS/BOS descriptor.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
v4.0-eddsa1
2025-12-03 16:35:10 +01:00
Pol Henarejos
c35d6f73d9 Set anti-rollback version only when the binary is signed.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-02 09:56:40 +01:00
Pol Henarejos
595455bbbc Increase anti-rollback version to 2.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 23:50:57 +01:00
Pol Henarejos
7a27dde253 Add anti-rollback argument.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 23:50:32 +01:00
Pol Henarejos
e4fec2ab22 Merge pull request #43 from MageDelfador/esp32pr
ESP32 Optimization
2025-12-01 17:04:06 +01:00
Pol Henarejos
45d174b8bf Upgrade to v4.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 17:03:43 +01:00
Pol Henarejos
73053bdc6d Upodate mbedtls only when necessary.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 17:03:34 +01:00
Pol Henarejos
7936e20b9a Add missing definitions for EdDSA
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 15:31:35 +01:00
Pol Henarejos
9606e34630 Upgrade mbedTLS only when necessary
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-12-01 13:21:38 +01:00
Pol Henarejos
81b012c0dd 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:26 +01:00
Pol Henarejos
42a13b2777 Fix start-up test script
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-11-30 19:11:53 +01:00
Pol Henarejos
9742991deb Add version definitions.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-11-30 18:39:10 +01:00
Pol Henarejos
d938720ab5 Upgrade Pico Keys SDK to v8.0
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-11-30 18:32:12 +01:00
Pol Henarejos
b80a4693c6 Use max freq in esp32
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-11-30 18:31:54 +01:00
Pol Henarejos
321d02eb0d Add template for pull requests.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-10-27 08:58:23 +01:00
Pol Henarejos
296fbd142f Add CONTRIBUTING
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-10-27 08:54:16 +01:00
Pol Henarejos
b606b75a12 Update license model and add ENTERPRISE.md
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-10-26 20:40:01 +01:00
Pol Henarejos
331f4f1c4e 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:24:47 +01:00
MageDelfador
abb432dd31 Update sdkconfig.defaults 2025-10-15 23:44:38 +08:00
Pol Henarejos
f3b7f3b42d Fix build
Fixes #42

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-09-30 17:26:17 +02:00
Pol Henarejos
d76e53f80b Do not call pico_sdk_init.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-08-25 01:41:01 +02:00
Pol Henarejos
fc663cfdd6 Upgrade to Pico SDK 2.2
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-08-13 13:24:27 +02:00
Pol Henarejos
47ac55abd1 Stick with Espressif v5.5
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-08-13 13:22:30 +02:00
Pol Henarejos
286893bdb6 Stick with Espressif v5.5
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-08-12 00:52:08 +02:00
Pol Henarejos
41ae81067c Merge remote-tracking branch 'origin/main' 2025-07-09 09:39:05 +02:00
Pol Henarejos
9c878cc5b6 Fix PIV default keys indication.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-07-08 14:13:23 +02:00
Pol Henarejos
31ac28c7de Fix touch policy on mgmt key change.
Fixes #38.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-07-08 13:51:24 +02:00
Pol Henarejos
33ce1c50aa Add autobuild for RP2350.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-07-05 00:52:30 +02:00
Pol Henarejos
edfcd087c1 Fix cross build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-06-22 20:26:53 +02:00
Pol Henarejos
a713eb4e03 Fix ESP32 build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-06-22 20:22:38 +02:00
Pol Henarejos
f2fe6dd5c2 Update README.md
Add Pico Fido2 link.
2025-05-30 11:22:59 +02:00
Pol Henarejos
1a24a9ed1b Revert "Add card personalize 2 tests"
This reverts commit 0c46c1d25ce3c109bb8014914bd812a2a000f0ac.
2025-05-24 14:55:23 +02:00
Pol Henarejos
b62573a6bd Fix data checks.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:55:23 +02:00
Pol Henarejos
58a9d9cf97 Fix reset retry when OTP is enabled.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:55:23 +02:00
Pol Henarejos
bc9681e7b0 Add support for EdDSA with Ed448 curve.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:55:23 +02:00
Pol Henarejos
c39b87019e Add card personalize 2 tests
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:55:23 +02:00
Pol Henarejos
f34cdac00b Rename cmd_version to cmd_version_openpgp
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:50:17 +02:00
Pol Henarejos
f9c1178f4d Move PRODUCT def to a separate file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:49:48 +02:00
Pol Henarejos
68ac692de6 Rename scan_files to scan_files_openpgp
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:25:21 +02:00
Pol Henarejos
4480e29ecc Rename wait_button_pressed to wait_button_pressed_fid.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-24 14:22:37 +02:00
Pol Henarejos
fccc48de43 Fix change PIN when no PIN was introduced before.
Fixes #32

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-05-12 11:16:18 +02:00
Pol Henarejos
d5a0d85b71 Fix eddsa output folder.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
v3.6
2025-04-10 19:56:40 +02:00
Pol Henarejos
6dbc8f8f56 Upgrade to v3.6
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-04-10 18:48:27 +02:00
Pol Henarejos
11840f1471 Update build script to automatize EdDSA builds.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-04-10 18:47:35 +02:00
Pol Henarejos
fc4391b433 Upgrade pico keys sdk.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-04-08 18:58:19 +02:00
Pol Henarejos
b8a3969fad Build and sign firmware.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-04-08 18:58:06 +02:00
Pol Henarejos
0cf673ac6d Fix build name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-23 00:56:07 +01:00
Pol Henarejos
142511c494 Fix commissioned values for LED.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-23 00:54:09 +01:00
Pol Henarejos
6de499e435 Add EdDSA support as a conditional build.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2025-02-21 20:29:42 +01:00