Pol Henarejos
c54a6fa6fe
Add CONTRIBUTING
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-27 08:53:08 +01:00
Pol Henarejos
8b08618875
Update license models and add ENTERPRISE.md
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-26 20:45:37 +01:00
Pol Henarejos
d4f2d04487
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:10:06 +01:00
Pol Henarejos
71512ae61a
Stick with Espressif v5.5
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-08-12 00:51:15 +02:00
Pol Henarejos
fcd29a0717
Add autobuild for RP2350.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-07-05 00:51:29 +02:00
Pol Henarejos
bb79e6d726
Fix cross build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-06-22 20:28:32 +02:00
Pol Henarejos
a9c35afda3
Fix deps build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-06-22 20:22:53 +02:00
Pol Henarejos
be2ab59cd1
Fix ESP32 build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-06-22 20:12:08 +02:00
Pol Henarejos
9c28f72d17
Merge branch 'development'
2025-06-22 18:00:08 +02:00
Pol Henarejos
0518ac3655
Flash size is obtained dynamically rather than in build time. It will allow to reduce dramatically the number of builds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-30 12:06:34 +02:00
Pol Henarejos
93523faf02
Fix bool build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-25 19:20:14 +02:00
Pol Henarejos
a018a7f66c
Update pointer to support dynamic AID
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-25 19:15:45 +02:00
Pol Henarejos
9b75c5c175
Check OpenPGP and PIV dynamically as it can be loaded separately.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-25 19:07:52 +02:00
Pol Henarejos
513642663b
Move PRODUCT def to another file.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-24 14:49:15 +02:00
Pol Henarejos
e4ed703b6b
Rename scan_files to scan_files_fido
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-24 14:25:33 +02:00
Pol Henarejos
91aaee5beb
Force 8-digit serial number
...
Fixes #149 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-19 10:01:07 +02:00
Pol Henarejos
a61bb91824
Fix eddsa output folder.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 19:56:06 +02:00
Pol Henarejos
cfe1321d62
Upgrade to v6.6
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 18:37:48 +02:00
Pol Henarejos
2cbea57c86
Update build script to automatize EdDSA builds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 18:37:09 +02:00
Pol Henarejos
b6bf2e6c66
Do not update CFG_FLAGS if slot is ChalResp.
...
Fixes #142
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-10 16:23:20 +02:00
Pol Henarejos
3212f95915
Fixes update OTP when LT_CHAL is enabled.
...
Fixes #141 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-08 18:59:50 +02:00
Pol Henarejos
21b12a7bff
Define MCU for emulation.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-08 18:58:49 +02:00
Pol Henarejos
c8dbc213a0
Fix EPNUM counting for ESP32. It fixes the problem of not sending KB.
...
Fixes #130 #138 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-06 18:32:33 +02:00
Pol Henarejos
0a2ee6523f
Build all boards with secure boot pkey.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-31 00:53:44 +02:00
Pol Henarejos
c3ea413592
Do not return extensions if they are not requested OR are false.
...
Fixes #136
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-30 19:32:25 +02:00
Pol Henarejos
64f371e6e5
Despite it is described in the spec 2.1, do not return epAtt if is false, return only when it's true. It fixes a bug with Firefox and Linux that blocked the possibility to make credentials.
...
Fixes #129 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-30 18:13:58 +02:00
Pol Henarejos
fdd4afb993
CTAP_RESP should be 0ed before sending.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-30 18:12:18 +02:00
Pol Henarejos
fef46dc1c5
OATH Rename requires security validation.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-23 23:55:50 +01:00
Pol Henarejos
23a45ac297
Rename returns error if new credential name is equal to previous.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-23 23:51:21 +01:00
Pol Henarejos
b152ff15a8
Fix challenge length calculation for LT64.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-23 23:27:52 +01:00
Pol Henarejos
751fcf0538
Fix HMAC-SHA1 calculation.
...
Fixes #127 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-23 23:13:21 +01:00
Pol Henarejos
4e4c28a479
Fix CONFIG_TOUCH status report.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-23 22:44:35 +01:00
Pol Henarejos
23b60beb2e
When OTP interface is disabled, it also disables KEYBOARD interface to avoid incompatibilities with smart phones.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-22 23:26:19 +01:00
Pol Henarejos
37d7d7faeb
OTP can flow through FIDO interface as a report type 3.
...
Fixes #123 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 19:05:06 +01:00
Pol Henarejos
49c0179ccf
Fix swap files.
...
When a dynamic file is deleted, all scoped references to other dynamic files are invalidated.
Fixes #124
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 13:33:35 +01:00
Pol Henarejos
eacb8a040c
Increase config_seq on swap and update.
...
Fixes #124 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 11:07:02 +01:00
Pol Henarejos
cb99b8f401
Fix emulation build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 01:28:07 +01:00
Pol Henarejos
94f8d5f65f
Add support for Require Touch in ChalResp OTP slots.
...
Fixes #123 #104
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 01:22:14 +01:00
Pol Henarejos
38d332f450
Restore led mode when finishing button press.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-19 01:19:24 +01:00
Pol Henarejos
c67f5e3a1f
Fix Pico Commissioner when new fields are added. It breaks backward compatibility but ensures forward.
...
Fixes #118 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-17 11:39:27 +01:00
Pol Henarejos
bfb8a4cb20
Only send secp256k1 if explicitly enabled.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-11 19:28:22 +01:00
Pol Henarejos
0f5a24c9b6
Fix encoding get info with variable curves.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-11 19:19:28 +01:00
Pol Henarejos
dd207bd031
Fix emulation build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-11 19:11:49 +01:00
Pol Henarejos
6069cf949b
ES256K1 is disabled by default for compatibility. It can be enabled via Pico Commissioner.
...
Fixes #109 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-11 19:05:28 +01:00
Pol Henarejos
297c34914b
Do not report EDDSA on get info if not supported.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-11 15:19:49 +01:00
Pol Henarejos
529a12e7a3
Only pin to core in ESP32-S3 since it is multicore.
...
Fixes #100
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-07 19:37:06 +01:00
Pol Henarejos
bdbdd92be8
Enable alwaysUv if pin is set and alwaysUv is a device options or there's current Uv in memory. It will force the prompt of a PIN.
...
Fixes #113 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-24 12:02:03 +01:00
Pol Henarejos
3807e23914
Fix silent authentication with resident keys.
...
It requires a new silent format, so silent credentials must be reissued.
Related with #113 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-23 22:03:06 +01:00
Pol Henarejos
ce7d3ea72f
Silent credential shall be mixed with RP.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-23 20:22:47 +01:00
Pol Henarejos
eb857df3e1
Fix build name.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-23 00:56:27 +01:00
Pol Henarejos
2842944d90
Fix commissioned values for LED.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-23 00:49:56 +01:00
Pol Henarejos
7be92f5331
Fix autobuild.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 19:57:08 +01:00
Pol Henarejos
403b26b60a
Build EDDSA tests by default.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 19:07:10 +01:00
Pol Henarejos
b91ece8ec3
Add EDDSA support as a conditional build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 19:00:44 +01:00
Pol Henarejos
d54bc1b0f3
Fix ESP32 build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 18:59:44 +01:00
Pol Henarejos
e2dbbe2cc3
Merge branch 'eddsa' into development
2025-02-21 18:11:43 +01:00
Pol Henarejos
8aa9d1c5a3
Fix cyw43 build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 17:28:39 +01:00
Pol Henarejos
2d2814cefc
Fix emulation build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 17:08:37 +01:00
Pol Henarejos
89a9d013f0
Build cyw43 driver with RP2350.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-21 17:02:26 +01:00
Pol Henarejos
964184cd9f
Upgrade to v6.4
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 20:15:06 +01:00
Pol Henarejos
3969fd5136
Upgrade to v6.4
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 15:15:16 +01:00
Pol Henarejos
01b197d8ec
Fix led driver build for Pimoroni.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 15:14:42 +01:00
Pol Henarejos
8f7b52a387
Fix rename board name.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 14:34:18 +01:00
Pol Henarejos
565ceb7dc4
Take led_driver on build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 14:33:37 +01:00
Pol Henarejos
b7590b12d1
Enable fastest supported clock.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 13:36:11 +01:00
Pol Henarejos
d8da775218
Add file & line to debug info.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 11:43:56 +01:00
Pol Henarejos
13c7ade20d
Add support for older PCSC.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 11:19:28 +01:00
Pol Henarejos
d925e89127
Add support for ESP32-S2 build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 11:17:58 +01:00
Pol Henarejos
7a1131cb1a
Modify build script to build all supported boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 10:58:59 +01:00
Pol Henarejos
d169f001b6
Upgrade to Pico SDK 2.1.1
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-19 10:58:43 +01:00
Pol Henarejos
250de29c3c
Added support for OATH rename.
...
Fixes #107 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-17 19:54:56 +01:00
Pol Henarejos
7c4a020dc1
Merge PR #7 & #8 from @imkuang.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-09 19:18:31 +01:00
Pol Henarejos
88063d5d6d
Added tests for silent authentication.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-08 15:01:25 +01:00
Pol Henarejos
f43bc9701f
Added support for silent authentication.
...
Fixes #91 .
It requires FIDO22 credential protocol, meaning that old credentials have to be reissued.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-08 15:00:12 +01:00
Pol Henarejos
353d782970
Fix OTP command issues in Linux.
...
Fixes #96 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-31 12:01:29 +01:00
Pol Henarejos
cdd2f486aa
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:47 +01:00
Pol Henarejos
a381e94dda
Added phy_save() and phy_load() to save and load PHY.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-29 17:07:03 +01:00
Pol Henarejos
e78ec82435
Do not init PHY on modifying a single value.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-29 16:58:49 +01:00
Pol Henarejos
584d2f3b33
Add option to keep the LED steady.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-29 16:27:45 +01:00
Pol Henarejos
18676990cb
Fix USB keyboard descriptor in Windows.
...
Fixes #97 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-29 13:22:21 +01:00
Pol Henarejos
ed9c46ded0
Fix slot deletion.
...
Fixes #89 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-19 19:55:16 +01:00
Pol Henarejos
d6a060f214
Upgrade to v6.2
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-15 15:38:55 +01:00
Pol Henarejos
6265992162
Upgrade to v6.2
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-15 15:23:29 +01:00
Pol Henarejos
63b7b9b8d2
Merge branch 'development'
2025-01-15 15:13:14 +01:00
Pol Henarejos
8db06bf3ac
Add rollback version to 1.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-15 15:12:28 +01:00
Pol Henarejos
77dd1c4b98
Fix OTP/MKEK secure system.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-08 17:25:04 +01:00
Pol Henarejos
6a67800057
Add support for PIN hash storage and MKEK.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-03 01:20:58 +01:00
Pol Henarejos
a70e259a90
Use partition bounds if available.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-30 21:42:44 +01:00
Pol Henarejos
7800056597
Fix bin name.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-27 02:23:24 +01:00
Pol Henarejos
eeecf513cb
Fix bin name.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-27 02:23:11 +01:00
Pol Henarejos
9b0b584c14
Add nightly build of esp32.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-27 02:11:53 +01:00
Pol Henarejos
1c45685926
Add nightly build of esp32.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-27 02:11:31 +01:00
Pol Henarejos
cff544b485
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:50 +01:00
Pol Henarejos
1f805b1df2
Use more uint16 funcs.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-23 21:25:46 +01:00
Pol Henarejos
1d20321d69
Add BE/LE functions to pack uint16, uint32 and uint64.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-23 20:51:09 +01:00
Pol Henarejos
b42a664ac6
Add support for displaying memory usage via "pico-fido-tool.py memory" command.
...
Fixes #82 .
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-23 19:56:13 +01:00
Pol Henarejos
2d356a315e
Increase TinyUSB stack size for ESP32 boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-23 19:54:11 +01:00
Pol Henarejos
9bfbc45f84
Add support for variable USB product name.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-18 20:18:41 +01:00
Pol Henarejos
a5a0f3508c
Remove NFC references.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-17 11:58:39 +01:00
Pol Henarejos
9c9074c1ef
Do not debug after write the buffer.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-16 18:43:04 +01:00