354 Commits

Author SHA1 Message Date
Pol Henarejos
1197389e02 Fix response length encoding.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-20 10:11:03 +01:00
Pol Henarejos
9bcb6c1d7e Fixed chained response.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-20 00:07:14 +01:00
Pol Henarejos
ec08c06196 Added support for PUT DATA.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-20 00:06:42 +01:00
Pol Henarejos
de43604db6 Added support for APDU chaining.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-19 18:55:21 +01:00
Pol Henarejos
2f24c3d9a8 Added support for PIV signature.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-19 17:56:36 +01:00
Pol Henarejos
0b7c8da592 KEK use is optional.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-19 17:56:00 +01:00
Pol Henarejos
d96bbb9b4b Use new asn1 structs.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-14 23:22:19 +01:00
Pol Henarejos
ebec1b1022 Add PIV asymmetric keygen.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-14 23:22:01 +01:00
Pol Henarejos
4cfa2a16bf Added AUTHENTICATE support.
Note that CARD MGM key is NOT encrypted with DEK, since it has to be accessed even without PIN.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-12 22:04:19 +01:00
Pol Henarejos
817d8b39ec Added first commit of Pico OpenPGP with PIV support.
It shares the PIN of OpenPGP.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-03-06 18:54:30 +01:00
Pol Henarejos
21e3ba11c6 Upgrade to version 1.12.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
v1.12
2024-02-06 14:15:22 +01:00
Pol Henarejos
2f51786121 Added support for nullbits, pololu 3pi, waveshare rp2040 lcd 1.28 and wavezhare rp2040 one.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2024-02-06 14:12:12 +01:00
Pol Henarejos
0bee85c6aa Add -DVIDPID=<VALUE> to build a project with a known VID/PID. Supported values: NitroHSM, NitroFIDO2, NitroStart, NitroPro, Nitro3, Yubikey5, YubikeyNeo, YubiHSM, Gnuk, GnuPG
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-12-11 18:15:42 +01:00
Pol Henarejos
7f7e94c639 Use new names and selecting aid.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-11-06 15:23:54 +01:00
Pol Henarejos
a083bcdb3f Use new pico-keys-sdk name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-11-06 14:37:29 +01:00
Pol Henarejos
109e97bcff Rename old pico-hsm-sdk to new name pico-keys-sdk.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-11-06 14:37:19 +01:00
Pol Henarejos
08a40e757a Merge branch 'main' into eddsa 2023-09-05 01:14:02 +02:00
Pol Henarejos
e3728bdb51 Update dockerfile.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-05 01:13:52 +02:00
Pol Henarejos
939c7fa7ab Add workflow to eddsa branch.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-05 01:10:52 +02:00
Pol Henarejos
91bcd9f9cd Fix EdDSA signature return format.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-05 01:04:44 +02:00
Pol Henarejos
865eafb1f3 Fix Curve25519 key import.
For an unknown reason, curve25519 keys are imported in big endian instead of little endian.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-05 00:25:39 +02:00
Pol Henarejos
88f5bbfd58 Added support for Ed25519.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-05 00:18:06 +02:00
Pol Henarejos
e480d57881 Update HSM SDK pointer.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-09-04 17:26:53 +02:00
Pol Henarejos
9ea894b60b Use mbedtls read/write keys wrappers.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-08-28 01:25:28 +02:00
Pol Henarejos
3ae7af9812 Create FUNDING.yml 2023-05-17 10:23:06 +02:00
Pol Henarejos
b815dc35c8 Fix initializing DEK for pw3.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-05-17 00:04:57 +02:00
Pol Henarejos
f6fa77368b Upgrade pico hsm sdk.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-05-16 09:24:46 +02:00
Pol Henarejos
93bef128ab Update README.md
Added Pico Patcher link.
2023-05-11 20:09:51 +02:00
Pol Henarejos
11fc49052d Fix conditional interface compilation
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-03-04 14:18:33 +01:00
Pol Henarejos
5eb6822bf5 Update code style.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-03-04 14:08:47 +01:00
Pol Henarejos
f2c1e50ffb Fix test pw1_status
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-03-04 14:08:36 +01:00
Pol Henarejos
80ed59f05c Update patch_vidpid for latest HSM SDK.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-03-04 14:07:18 +01:00
Pol Henarejos
73c1bf786d Upgrade to v1.10
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
v1.10
2023-02-06 00:03:18 +01:00
Pol Henarejos
02a5695b61 Added missing file.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-05 00:00:47 +01:00
Pol Henarejos
9310e1af55 Use correct branch name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:58:18 +01:00
Pol Henarejos
8399cd47db Wrong branch name.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:57:37 +01:00
Pol Henarejos
dddb9f2824 Lets try manual trigger.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:56:56 +01:00
Pol Henarejos
c97dd77404 Update test.yml
Only master branch is used.
2023-02-04 23:49:55 +01:00
Pol Henarejos
94930e5f7d Some fixes in HSM SDK.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:48:04 +01:00
Pol Henarejos
e697e30c6c Add virtual smart card emulation for CD/CI.
On each push, the software is built in a container, run as a virtual smartcard and test it.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:47:49 +01:00
Pol Henarejos
1288d25999 Adding workflow for autobuild.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:46:20 +01:00
Pol Henarejos
51742153d0 Adding checks for platform.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:45:31 +01:00
Pol Henarejos
1863971a1b It can be safely checked.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:45:07 +01:00
Pol Henarejos
3c7df3aa42 Fix checking length in ECDH.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 23:44:55 +01:00
Pol Henarejos
e5871d5791 Fix returning algo attributes for authentication key.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 21:07:10 +01:00
Pol Henarejos
7ccbb0103f Fix computing length of algorithm attributes.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 21:06:33 +01:00
Pol Henarejos
8e03ce28a3 Fix returning signature in some cases.
In some particular cases where signature has a 0 prepended, mpi is written without that which caused variable length signatures. Now it returns the signature whose length is always the same.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 20:28:33 +01:00
Pol Henarejos
b300ed87f3 Fix returning ecdsa response for keys > 512 bits.
In that case, TLV shall contain 81 length.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 20:27:20 +01:00
Pol Henarejos
7b17cc7b49 Public point is now computed when private key is imported.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 19:44:44 +01:00
Pol Henarejos
abf190f767 Tuned returning public key information for ECDSA.
Despite it was not a bug, it seems some ASN.1 readers do not recognize 0x81/0x82 tags when len < 128.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2023-02-04 19:44:00 +01:00