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 e827517591
add mnemonic_check function
11 years ago
.gitignore
AUTHORS
CMakeLists.txt add cmake file with c++ compilation on MSVC 11 years ago
LICENSE
Makefile use -Wextra 11 years ago
README use PBKDF2 for BIP39, add unit tests 11 years ago
aes.h use fixed block size (128-bit) for AES again 11 years ago
aescrypt.c replace blowfish with rijndael 11 years ago
aeskey.c replace blowfish with rijndael 11 years ago
aesopt.h replace blowfish with rijndael 11 years ago
aestab.c replace blowfish with rijndael 11 years ago
bignum.c llu -> ull for MSVC compatibility 11 years ago
bignum.h introduce ecdsa_address_to_hash160 11 years ago
bip32.c remove version_byte and address from bip32 11 years ago
bip32.h remove version_byte and address from bip32 11 years ago
bip39.c add mnemonic_check function 11 years ago
bip39.h add progress_callback to mnemonic/pbkdf2 functions 11 years ago
bip39_english.h bip39 implementation with unit tests 11 years ago
ecdsa.c extract ecdsa_get_pubkeyhash 11 years ago
ecdsa.h extract ecdsa_get_pubkeyhash 11 years ago
hmac.c replace SHA256/SHA512 prefix with sha256/sha512 (OpenSSL clash) 11 years ago
hmac.h
pbkdf2.c add progress_callback to mnemonic/pbkdf2 functions 11 years ago
pbkdf2.h add progress_callback to mnemonic/pbkdf2 functions 11 years ago
rand.c add mnemonic_check function 11 years ago
rand.h add mnemonic_check function 11 years ago
ripemd160.c
ripemd160.h
secp256k1.c remove field name struct init for MSVC compatibility 11 years ago
secp256k1.h
sha2.c fix prefixes in internal functions as well 11 years ago
sha2.h replace SHA256/SHA512 prefix with sha256/sha512 (OpenSSL clash) 11 years ago
test-openssl.c renamed to trezor-crypto, modified readme 11 years ago
tests.c add mnemonic_check function 11 years ago

README

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.