Commit Graph

574 Commits

Author SHA1 Message Date
Pol Henarejos
db6b3ec427
Added select MSE for puk AUT.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 20:04:32 +02:00
Pol Henarejos
32d0cdcea7
Save cached challenge length.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 18:58:35 +02:00
Pol Henarejos
332fe8c884
Generated challenges are cached and dev_name (ESTERMXXXXX) based on terminal certificate.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 16:40:51 +02:00
Pol Henarejos
59f0cf7732
Fix CA certificates selection.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 16:33:53 +02:00
Pol Henarejos
b803505287
When a certificate is verified, the corresponding certificate description and the certificate are cached and saved.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 16:30:19 +02:00
Pol Henarejos
3542062ecd
Added function to write the ASN1 certificate description.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 16:29:28 +02:00
Pol Henarejos
824c327a2c
Added function to obtain EC params from root CA cert.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 16:28:55 +02:00
Pol Henarejos
76a41dffa1 Store all verified certificates (INS MSE) into CA_PREFIX files.
When a certificate is sent for verification, it is always cached and saved onto a CA_PREFIX.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 11:59:06 +02:00
Pol Henarejos
65482cad9c Added dynamic public key references.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 11:09:39 +02:00
Pol Henarejos
a17a4c0a3c Finished key public registration.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 11:09:25 +02:00
Pol Henarejos
2437cf09d1 Added EF for PUKs
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 11:08:47 +02:00
Pol Henarejos
c4c394845d
Updated pico-ccid.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 21:25:33 +02:00
Pol Henarejos
a4d4f9a944
Fix outer CAR value.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 21:25:17 +02:00
Pol Henarejos
5eb086935e
Added INS_PSO.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 19:02:59 +02:00
Pol Henarejos
83a583a33f
Fix CVC verification.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 19:02:22 +02:00
Pol Henarejos
143c2d279b Added cvc_verify to verify a cvcert with other CA cvcert.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 14:16:17 +02:00
Pol Henarejos
08dd596883 Added cvc_get_pub().
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 14:15:35 +02:00
Pol Henarejos
a4ffcebb0f Added variable puk_store.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 14:15:17 +02:00
Pol Henarejos
8a14c22056 Added OID compilation.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 11:53:58 +02:00
Pol Henarejos
39f7b5284a Added OID definitions.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-09 11:53:35 +02:00
Pol Henarejos
4f58cd255b
Adding PUK store.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-08 20:01:37 +02:00
Pol Henarejos
d96d7a533e
Added procedure for verifying CVC (unfinished).
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-08 20:01:23 +02:00
Pol Henarejos
0e59166c64 Added MSE for B6 CRT.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-08 17:35:30 +02:00
Pol Henarejos
6d8161de73 Added functions to retrieve CAR and CHR from certs.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-08 17:34:17 +02:00
Pol Henarejos
494df64674 Added CVCA to burnt certificates.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-08 17:33:48 +02:00
Pol Henarejos
d057729675
Fix returning the status of PIN1 when it is not initialized.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-07 19:58:21 +02:00
Pol Henarejos
b14a323ef8
Added INS PUK with status query.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-07 19:44:47 +02:00
Pol Henarejos
f2b66468ec
Adding Public Key Authentication file template.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-07 19:44:33 +02:00
Pol Henarejos
a48dfbbaf4
Some fixes with RAPDU.
When C0 is sent, pointers were not set properly.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-06 14:27:33 +02:00
Pol Henarejos
61625c4c5e
Update README.md
Fix typos.
2022-06-06 11:53:39 +02:00
Pol Henarejos
3124f5e565
Upgrading build tool to version 2.2.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-06 00:29:55 +02:00
Pol Henarejos
48a05f9afc
Upgrading to version 2.2.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-06 00:13:08 +02:00
Pol Henarejos
26fdf8b00c
Upgrading Pico CCID to version 2.0.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-06 00:12:32 +02:00
Pol Henarejos
34cb360d62
Updated docs.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-05 20:40:41 +02:00
Pol Henarejos
4bf5a80a7a
Added key usage counter to decryption operations.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 20:13:18 +02:00
Pol Henarejos
40efcd71c3
Added device option KEY_COUNTER_ALL.
When it is set, it enables the key usage counter for all keys when generated.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 20:10:53 +02:00
Pol Henarejos
aca291da9e
Key usage counter is added for every generated key.
When a key is generated, a key usage counter is added. It starts from 2^32-1 and is decremented for every sign request. Once it reaches 0, it forbids more signatures for this key.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 20:04:14 +02:00
Pol Henarejos
7f6bcdfb11
Addded fast crc32 checksum for DKEK storage.
It is for checking the integrity of the DKEK and thus, the scret keys, as they are encrypted with DKEK.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 15:51:52 +02:00
Pol Henarejos
696110a5b0
Key domain deletion and kek deletion are only allowed when key domain is empty.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 11:36:32 +02:00
Pol Henarejos
73fb61070f
Added kek deletion in a particular key domain.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 11:30:08 +02:00
Pol Henarejos
23da8047bc
Fix deleting key domain.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 11:22:15 +02:00
Pol Henarejos
bf70a08c9f
Added key domain deletion.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 11:16:40 +02:00
Pol Henarejos
ce410dae65
Fix when setup a key domain.
Now the dkek is cleared before imports.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-03 11:01:21 +02:00
Pol Henarejos
94a42c4267
Fix changing PIN with multiple domain.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-02 20:09:43 +02:00
Pol Henarejos
f4cc1fed36
Fix meta parsing.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-02 19:30:09 +02:00
Pol Henarejos
7c27be784b Fix parsing meta data on key generation. 2022-06-02 14:12:11 +02:00
Pol Henarejos
7d1b22c337 Added meta information for symmetric keys. 2022-06-02 12:12:12 +02:00
Pol Henarejos
1e550c8866 Using custom mbedtls configuration file. 2022-06-01 12:58:19 +02:00
Pol Henarejos
2febbe2795 Fix missing comma. 2022-06-01 12:57:42 +02:00
Pol Henarejos
299516f576 Fix set point A.
mbedtls does not set point A for some curves.
2022-06-01 11:51:33 +02:00