Commit Graph

168 Commits (f607cb25019f0bc18bae281ce294a52810fc5ec5)

Author SHA1 Message Date
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
3 years ago
Rafael Korbas edf9b4ee85 Refactor mnemonic_to_entropy to not (misleadingly) return checksum
3 years ago
Andrew Kozlik b90ce7f2fc test(crypto): Add unit tests for ecdsa_sig_from_der().
3 years ago
Andrew Kozlik 9f6d4ec538 chore(crypto): Implement DER signature parsing.
3 years ago
Pavol Rusnak 78be2c9cac fix(crypto): fix build on clang/arm64
3 years ago
Andrew Kozlik acf7294ca2 test(crypto): Add more unit tests for invalid T9 prefix in SLIP39 word lookup.
3 years ago
Andrew Kozlik 55f3df6b0c chore(crypto): Rework SLIP-39 word lookup.
3 years ago
Andrew Kozlik e3afd984ae test(crypto): Add SLIP39 word completion test.
3 years ago
Andrew Kozlik e615fc6263 chore(crypto): Rename wordlist to slip39_wordlist and add include guards.
3 years ago
Andrew Kozlik 7fc1851279 fix(crypto): Improve naming and robustness of SLIP39's T9 mask lookup.
3 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
Andrew Kozlik 3843f917e9 crypto: Check for invalid characters in Monero Base58 decode.
4 years ago
Andrew Kozlik 20dd1ddc60 crypto: Fix buffer overflow in b58tobin.
4 years ago
Ondřej Vejpustek 4504469e80 crypto: add tests for chacha_drbg
4 years ago
Ondřej Vejpustek d5bfe6b32f crypto: add chacha_drbg
4 years ago
Pavol Rusnak ff706eb70b
crypto: split hdnode_deserialize into hdnode_deserialize_{public,private}
4 years ago
Pavol Rusnak b5446bd125
crypto: fix last commit
4 years ago
Pavol Rusnak 1859b5b588
crypto: update bip39bruteforce.c to segwit-in-p2sh
4 years ago
Ondřej Vejpustek e7a81560f1
crypto: derive public key in hdnode_sign only for supported ed25519 curves
4 years ago
Pavol Rusnak 76eefd026f
all: let's use -Wno-missing-braces because clang does not respect
5 years ago
Ondřej Vejpustek 11aa654abc
crypto: explicitly initialize variable length arrays
5 years ago
Ondřej Vejpustek fdad317d8c
crypto: explicitly initialize variables
5 years ago
Pavol Rusnak 8eee90fd9a
crypto: sync base58.c with upstream
5 years ago
Pavol Rusnak 78041d261b
crypto: refactor bip39 api
5 years ago
Pavol Rusnak b3c58e4a17
git subrepo pull crypto
5 years ago
Pavol Rusnak db86092319
crypto: fix valgrind issue with ed25519-donna, clean local variables
5 years ago
Marius Kjærstad 1d6ea33ec6 docs: switch http to https in links (#419)
5 years ago
Andrew Kozlik 217c910b4b cardano: Implement SLIP-0023 and add SLIP-0039 support for Cardano.
5 years ago
Tomas Susanka 49d6a35249 core: add slip39 keyboard
5 years ago
Pavol Rusnak 54d348228f
all: rename TREZOR to Trezor where possible
5 years ago
Andrew Kozlik 013929de0b crypto/hmac_drbg: Fix buffer overflow.
5 years ago
Andrew Kozlik d95756ccf3 crypto/hmac_drbg: Fix style.
5 years ago
Andrew Kozlik 1d9e125fd4 crypto/rfc6979: Use the new HMAC DRBG implementation in rfc6979.c. Remove code duplication between rfc6979.c and ecdsa.c.
5 years ago
Andrew Kozlik b915092a44 crypto/hmac_drbg: Add nonce parameter to hmac_drbg_init().
5 years ago
Andrew Kozlik 7c44340c40 crypto: Add HMAC deterministic random bit generator and unit tests.
5 years ago
Pavol Rusnak f7053d96fe
all: remove extraneous whitespace
5 years ago
Pavol Rusnak cc2acb2e67
Revert "crypto: add support for schnorr signatures"
5 years ago
matejcik 9b168daa19 style: improve makefile output, format test files
5 years ago
Andrew Kozlik 025974a97d crypto/shamir: Memzero stack variables even in performace critical functions.
5 years ago