matejcik
38a36a131f
chore: rename BIP39_WORDS to BIP39_WORD_COUNT
2022-06-01 16:35:33 +02:00
Ondřej Vejpustek
53d522a1fd
fix(crypto): reduce digest in RFC6979 to match specification
2022-05-16 16:23:18 +02:00
Ondřej Vejpustek
ea5886026f
refactor(crypto,legacy): extend parameters of init_rfc6979 by curve
2022-05-16 16:23:18 +02:00
Dusan Klinec
e69467bc04
chore(crypto): drop support for Monero range proof
2022-05-16 12:37:24 +02:00
Ondřej Vejpustek
146c1fe721
test(crypto): add tests for zkp_bip340_verify_publickey
2022-02-16 10:25:15 +01:00
Ondřej Vejpustek
27d5bf1573
revert(crypto): remove BCH Schnorr signatures
...
This reverts commit 9ef26c347e
.
2022-01-31 13:56:06 +01:00
Pavol Rusnak
2880a2fa33
fix(crypto): refactor ethereum_address_checksum to prepend "0x" ( #2029 )
...
[no changelog]
2022-01-12 21:00:54 +01:00
Andrew Kozlik
8baf1ca79f
fix(crypto): Fix out of bounds read in ecdsa_sig_to_der().
...
[no changelog]
2022-01-11 17:29:53 +01:00
Christian Reitter
176b12762f
fix(crypto): fix expected_sig buffer handling
2022-01-07 14:54:52 +01:00
Christian Reitter
64281c69ce
fix(crypto): fix incorrect sig buffer size
2022-01-07 14:54:52 +01:00
Andrew Kozlik
4882648dad
fix(crypto): Treat point at infinity as an invalid public key in ecdsa_recover_pub_from_sig().
2022-01-07 14:37:40 +01:00
Pavol Rusnak
c0510fc91e
build(crypto): make valgrind flag compatible with secp256k1-zkp ( #2027 )
...
Co-authored-by: Ondřej Vejpustek <ondrej.vejpustek@satoshilabs.com>
2021-12-20 15:19:14 +01:00
Ondřej Vejpustek
ad38d8e324
refactor(crypto,core): make zkp_context_init() return status
2021-11-18 19:05:40 +01:00
Andrew Kozlik
85ff3682c9
test(crypto): Add BIP-341 test vectors.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
3f5c11a919
test(crypto): Add unit test for BIP340 tweak.
2021-11-13 13:33:46 +01:00
matejcik
80e4b27f09
feat(crypto/cardano): implement Cardano Ledger derivation
2021-11-10 13:57:57 +01:00
matejcik
1174648777
refactor(crypto): extract Cardano derivations to separate file
...
Changes the API: all Cardano derivations will now produce a 96-byte
secret in the format of private_key + private_key_ext + chain_code.
This can then be trivially converted to a HDNode.
2021-11-10 13:57:57 +01:00
2128675309
684e0c886d
feat(crypto): add big endian support
2021-11-04 20:38:52 +01:00
Andrew Kozlik
eb90efd914
chore(crypto,core,legacy): Add return code to hdnode_fill_public_key().
...
[no changelog]
2021-11-01 16:39:53 +01:00
Andrew Kozlik
34621a6b6d
fix(crypto,core,legacy): Check private key validity when deriving public key.
...
[no changelog]
2021-11-01 16:39:53 +01:00
Ondřej Vejpustek
29ce860d46
refactor(core,crypto): rename schnorr to BIP340
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
15bb085509
refactor(core,crypto): make public key derivation functions return
...
status
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
61143edb4d
test(crypto): add tests for Schnorr signatures
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
f2459e335d
test(crypto): add tests for get_public_key{33,65}
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
79153135b7
test(crypto): add ecdsa tests for secp256k1_zkp
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
aca37e5eb2
refactor(crypto): make helper function for ecdsa_recover_pub_from_sig and
...
ecdsa_verify_digest
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
3cd2e89fbc
refactor(crypto): split test_ecdsa_signature into two tests
2021-10-25 14:41:28 +02:00
Andrew Kozlik
ce18f4bc8a
test(crypto): Add progressive tests for hash functions.
2021-06-11 20:22:42 +02:00
Adam R
c4bf522b31
feat(crypto): add extra BIP32 test (test vector #4 ) ( #1646 )
2021-06-03 15:37:23 +02:00
Ondřej Vejpustek
e1a5f42c81
feat(core): make chacha_drbg more robust
2021-05-21 13:42:53 +02:00
Pavol Rusnak
b04d5bd514
fix(crypto): use ck_assert_uint_eq where we compare unsigned values
2021-05-13 14:13:56 +02:00
Fabien
9ef26c347e
Add support for Schnorr crypto (BCH variant)
...
Support Schnorr signature and verification defined in
https://github.com/bitcoincashorg/bitcoincash.org/blob/master/spec/2019-05-15-schnorr.md .
The implementation is based on https://github.com/Bitcoin-ABC/secp256k1
as well as the test vectors.
2021-03-09 14:22:56 +01:00
Rafael Korbas
edf9b4ee85
Refactor mnemonic_to_entropy to not (misleadingly) return checksum
2020-12-19 20:17:16 +01:00
Andrew Kozlik
b90ce7f2fc
test(crypto): Add unit tests for ecdsa_sig_from_der().
2020-12-17 16:33:33 +01:00
Andrew Kozlik
acf7294ca2
test(crypto): Add more unit tests for invalid T9 prefix in SLIP39 word lookup.
2020-12-15 13:41:42 +01:00
Andrew Kozlik
55f3df6b0c
chore(crypto): Rework SLIP-39 word lookup.
2020-12-15 13:41:42 +01:00
Andrew Kozlik
e3afd984ae
test(crypto): Add SLIP39 word completion test.
2020-12-15 13:41:42 +01:00
Andrew Kozlik
7fc1851279
fix(crypto): Improve naming and robustness of SLIP39's T9 mask lookup.
2020-12-15 13:41:42 +01:00
Andrew Kozlik
dab353f888
test(crypto): Test signature verification for a digest which is equal to the group order.
2020-12-02 17:11:29 +01:00
Andrew Kozlik
c67ecb984b
chore(crypto): Move XPUB_MAXLEN and ADDRESS_MAXLEN from modtrezorcrypto to bip32.h.
2020-10-13 13:13:49 +02:00
Ondřej Vejpustek
24ceb0ab6b
crypto/bignum: change limb size to 29, add tests
2020-05-24 14:36:38 +00:00
Ondřej Vejpustek
4504469e80
crypto: add tests for chacha_drbg
2020-04-16 11:51:28 +02:00
Pavol Rusnak
ff706eb70b
crypto: split hdnode_deserialize into hdnode_deserialize_{public,private}
2020-04-06 16:28:02 +00:00
Pavol Rusnak
78041d261b
crypto: refactor bip39 api
2019-09-23 17:56:36 +02:00
Tomas Susanka
49d6a35249
core: add slip39 keyboard
2019-06-23 21:33:58 +02:00
Andrew Kozlik
013929de0b
crypto/hmac_drbg: Fix buffer overflow.
2019-06-11 11:41:40 +02:00
Andrew Kozlik
d95756ccf3
crypto/hmac_drbg: Fix style.
2019-06-11 11:41:40 +02:00
Andrew Kozlik
b915092a44
crypto/hmac_drbg: Add nonce parameter to hmac_drbg_init().
2019-06-11 11:41:40 +02:00
Andrew Kozlik
7c44340c40
crypto: Add HMAC deterministic random bit generator and unit tests.
2019-06-11 11:41:40 +02:00
Pavol Rusnak
cc2acb2e67
Revert "crypto: add support for schnorr signatures"
...
This reverts commit 8114e0f9fc
.
2019-05-23 20:15:30 +02:00