Commit Graph

196 Commits (core/bl2.1.2)

Author SHA1 Message Date
Christian Reitter 47a05720aa docs(crypto): update fuzzer documentation
2 years ago
Christian Reitter 18192e8eb2 feat(crypto): small fuzzer improvements
2 years ago
Christian Reitter 052a860afc feat(crypto): fuzz mnemonic_from_data()
2 years ago
Christian Reitter 5564251920 feat(crypto): improve fuzzer secp256k1-zkp integration, add build workaround and sanitizer optimization, minor renaming
2 years ago
Christian Reitter aee864c7ee feat(crypto): improve fuzz testing code, documentation
2 years ago
Pavol Rusnak d2044d29b6
fix(crypto): add missing license to crypto/chacha20poly1305
2 years ago
matejcik 2ce1e6ba7d feat(crypto): API for clearing internal caches
2 years ago
Ondřej Vejpustek 146c1fe721 test(crypto): add tests for zkp_bip340_verify_publickey
2 years ago
Pavol Rusnak ea6b005003 feat(legacy): verify bip340 pubkeys used in p2tr addresses
2 years ago
Ondřej Vejpustek 27d5bf1573 revert(crypto): remove BCH Schnorr signatures
2 years ago
Andrew Kozlik d6fdadf673 feat(crypto): Sanitize undefined behavior.
2 years ago
Andrew Kozlik 56126b75a7 ci: Use address sanitizer in CI.
2 years ago
Pavol Rusnak 2880a2fa33
fix(crypto): refactor ethereum_address_checksum to prepend "0x" (#2029)
2 years ago
Andrew Kozlik 8baf1ca79f fix(crypto): Fix out of bounds read in ecdsa_sig_to_der().
2 years ago
Christian Reitter 525bbab165 tests(crypto): update wycheproof testcase source and parsing
3 years ago
Christian Reitter 176b12762f fix(crypto): fix expected_sig buffer handling
3 years ago
Christian Reitter 64281c69ce fix(crypto): fix incorrect sig buffer size
3 years ago
Andrew Kozlik 4882648dad fix(crypto): Treat point at infinity as an invalid public key in ecdsa_recover_pub_from_sig().
3 years ago
Pavol Rusnak c0510fc91e
build(crypto): make valgrind flag compatible with secp256k1-zkp (#2027)
3 years ago
Christian Reitter d1d3558d02 fix(crypto): revert to bitwise OR operator and silence warning
3 years ago
Christian Reitter 0c482173ab fix(crypto): use logical instead of bitwise operator
3 years ago
Martin Milata cace42c6e9 fix(crypto/test): fix uninitialized variable use
3 years ago
Christian Reitter 91dd21b561 fix(crypto): clarify incorrect base58.c code comment
3 years ago
Ondřej Vejpustek a4e13cb6e4 fix(crypto): assign NULL to zkp_context after is is destroyed
3 years ago
Ondřej Vejpustek f1ebe8f23e refactor(crypto): expose zkp_context_is_initialized
3 years ago
Pavol Rusnak 7cd27cf1d6 fix(crypto): fix wrong input handling in mktable
3 years ago
Andrew Kozlik 1f4573905f feat(crypto): Add TapSigHash to Hasher.
3 years ago
Ondřej Vejpustek 2e4884199b build(crypto): build secp256k1-zkp with flags needed by sanitizers
3 years ago
Ondřej Vejpustek 71b12a2a71 refactor(crypto): make secp256k1_context_writable_randomize() return status
3 years ago
Ondřej Vejpustek ad38d8e324 refactor(crypto,core): make zkp_context_init() return status
3 years ago
Ondřej Vejpustek ec808050ba refactor(crypto): return error from ecdsa routines on unexpected curve
3 years ago
Ondřej Vejpustek 3612620268 build(crypto,core): make secp256k1-zkp context as small as possible
3 years ago
Andrew Kozlik 85ff3682c9 test(crypto): Add BIP-341 test vectors.
3 years ago
Andrew Kozlik 3f5c11a919 test(crypto): Add unit test for BIP340 tweak.
3 years ago
Andrew Kozlik 4a6bd14993 feat(crypto): Add key tweaking functions to zkp_bip340.c.
3 years ago
matejcik ea0dcff548 feat(crypto): support all bip39 lengths in mnemonic_to_bits
3 years ago
matejcik 80e4b27f09 feat(crypto/cardano): implement Cardano Ledger derivation
3 years ago
matejcik 1174648777 refactor(crypto): extract Cardano derivations to separate file
3 years ago
Ondřej Vejpustek f96e737ef5 fix(crypto): fix undefined behaviour of IS_ALIGNED_64 macro
3 years ago
2128675309 684e0c886d feat(crypto): add big endian support
3 years ago
Andrew Kozlik eb90efd914 chore(crypto,core,legacy): Add return code to hdnode_fill_public_key().
3 years ago
Andrew Kozlik 307d166383 fix(crypto): Clean up stack in ed25519.c.
3 years ago
Andrew Kozlik 34621a6b6d fix(crypto,core,legacy): Check private key validity when deriving public key.
3 years ago
Andrew Kozlik 5d03110a42 fix(crypto): Treat edge cases in ecdsa_sign_digest() same as ecdsa_verify_digest() does.
3 years ago
Ondřej Vejpustek 05ae15bcb6 build(crypto): use precomputed context for secp256k1-zkp
3 years ago
Ondřej Vejpustek dbfc7d241f chore(vendor,crypto): bump version of secp256k1-zkp
3 years ago
Ondřej Vejpustek 4026987353 refactor(crypto): remove useless variable in zkp_context.c
3 years ago
Ondřej Vejpustek 273d6d14cc refactor(crypto): propagate error from zkp_context_acquire_writable()
3 years ago
Ondřej Vejpustek 29ce860d46 refactor(core,crypto): rename schnorr to BIP340
3 years ago
Ondřej Vejpustek 15bb085509 refactor(core,crypto): make public key derivation functions return
3 years ago
Ondřej Vejpustek 61143edb4d test(crypto): add tests for Schnorr signatures
3 years ago
Ondřej Vejpustek 1dad7fe7c5 feat(crypto): add wrapers for BIP-340 compatible Schnorr signatures from secp256k1_zkp
3 years ago
Ondřej Vejpustek f2459e335d test(crypto): add tests for get_public_key{33,65}
3 years ago
Ondřej Vejpustek 79153135b7 test(crypto): add ecdsa tests for secp256k1_zkp
3 years ago
Ondřej Vejpustek aca37e5eb2 refactor(crypto): make helper function for ecdsa_recover_pub_from_sig and
3 years ago
Ondřej Vejpustek 3cd2e89fbc refactor(crypto): split test_ecdsa_signature into two tests
3 years ago
Ondřej Vejpustek d2f8f4b021 feat(crypto): add wrappers for ecdsa from secp256k1_zkp
3 years ago
Ondřej Vejpustek 75e61da70b feat(crypto): implement randomizable secp256k1_zkp context
3 years ago
Ondřej Vejpustek 6bee78af19 feat(crypto): compile crypto with secp256k1_zkp
3 years ago
Pavol Rusnak d34b1636ee feat(crypto): add BIP-350 test cases to test_check_segwit
3 years ago
Pavol Rusnak 86ea94d06b fix(crypto): remove 3 BIP-173 test cases from segwit_addr
3 years ago
Pavol Rusnak 60bd59fbad feat(crypto): update segwit_addr to support Bech32m
3 years ago
arbitrarylink f051225730 feat(core,legacy): add support for Ethereum 64-bit chain_id
3 years ago
Ondřej Vejpustek 4827969cc8 fix(crypto): unify function headers in sha2.c and sha2.h
3 years ago
Ondřej Vejpustek 10bc747dc6 fix(crypto): fix argument type of ed25519_hram()
3 years ago
Christian Reitter ba8eb408ea crypto: new iteration of fuzz testing code, improved dictionary script, minor documentation changes
3 years ago
Christian Reitter 78f879aaf1 crypto: improve fuzz testing code, harnesses, documentation and scripts
3 years ago
Andrew Kozlik c1843f9f9f style(legacy): Remove nested conditional operators.
3 years ago
Pavol Rusnak f740515c85 fix(core,crypto): add more test cases from bip-173
3 years ago
Andrew Kozlik ce18f4bc8a test(crypto): Add progressive tests for hash functions.
3 years ago
Andrew Kozlik b2cc3bcb36 fix(crypto): Fix incorrect handling of empty input in blake256_Update().
3 years ago
Adam R c4bf522b31
feat(crypto): add extra BIP32 test (test vector #4) (#1646)
3 years ago
Ondřej Vejpustek e1a5f42c81 feat(core): make chacha_drbg more robust
3 years ago
Pavol Rusnak b04d5bd514 fix(crypto): use ck_assert_uint_eq where we compare unsigned values
3 years ago
xloem e821104237
fix(crypto): update case of windows.h (#1560)
3 years ago
Fabien 9ef26c347e Add support for Schnorr crypto (BCH variant)
3 years ago
Pavol Rusnak d6d1cd7b4c style(crypto): cleanup unused functions
3 years ago
Pavol Rusnak 93215ae3c7 style: reformat with clang-format 11
4 years ago
Rafael Korbas edf9b4ee85 Refactor mnemonic_to_entropy to not (misleadingly) return checksum
4 years ago
Andrew Kozlik b90ce7f2fc test(crypto): Add unit tests for ecdsa_sig_from_der().
4 years ago
Andrew Kozlik 9f6d4ec538 chore(crypto): Implement DER signature parsing.
4 years ago
Pavol Rusnak 78be2c9cac fix(crypto): fix build on clang/arm64
4 years ago
Andrew Kozlik acf7294ca2 test(crypto): Add more unit tests for invalid T9 prefix in SLIP39 word lookup.
4 years ago
Andrew Kozlik 55f3df6b0c chore(crypto): Rework SLIP-39 word lookup.
4 years ago
Andrew Kozlik e3afd984ae test(crypto): Add SLIP39 word completion test.
4 years ago
Andrew Kozlik e615fc6263 chore(crypto): Rename wordlist to slip39_wordlist and add include guards.
4 years ago
Andrew Kozlik 7fc1851279 fix(crypto): Improve naming and robustness of SLIP39's T9 mask lookup.
4 years ago
Andrew Kozlik c5f26beeea fix(crypto): Fix undefined behavior in xmr_read_varint().
4 years ago
Andrew Kozlik dab353f888 test(crypto): Test signature verification for a digest which is equal to the group order.
4 years ago
Andrew Kozlik fed59ec770 fix(crypto): In ecdsa_verify_digest() allow the digest to be equal to the order of the group.
4 years ago
Pavol Rusnak 50fdd183c2
ci: enable editorconfig checks, fix whitespace issues
4 years ago
Andrew Kozlik 7ae338bd87 chore(crypto): Improve comments and error handling in ecdsa_verify_digest().
4 years ago
Andrew Kozlik c67ecb984b chore(crypto): Move XPUB_MAXLEN and ADDRESS_MAXLEN from modtrezorcrypto to bip32.h.
4 years ago
Andrew Kozlik 5429acdb7f
crypto: fix undefined behavior in shamir unbitslice (#1219)
4 years ago
Christian Reitter 676ac1571a crypto: add fuzz testing harnesses and documentation
4 years ago
Ondřej Vejpustek 9598d17f10 crypto: make bn_format faster
4 years ago
Ondřej Vejpustek 015c294857 crypto/tests: parametrize test_bn_format
4 years ago
Ondřej Vejpustek e630279487 crypto: fix comment
4 years ago
Ondřej Vejpustek 76849f0bd6 crypto: make ecdsa_recover_pub_from_sig faster
4 years ago
Ondřej Vejpustek 24ceb0ab6b crypto/bignum: change limb size to 29, add tests
4 years ago