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
Jochen Hoenicke 698f40f385
BIP-32 without gaps, prepare non-ecdsa curves
8 years ago
gui gui: fixup after ECDSA updates 9 years ago
tools Remove unnecessary #include "secp256k1.h" 9 years ago
.gitignore remove scons dependency, build shared library with Makefile 9 years ago
.travis.yml Adding cmake to travis 8 years ago
AUTHORS import sources 11 years ago
CMakeLists.txt Adding nist256p1 to CMakeLists 8 years ago
CONTRIBUTORS add CONTRIBUTORS file 9 years ago
LICENSE adjust format of LICENSE 8 years ago
MANIFEST.in prepare cython-TrezorCrypto for pip release 10 years ago
Makefile remove scons dependency, build shared library with Makefile 9 years ago
README.md README: add travis badge 9 years ago
TrezorCrypto.pyx whitespace 9 years ago
aes.h rename aes_ctr_counter_inc to aes_ctr_cbuf_inc and move it to aes_modes.c 10 years ago
aes_modes.c rename aes_ctr_counter_inc to aes_ctr_cbuf_inc and move it to aes_modes.c 10 years ago
aescrypt.c update AES code to support different modes of operation, add unittests 10 years ago
aeskey.c update AES code to support different modes of operation, add unittests 10 years ago
aesopt.h don't include aescpp.h 10 years ago
aestab.c update AES code to support different modes of operation, add unittests 10 years ago
aestab.h update AES code to support different modes of operation, add unittests 10 years ago
base58.c cleanup coding style 9 years ago
base58.h Add stdbool.h 9 years ago
bignum.c Fixed uncompress_coords for NIST curve 8 years ago
bignum.h Extended comments, new function bn_add, a bug fix. 9 years ago
bip32.c BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
bip32.h BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
bip39.c implement bip39 cache 8 years ago
bip39.h Off by one error in word length. 9 years ago
bip39_english.h Make word list const 9 years ago
c.pxd prepare cython-TrezorCrypto for pip release 10 years ago
ecdsa.c BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
ecdsa.h BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
hmac.c cleanup coding style 9 years ago
hmac.h fix copyright headers 10 years ago
macros.h cleanup coding style 9 years ago
nist256p1.c BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
nist256p1.h BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
nist256p1.table Add support for NIST256P1 elliptic curve 9 years ago
options.h implement bip39 cache 8 years ago
pbkdf2.c call progress callback at the beginning of pbkdf2 calculation 8 years ago
pbkdf2.h split pbkdf2 into pbkdf2_hmac_sha256 and pbkdf2_hmac_sha512 10 years ago
rand.c fix build on _WIN32 9 years ago
rand.h fix /dev/urandom problem 9 years ago
ripemd160.c change ripemd160 function names to match sha2 functions 8 years ago
ripemd160.h change ripemd160 function names to match sha2 functions 8 years ago
secp256k1.c BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
secp256k1.h BIP-32 without gaps, prepare non-ecdsa curves 8 years ago
secp256k1.table Add support for NIST256P1 elliptic curve 9 years ago
setup.py whitespace 9 years ago
sha2.c Remove unused static variable sha384_initial_hash_value. 9 years ago
sha2.h fix copyright headers 10 years ago
test-openssl.c Add support for NIST256P1 elliptic curve 9 years ago
test.py prepare cython-TrezorCrypto for pip release 10 years ago
test_curves.py bignum: add specific tests for bn_mod() edge cases 9 years ago
tests.c BIP-32 without gaps, prepare non-ecdsa curves 8 years ago

README.md

trezor-crypto

Build Status

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 (supports secp256k1 and nist256p1 curves, 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.