Commit Graph

634 Commits

Author SHA1 Message Date
Pol Henarejos
598752956f
Update scs3.md
Added macOS notes.
2022-06-13 14:58:09 +02:00
Pol Henarejos
4dce0e5958
Update public_key_authentication.md
Added screenshots.
2022-06-13 14:33:33 +02:00
Pol Henarejos
9f02aef930
Add PKA doc.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-13 14:28:09 +02:00
Pol Henarejos
0c25b0968b
Update scs3.md
Added a patch.
2022-06-13 11:59:28 +02:00
Pol Henarejos
ddc0bd7202
Updated SCS3 doc.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-13 11:57:33 +02:00
Pol Henarejos
20727e1508
Point to last checkout.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-12 18:10:59 +02:00
Pol Henarejos
3afc1964dc
Store in dynamic memory PUK authentication.
When a PUK is authenticated, session PIN is set to true.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-12 18:10:37 +02:00
Pol Henarejos
914020fd36
Added PUK authentication.
Surprisingly, it works from the very beginning.

Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-12 17:43:50 +02:00
Pol Henarejos
168a8cd5a6
Fix selecting PUK for AUT.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-12 17:42:21 +02:00
Pol Henarejos
eb94ed7806
Separated routines for verifying and parsing CV certificates.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2022-06-10 20:04:48 +02:00
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