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 3d04064384
don't skip const if not using gcc
7 years ago
ed25519-donna don't skip const if not using gcc 7 years ago
emscripten update emscripten stuff 7 years ago
gui add changes to cmake/qmake builds 7 years ago
tools bip32: deserialize the fingerprint 8 years ago
.gitignore gitignore: ignore *.d files 8 years ago
.travis.yml build: switch to gcc-5 (in travis) 7 years ago
AUTHORS import sources 11 years ago
CMakeLists.txt add changes to cmake/qmake builds 7 years ago
CONTRIBUTORS bignum: introduce read/write_le 8 years ago
LICENSE adjust format of LICENSE 8 years ago
Makefile build: switch to gcc-5 (in travis) 7 years ago
README.md fix typo in readme 7 years ago
address.c add address related funnctions 8 years ago
address.h add address related funnctions 8 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 Steem integration 8 years ago
base58.h include options.h to base58.h 8 years ago
bignum.c add setbit, clearbit, testbit and xor to bignum 8 years ago
bignum.h add setbit, clearbit, testbit and xor to bignum 8 years ago
bip32.c Refactored duplicated code (#84) 7 years ago
bip32.h Refactored duplicated code (#84) 7 years ago
bip39.c Smoother progress bar for wakeup 8 years ago
bip39.h add mnemonic generation methods with indexes option 8 years ago
bip39_english.h Make word list const 9 years ago
blake2_common.h add Blake2b 7 years ago
blake2b.c add Blake2b 7 years ago
blake2b.h use BLOCK_LENGTH and DIGEST_LENGTH across all hash functions 7 years ago
blake2s.c add Blake2b 7 years ago
blake2s.h use BLOCK_LENGTH and DIGEST_LENGTH across all hash functions 7 years ago
check_mem.h extract ck_assert_mem macros to separate file check_mem.h 8 years ago
curves.c Implement ECDH with Curve25519 at BIP32 module 8 years ago
curves.h Implement ECDH with Curve25519 at BIP32 module 8 years ago
ecdsa.c ecdsa: rand -> rnd 7 years ago
ecdsa.h ecdsa: rand -> rnd 7 years ago
hmac.c Faster PBKDF2 by reusing intermediate results. 8 years ago
hmac.h Faster PBKDF2 by reusing intermediate results. 8 years ago
macros.h cleanup coding style 9 years ago
nist256p1.c ed25519 support 8 years ago
nist256p1.h ed25519 support 8 years ago
nist256p1.table Add support for NIST256P1 elliptic curve 9 years ago
options.h Steem integration 8 years ago
pbkdf2.c Faster PBKDF2 by reusing intermediate results. 8 years ago
pbkdf2.h Faster PBKDF2 by reusing intermediate results. 8 years ago
rand.c fix build on _WIN32 9 years ago
rand.h fix /dev/urandom problem 9 years ago
ripemd160.c extract block size and digest size as macros in ripemd160 8 years ago
ripemd160.h extract block size and digest size as macros in ripemd160 8 years ago
script.c add script parsing functions 8 years ago
script.h add script parsing functions 8 years ago
secp256k1.c ed25519 support 8 years ago
secp256k1.h ed25519 support 8 years ago
secp256k1.table Add support for NIST256P1 elliptic curve 9 years ago
setup.py Add Python tests for Curve25519 ECDH 8 years ago
sha2.c sha1: fix context zeroing 8 years ago
sha2.h sha2: import SHA1 implementation 8 years ago
sha3.c add blake2s, add unittests for blake2s and sha3 8 years ago
sha3.h use BLOCK_LENGTH and DIGEST_LENGTH across all hash functions 7 years ago
test-openssl.c remove unused macros in test-openssl.c 8 years ago
test_curves.py fix build 7 years ago
test_speed.c Refactored duplicated code (#84) 7 years ago
tests.c ed25519_cosi: small changes to code style 7 years ago

README.md

trezor-crypto

Build Status gitter

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
  • Ed25519 signing/verifying
  • ECDH using secp256k1, nist256p1 and Curve25519
  • HMAC-SHA256 and HMAC-SHA512
  • PBKDF2
  • RIPEMD-160
  • SHA256/SHA512
  • SHA3/Keccak
  • BLAKE2s/BLAKE2b
  • unit tests (using Check - check.sf.net; in tests.c)
  • tests against OpenSSL (in test-openssl.c)

Distibuted under MIT License.