1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-25 07:48:10 +00:00
Commit Graph

237 Commits

Author SHA1 Message Date
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
grdddj
8ee4c41938 chore(crypto): refactor slip39 same way as bip39 2023-05-11 21:02:21 +02:00
Martin Milata
56491a0530 test(crypto): use newer OpenSSL API
[no changelog]
2023-04-19 13:05:03 +02:00
Ondrej Mikle
4d0381055c fix(crypto): adapt to changing insecure PRNG to be opt-in 2023-03-22 10:21:21 +01:00
Ondrej Mikle
a5f7c19f7e fix(core/bootloader): do not use insecure LCG PRNG. Change insecure PRNG to be opt-in, not opt-out 2023-03-22 10:21:21 +01:00
Christian Reitter
e2416bcec2 feat(crypto): improve return code handling, clean up the code and extend documentation 2023-03-02 17:27:33 +01:00
Andrew Kozlik
d815a7d6de chore(core): Use C implementation of Bech32 decode. 2022-10-17 15:20:46 +02:00
Christian Reitter
cd32a4f50e feat(crypto): correct formatting 2022-10-04 16:46:33 +02:00