Pol Henarejos
61359c7ebd
Add key derivation tests (HKDF, PBKDF2 and X963).
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-17 23:54:40 +01:00
Pol Henarejos
20c01eb08d
Fix name of x963 function.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-17 23:54:06 +01:00
Pol Henarejos
0b71bf693d
Added CMAC tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-17 22:46:16 +01:00
Pol Henarejos
a1f478239d
Added HMAC tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-17 22:43:28 +01:00
Pol Henarejos
420e55901c
Fix HMAC computation.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-17 22:43:09 +01:00
Pol Henarejos
414cab78e3
Enabling entropy and ctr_drbg for emulation mode.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-16 23:43:11 +01:00
Pol Henarejos
367651fe75
Upgrade to mbedtls v3.3.0
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-16 23:34:13 +01:00
Pol Henarejos
7b62ca5327
Upgrade to mbedtls v3.3.0
2023-02-16 23:33:13 +01:00
Pol Henarejos
9be176e523
Fixes for Pico SDK 1.5
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-16 22:55:36 +01:00
Pol Henarejos
b24e109a3c
Fix error message when no card is detected.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-16 22:50:53 +01:00
Pol Henarejos
215fdca9f8
Added AES cipher tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-15 19:47:16 +01:00
Pol Henarejos
9279773073
Removed printf
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-15 19:46:42 +01:00
Pol Henarejos
d5b718ca58
Move pointer again...
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-15 00:14:37 +01:00
Pol Henarejos
cd6e280f4f
Switching to new style.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-15 00:10:35 +01:00
Pol Henarejos
e7495d11f2
Moving pointer.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 23:25:13 +01:00
Pol Henarejos
daaa5bf402
Harmonize coding style.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 23:13:46 +01:00
Pol Henarejos
cab72f200a
Moving pointer
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 23:12:48 +01:00
Pol Henarejos
380d47faa1
Renaming for avoiding confusions
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 23:05:37 +01:00
Pol Henarejos
962d1c6916
When runing a test, load a initial flash image that contains KEYDEV.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 22:53:30 +01:00
Pol Henarejos
d81d51d6fc
Fix get public key.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 21:51:46 +01:00
Pol Henarejos
319000df1a
Add challenge tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 21:38:06 +01:00
Pol Henarejos
5508e531a0
Added key domain tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 18:52:12 +01:00
Pol Henarejos
1e846600dd
Add test info
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 18:51:50 +01:00
Pol Henarejos
43a49d2a14
Return reference not found when deleting a key domain.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 18:51:30 +01:00
Pol Henarejos
3b9c2d159b
Fix returning existing key domain.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 18:47:43 +01:00
Pol Henarejos
14c7852143
Fix returning shared secret.
...
I do not know why a 0x04 was prepended.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 11:28:27 +01:00
Pol Henarejos
407110def4
Added ECDH tests.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-14 11:25:02 +01:00
Pol Henarejos
79d86a335c
Adding more tests and renaming old ones.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-13 23:54:41 +01:00
Pol Henarejos
0685be5f1e
EE_CERTIFICATE is added when importing key.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-13 23:53:41 +01:00
Pol Henarejos
8f6ae52c70
Added routines for import key.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-13 23:52:58 +01:00
Pol Henarejos
af16be64a2
Adding checks on ec import.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-13 23:30:27 +01:00
Pol Henarejos
68071825c2
Fix EC public key computation when importing.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-13 23:24:04 +01:00
Pol Henarejos
fbabb81acd
Fix asymmetric decrypt for OAEP. It only supports SHA256.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-12 21:53:47 +01:00
Pol Henarejos
8bc4b133ca
Adding routine for asymmetric decryption.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-12 21:53:19 +01:00
Pol Henarejos
2ce458dad5
Adding BP curves and RSA 4k to signature test.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-02-12 21:53:01 +01:00
Pol Henarejos
478b186094
Finally it seems to work.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 16:09:57 +01:00
Pol Henarejos
ab71b3163b
Adding sleep just in case.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 16:07:41 +01:00
Pol Henarejos
c4de88e6c6
Moving pointer
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 15:39:31 +01:00
Pol Henarejos
3b0e34f465
More tries...
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 13:23:39 +01:00
Pol Henarejos
9077e78315
More flags to debug
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 13:15:04 +01:00
Pol Henarejos
2f5fcd1f14
Start pcscd with debug flag to get more debug info.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 13:09:17 +01:00
Pol Henarejos
24d430a3ac
Updating pointer to include aesni
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 13:04:34 +01:00
Pol Henarejos
307eb63ee5
Init submodules in actions.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:59:03 +01:00
Pol Henarejos
07f85dc4b8
Add warning removal
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:18:18 +01:00
Pol Henarejos
a4026e0ca0
Submodules must be pulled.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:09:46 +01:00
Pol Henarejos
ebd8dc7bb8
Add apt-utils package.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:08:16 +01:00
Pol Henarejos
bac15d5472
Removing TTY from docker.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:05:03 +01:00
Pol Henarejos
8540fdcf19
Updating pointer.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:01:20 +01:00
Pol Henarejos
fc8d39882f
Add missing build file.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 12:00:57 +01:00
Pol Henarejos
ca093eb81e
Add emulation and test workflow.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 11:59:26 +01:00
Pol Henarejos
35c42bccb4
List PRKD if exist.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 01:25:25 +01:00
Pol Henarejos
52114b2d85
Added initialization on each keypairgen.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 01:25:05 +01:00
Pol Henarejos
8f593f6357
Added support for build emulation in Apple and Linux.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 01:24:35 +01:00
Pol Henarejos
6f8769ee8d
Added scripts for testing in a docker container.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-30 01:24:10 +01:00
Pol Henarejos
1af461c206
Add first battery of tests.
...
It contains keypair generation for ECC and RSA, PIN blocking and signature generation and verification.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-17 13:41:10 +01:00
Pol Henarejos
8976dc1f79
Added support for RSA-PKCSv15-SHA224, SHA384 and SHA512. Also added support for RSA-PSS-SHA224, SHA384 and SHA512.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-17 00:41:46 +01:00
Pol Henarejos
9d47e62041
Fix signature for secp521r1.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-17 00:05:46 +01:00
Pol Henarejos
0daddfd477
Fix ECDSA-SHA384 and ECDSA-SHA512.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-17 00:05:31 +01:00
Pol Henarejos
89d617110f
Add asn1_build_prkd_rsa()
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-16 18:54:28 +01:00
Pol Henarejos
17941397e9
Fix exporting large ECC key.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-16 18:54:20 +01:00
Pol Henarejos
f2aa4aae79
Moving pointer to latest bug fixes.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-14 00:41:23 +01:00
Pol Henarejos
e29b3143ed
Moving pointer
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-13 18:49:08 +01:00
Pol Henarejos
5419ff74ee
Using file_has_data() to check contents.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-13 18:07:50 +01:00
Pol Henarejos
723011078c
Using file_has_data() instead of data directly.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:06:31 +01:00
Pol Henarejos
fe7c0333ab
Some emulation fixes.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:06:11 +01:00
Pol Henarejos
c01940b62b
Fix accessing way to data.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:05:59 +01:00
Pol Henarejos
7195a8f3ec
Fix headers in emulation mode.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:05:46 +01:00
Pol Henarejos
7764de4e10
Unused headers.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:05:16 +01:00
Pol Henarejos
e05c526b4d
Fix printf format.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:04:55 +01:00
Pol Henarejos
bc20f98b44
In emulation, return always 1mb of memory.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:04:44 +01:00
Pol Henarejos
742c3f3e3c
RTC command is not available in emulation.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:04:23 +01:00
Pol Henarejos
9793977ffc
Fixed double counter increment.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:04:05 +01:00
Pol Henarejos
6c85772fff
Added emulated build capability.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2023-01-12 20:03:42 +01:00
Pol Henarejos
9ff3254a4c
Update to latest HSM SDK.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-22 22:50:54 +01:00
Pol Henarejos
7d906851dd
Updating to newer version of Pico HSM SDK.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-20 23:51:49 +01:00
Pol Henarejos
691aa3308c
Fix when importing a dkek and it fails.
...
Now the dkek state is returned to the previous one.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 20:11:26 +01:00
Pol Henarejos
6a57e67629
Fix importing dkek twice.
...
It is not allowed anymore.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 20:04:18 +01:00
Pol Henarejos
202c8a4b22
Credentials are not necessary when importing DKEK.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 20:00:32 +01:00
Pol Henarejos
f2874ae3ef
Fix when ping is provided during the initialization.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 20:00:19 +01:00
Pol Henarejos
9e9cf9b768
Upgrading version to v3.2.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 19:00:44 +01:00
Pol Henarejos
c95dee84f2
Changing backend service url.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-06 19:00:35 +01:00
Pol Henarejos
65cde9960f
Upgrading version to v3.2.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-12-04 17:42:03 +01:00
Pol Henarejos
7ca96178fb
Moving HSM SDK pointer to latest release.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-28 18:54:22 +01:00
Pol Henarejos
e70461e551
Merge branch 'master' into development
2022-11-15 17:40:29 +01:00
Pol Henarejos
63c85000d0
Added support for kdf.
...
It supports HKDF, PBKDF2 and X963, with multiple MD (SHA family), salt/nonces and configurable output size.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-15 00:15:59 +01:00
Pol Henarejos
4113f6a65d
Fix parsing PBKDF2 params.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-15 00:14:39 +01:00
Pol Henarejos
f98d744076
Add apdu.ne check for large buffers.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 18:04:44 +01:00
Pol Henarejos
bb4c293736
Adding subparsers for subcommands.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 16:27:51 +01:00
Pol Henarejos
aa8b1e6efe
Added support for X963 KDF.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 15:38:16 +01:00
Pol Henarejos
0cb2e8ec2e
Added PBES2 key derivation with encryption and decryption support.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 13:07:49 +01:00
Pol Henarejos
0e96753ccb
Added support for PBKDF2.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 12:01:27 +01:00
Pol Henarejos
2b2df22d75
Added support for configurable HKDF.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-14 10:14:54 +01:00
Pol Henarejos
f65167e3c7
Adding support for keypair generation for Curve25519 and Curve448.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-11 17:10:34 +01:00
Pol Henarejos
8fe2677a56
Fix cofactor return with cvc.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-11 17:08:36 +01:00
Pol Henarejos
d09a7cf9c8
If self-signature fails, puts all-0.
...
When generating a keypair and returns a self-signed CVREQ, the signature might fail for Curve25519 and Curve448. Instead of returning null, it puts zeros in order to return what is expected to return.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-11 17:04:17 +01:00
Pol Henarejos
6bf72e5a59
Added support for HMAC-SHA1, HMAC-SHA224, HMAC-SHA256, HMAC-SHA384 and HMAC-SHA512.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-08 17:26:32 +01:00
Pol Henarejos
7c877ebea2
Using file_out parameter.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-07 22:31:19 +01:00
Pol Henarejos
e1983f7bcc
Now is possible pipe encrypt & decrypt commands.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-07 22:16:10 +01:00
Pol Henarejos
a5e025a4e5
If no applet is selected, then select it.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-07 21:37:42 +01:00
Pol Henarejos
a7682d2639
Adding Extended Cipher feature.
...
With this new subcommand, Pico HSM will support newer cipher algorithms.
ChaCha20-Poly1305 is the first. It will be based on a custom P2 subcommand to support an arbitrary structure with multiple parameters (AAD, IV, etc.)
pico-hsm-tool.py shall be used.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2022-11-07 21:37:11 +01:00