Commit Graph

1337 Commits

Author SHA1 Message Date
NIIBE Yutaka
98ac78624d Remove old test/ directory which used nose.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-12 14:35:43 +09:00
NIIBE Yutaka
ccfcd43273 tests: KDF required.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-11 13:26:31 +09:00
NIIBE Yutaka
8f89d5d3b5 Use picolibc (instead of newlib).
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-07 16:06:22 +09:00
NIIBE Yutaka
2a71124224 Fix FT0, FT1, FT2 tables of AES.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-07 15:38:39 +09:00
NIIBE Yutaka
b4a9ac95e7 Revert "Reject resetting code after admin-less mode setup."
This reverts commit af75bea08f.
2022-07-07 14:51:48 +09:00
NIIBE Yutaka
d941201461 Update Chopstx.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-07 14:51:00 +09:00
NIIBE Yutaka
67b9af936f Fix the previous commit.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-07-06 15:09:44 +09:00
NIIBE Yutaka
3dfc9d0fe3 configure: When no kdf_do variable, default is "required".
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-29 16:52:10 +09:00
NIIBE Yutaka
af75bea08f Reject resetting code after admin-less mode setup.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-29 10:53:16 +09:00
NIIBE Yutaka
4792c18287 Update AUTHORS and delete p256r1 implementation.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-28 21:11:43 +09:00
NIIBE Yutaka
2d8a305927 Differentiate counter.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-28 20:55:20 +09:00
NIIBE Yutaka
c110ec5001 Remove DO definition for internal NR_DO_PRVKEY_*.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-28 19:53:59 +09:00
NIIBE Yutaka
bce2bed27c Use key store to record DEKs.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-28 16:10:29 +09:00
NIIBE Yutaka
cc5c0433a1 Fix DEK in key store.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-28 15:01:10 +09:00
NIIBE Yutaka
8061ffbf13 Move DEK from DO to key store.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-27 20:35:25 +09:00
NIIBE Yutaka
3e11f948d7 Fix for the case where private key size is odd.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-20 17:58:00 +09:00
NIIBE Yutaka
cd2a58ff68 Fix key size (exact value), since key store is changed.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 20:33:10 +09:00
NIIBE Yutaka
c2fc45bf58 Add test program.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 20:28:25 +09:00
NIIBE Yutaka
52193bff0b Fix POLYVAL.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 19:03:02 +09:00
NIIBE Yutaka
0569a0998c Update Copyright notice to be displayed.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 16:16:43 +09:00
NIIBE Yutaka
8d6ab1513b More on GCM-SIV.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 16:16:15 +09:00
NIIBE Yutaka
7715b37d7c Clean up key on flash memory.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 15:55:03 +09:00
NIIBE Yutaka
61c61b647e Clean up GCM-SIV.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 15:54:39 +09:00
NIIBE Yutaka
4d50cb7057 Move nonce of key from data object to key store.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 14:30:29 +09:00
NIIBE Yutaka
9316a13880 Move tag of key from data object to key store.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 14:09:11 +09:00
NIIBE Yutaka
c73b443338 Add additional data to GCM-SIV API.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 13:27:50 +09:00
NIIBE Yutaka
d41e86c7e2 More API change for GCM-SIV.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 12:03:00 +09:00
NIIBE Yutaka
f4ddb7074c Move AES-GCM-SIV functions to gcm-siv.c.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 11:53:45 +09:00
NIIBE Yutaka
cf557180c4 Change the key storage usage.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 11:02:50 +09:00
NIIBE Yutaka
5acdf63023 Fix AES-GCM-SIV usage.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 10:27:32 +09:00
NIIBE Yutaka
cca439c1ff Add gpg_get_algo_key_size.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-17 09:36:43 +09:00
NIIBE Yutaka
8039668258 More GCM-SIV change.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 13:15:09 +09:00
NIIBE Yutaka
af129fc848 Fix X448 key size. For GPG_KEY_STORAGE, it should be rounded up.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 11:45:15 +09:00
NIIBE Yutaka
4b1aadda0c We use GCM-SIV construction to encrypt key material.
For now, we use no additional data.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 11:41:10 +09:00
NIIBE Yutaka
f8f1b42aed Fix terminology and encryption of DEK.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 10:30:47 +09:00
NIIBE Yutaka
c895d35caf Fix AES CTR mode.
There are multiple definitions of "counter mode".  It was my mistake
to just use PolarSSL API, which is big endian integer counter mode.
Now, it's AES_CTR described in RFC 8452.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 10:01:01 +09:00
NIIBE Yutaka
7b24f78aa7 encrypted key on flash: Synthetic IV generation.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-09 06:51:59 +09:00
NIIBE Yutaka
1f8632d559 Modify internal API of compute_key_data_checksum.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 20:17:04 +09:00
NIIBE Yutaka
82571226fd Add GCM-SIV implementation (only POLYVAL, now).
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 16:41:51 +09:00
NIIBE Yutaka
c68236e4c3 Update copyright notice.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 16:22:42 +09:00
NIIBE Yutaka
81301d4bbd Remove experimental pinpad support and hid card-change support.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 16:20:05 +09:00
NIIBE Yutaka
e54b7db555 Update NEWS and README.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 16:01:16 +09:00
NIIBE Yutaka
4ff8a1489d Remove code from PolarSSL.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 15:51:09 +09:00
NIIBE Yutaka
16d0664096 Add counter mode and adjust for use.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 15:49:40 +09:00
NIIBE Yutaka
12473d8d4f Add an AES 256 implementation.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 15:22:04 +09:00
NIIBE Yutaka
e26445c687 tests: Determine by Gnuk or not.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-08 15:04:44 +09:00
NIIBE Yutaka
5c4322aaa9 Move checksum to encrypt, decrypt functions.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-07 21:01:41 +09:00
NIIBE Yutaka
99c6cb3425 Use 256-bit key and CTR mode for encryption/decryption.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-07 21:01:32 +09:00
NIIBE Yutaka
b321a2611c tests: Fix selecting keys (For Gnuk, use 25519).
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-06-07 11:42:45 +09:00
NIIBE Yutaka
3c715bb580 Fix test to default use of Ed25519 and no use of RSA for Gnuk.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2022-05-20 20:06:42 +09:00