You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Pavol Rusnak c58d4e03c5
add proof of concept bip39 bruteforce benchmark
9 years ago
gui
tools add proof of concept bip39 bruteforce benchmark 9 years ago
.gitignore
AUTHORS
CMakeLists.txt
LICENSE
MANIFEST.in
Makefile remove all references to USE_PUBKEY_VALIDATE 10 years ago
README.md
TrezorCrypto.pyx
aes.h
aes_modes.c
aescrypt.c
aeskey.c
aesopt.h
aestab.c
aestab.h
base58.c cleanup coding style 10 years ago
base58.h
bignum.c cleanup coding style 10 years ago
bignum.h Refactored code for point doubling. 10 years ago
bip32.c cleanup coding style 10 years ago
bip32.h
bip39.c Off by one error in word length. 10 years ago
bip39.h Off by one error in word length. 10 years ago
bip39_english.h Make word list const 10 years ago
c.pxd
ecdsa.c cleanup coding style 10 years ago
ecdsa.h
hmac.c cleanup coding style 10 years ago
hmac.h
macros.h cleanup coding style 10 years ago
options.h Optimized the bn_inverse method. 10 years ago
pbkdf2.c cleanup coding style 10 years ago
pbkdf2.h
rand.c fix /dev/urandom problem 10 years ago
rand.h fix /dev/urandom problem 10 years ago
ripemd160.c
ripemd160.h
secp256k1.c "More" constant time point multiplication 10 years ago
secp256k1.h "More" constant time point multiplication 10 years ago
setup.py remove all references to USE_PUBKEY_VALIDATE 10 years ago
sha2.c
sha2.h
test-openssl.c fix /dev/urandom problem 10 years ago
test.py
tests.c fix /dev/urandom problem 10 years ago

README.md

trezor-crypto

Heavily optimized cryptography algorithms for embedded devices.

These include:

  • AES/Rijndael encryption/decryption
  • Big Number (256 bit) Arithmetics
  • BIP32 Hierarchical Deterministic Wallets
  • BIP39 Mnemonic code
  • ECDSA signing/verifying (only hardcoded secp256k1 curve, uses RFC6979 for deterministic signatures)
  • ECDSA public key derivation + Base58 address representation
  • HMAC-SHA256 and HMAC-SHA512
  • PBKDF2
  • RIPEMD-160
  • SHA256/SHA512
  • unit tests (using Check - check.sf.net; in tests.c)
  • tests against OpenSSL (in test-openssl.c)

Distibuted under MIT License.