1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-25 15:58:08 +00:00
Commit Graph

244 Commits

Author SHA1 Message Date
Ondřej Vejpustek
a12a81a321 feat(crypto): introduce ecdsa_tweak_public_key
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
a5fd5e179f refactor(crypto): use goto cleanup
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
3994c654e9 refactor(crypto): extract get_public_key_length
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
d00002ee69 refactor(crypto): use secp256k1 submodule in bip32
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
54eef8d886 refactor(crypto,core,lagacy): use secp256k1 submodule for ECDH
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
df2545b78e chore(crypto,core,legacy): reduce size of precomputed table used by secp256k1 submodule
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
20453f6c99 chore(crypto): do not use precomputed tables by native implementation of ECC
[no changelog]
2024-08-23 17:00:52 +02:00
Ondřej Vejpustek
eef4319cda chore(crypto,legacy,core): add comments about prefixes
[no changelog]
2024-08-21 17:19:24 +02:00
Ondřej Vejpustek
3da9c6bbb9 fix(crypto): forbid public key derivation for curve25519, ed25519 and
cardano

[no changelog]
2024-08-21 17:19:24 +02:00
Ondřej Vejpustek
59a005bf99 refactor(crypto): change ed25519 and curve25519 public key prefix
[no changelog]
2024-08-21 17:19:24 +02:00
Ondřej Vejpustek
ba1a680bac tests(crypto): add bip32 curve25519 tests
[no changelog]
2024-08-21 17:19:24 +02:00
Ondřej Vejpustek
865ca5f0a9 fix(crypto): fix fingerprints for curve25519 and ed25519 2024-08-21 17:19:24 +02:00
Ondřej Vejpustek
5912c1e820 refactor(crypto): use boolean to indicate public key is set
[no changelog]
2024-08-21 17:19:24 +02:00
Andrew Kozlik
13de099bc1 refactor(core): Improve parameter naming in ed25519_sign_ext().
[no changelog]
2024-07-31 13:34:34 +02:00
Ondřej Vejpustek
bfbb6f8685 chore(crypto): initialize automatic variables to zero 2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
18f7820d47 style: fix style according to new clang
[no changelog]
2024-05-10 20:06:28 +02:00
Ondřej Vejpustek
68114fa43d test(crypto): add elligator2 tests 2024-05-10 20:05:37 +02:00
Ondřej Vejpustek
88a9574e57 feat(crypto): implement elligator2 2024-05-10 20:05:37 +02:00
Ondřej Vejpustek
db3b7563b2 fix(crypto): imporve handling of return value 2024-04-19 15:51:33 +02:00
Ondřej Vejpustek
057b927e99 refactor(crypto): explicitly ignore return value 2024-04-19 15:51:33 +02:00
Ondřej Vejpustek
80029823be refactor(crypto): remove unnecessary if 2024-04-19 15:51:33 +02:00
Pavol Rusnak
caa3c035e7 build(deps): drop curve25519-donna and ed25519 from deps
[no changelog]
2024-04-17 15:40:39 +02:00
Andrew Kozlik
1e53a84cfc chore(crypto): Zero-initialize stack variables in AES code. 2024-04-03 10:26:46 +02:00
Andrew Kozlik
f1b5617652 test(crypto): Add AES-GCM tests. 2024-04-03 10:26:46 +02:00
Andrew Kozlik
a3adf98e47 feat(crypto): Integrate AES GCM into trezor-crypto. 2024-04-03 10:26:46 +02:00
Andrew Kozlik
6e207215e3 feat(crypto): Add Brian Gladman's implementation of GCM. 2024-04-03 10:26:46 +02:00
matejcik
ff26113083 fix(crypto): add missing header for size_t 2024-02-12 14:49:32 +01:00
Andrew Kozlik
8de2d8989d feat(core/prodtest): Check device certificate chain integrity using authority key identifier.
[no changelog]
2023-12-15 11:18:22 +01:00
Andrew Kozlik
cbea765e38 feat(core/prodtest): Verify device certificate chain in CERTDEV WRITE.
[no changelog]
2023-12-08 12:30:28 +01:00
Andrew Kozlik
41c305f6cd feat(crypto): Use entire DER encoding in DER_ITEM. 2023-12-08 12:30:28 +01:00
Andrew Kozlik
8e8f1afa85 feat(crypto): Use strict DER-decoding in ecdsa_sig_from_der(). 2023-12-08 12:30:28 +01:00
Andrew Kozlik
f4b1b8a76a test(crypto): Test DER encoding. 2023-12-01 00:09:17 +01:00
Andrew Kozlik
d670a0bdfa feat(core): Fix malformed signatures from Optiga. 2023-12-01 00:09:17 +01:00
Andrew Kozlik
388e925de8 feat(crypto): Add basic DER decoding functions. 2023-12-01 00:09:17 +01:00
Andrew Kozlik
dee559f4f9 feat(core): Integrate Optiga into PIN verification. 2023-09-27 17:17:09 +02:00
Ondřej Vejpustek
4ecd4cc323 feat(crypto): implement hashing to curve 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
72acf9d285 fix(crypto): fix assertion 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
4a686d9231 feat(crypto): introduce bn_read_be_512 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
93bb4c2e35 feat(crypto): introduce bn_reduce and bn_copy_lower 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
2b00c72094 refactor(crypto): introduce bignum512 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
3a2bdf16dd feat(crypto): implement Legendre symbol 2023-09-27 14:04:45 +02:00
Ondřej Vejpustek
5a9d399012 test(crypto): use P-256 prime in test_bignum.py 2023-09-27 14:04:45 +02:00
Andrew Kozlik
2b97a5bac0 test(crypto): Add SHA-384 test vectors. 2023-08-29 10:59:34 +02:00
Andrew Kozlik
91ef616b56 feat(crypto): Implement sha384_Raw(). 2023-08-29 10:59:34 +02:00
Andrew Kozlik
b8adcf35fe test(crypto): Add test vectors for TLS PRF with SHA-256. 2023-08-29 10:59:34 +02:00
Andrew Kozlik
9949f0d88a feat(crypto): Implement TLS PRF with SHA-256. 2023-08-29 10:59:34 +02:00
Andrew Kozlik
f540bab5b8 test(crypto): Add AES-CCM test vectors. 2023-08-29 10:59:34 +02:00
Andrew Kozlik
4accf76954 feat(crypto): Implement AES-CCM. 2023-08-29 10:59:34 +02:00
Andrew Kozlik
c3f6e8f19f feat(crypto): Support is_canonical parameter in zkp_ecdsa_sign_digest(). 2023-06-21 08:36:20 +02:00
Andrew Kozlik
21f4aec8de refactor: Unify secp256k1_zkp usage.
[no changelog]
2023-06-21 08:36:20 +02:00