1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-18 04:18:10 +00:00
Go to file
Pavol Rusnak cd24b2771c Merge pull request #54 from jhoenicke/multicurve
Test vectors for ed25519 + BIP-0032 / SLIP-0010
2016-04-25 13:47:20 +02:00
ed25519-donna ed25519 support 2016-04-22 18:21:58 +02:00
gui gui: fixup after ECDSA updates 2015-07-07 10:58:08 +03:00
tools Remove unnecessary #include "secp256k1.h" 2015-07-07 10:39:12 +03:00
.gitignore remove scons dependency, build shared library with Makefile 2015-08-05 16:16:24 +02:00
.travis.yml Adding cmake to travis 2016-01-26 22:32:41 +01:00
aes_modes.c rename aes_ctr_counter_inc to aes_ctr_cbuf_inc and move it to aes_modes.c 2014-06-07 14:16:27 +02:00
aes.h rename aes_ctr_counter_inc to aes_ctr_cbuf_inc and move it to aes_modes.c 2014-06-07 14:16:27 +02:00
aescrypt.c update AES code to support different modes of operation, add unittests 2014-06-07 13:38:56 +02:00
aeskey.c update AES code to support different modes of operation, add unittests 2014-06-07 13:38:56 +02:00
aesopt.h don't include aescpp.h 2014-07-24 15:26:50 +02:00
aestab.c update AES code to support different modes of operation, add unittests 2014-06-07 13:38:56 +02:00
aestab.h update AES code to support different modes of operation, add unittests 2014-06-07 13:38:56 +02:00
AUTHORS import sources 2013-08-17 14:20:15 +02:00
base58.c cleanup coding style 2015-04-13 18:19:33 +02:00
base58.h Add stdbool.h 2015-01-23 12:12:40 -08:00
bignum.c Fixed uncompress_coords for NIST curve 2016-04-20 15:09:11 +02:00
bignum.h Extended comments, new function bn_add, a bug fix. 2015-08-06 19:09:23 +02:00
bip32.c ed25519 support 2016-04-22 18:21:58 +02:00
bip32.h ed25519 support 2016-04-22 18:21:58 +02:00
bip39_english.h Make word list const 2015-02-14 12:00:44 +01:00
bip39.c implement bip39 cache 2016-01-19 15:11:57 +01:00
bip39.h Off by one error in word length. 2015-03-20 21:46:32 +01:00
c.pxd prepare cython-TrezorCrypto for pip release 2015-01-12 19:11:43 +01:00
CMakeLists.txt Adding nist256p1 to CMakeLists 2016-01-26 20:07:45 +01:00
CONTRIBUTORS add CONTRIBUTORS file 2015-07-29 16:38:45 +02:00
curves.c ed25519 support 2016-04-22 18:21:58 +02:00
curves.h ed25519 support 2016-04-22 18:21:58 +02:00
ecdsa.c BIP-32 without gaps, prepare non-ecdsa curves 2016-04-22 17:43:15 +02:00
ecdsa.h BIP-32 without gaps, prepare non-ecdsa curves 2016-04-22 17:43:15 +02:00
hmac.c cleanup coding style 2015-04-13 18:19:33 +02:00
hmac.h fix copyright headers 2014-05-22 20:54:58 +02:00
LICENSE adjust format of LICENSE 2016-01-31 12:16:31 +01:00
macros.h cleanup coding style 2015-04-13 18:19:33 +02:00
Makefile ed25519 support 2016-04-22 18:21:58 +02:00
MANIFEST.in prepare cython-TrezorCrypto for pip release 2015-01-12 19:11:43 +01:00
nist256p1.c ed25519 support 2016-04-22 18:21:58 +02:00
nist256p1.h ed25519 support 2016-04-22 18:21:58 +02:00
nist256p1.table Add support for NIST256P1 elliptic curve 2015-06-26 10:33:14 +03:00
options.h implement bip39 cache 2016-01-19 15:11:57 +01:00
pbkdf2.c call progress callback at the beginning of pbkdf2 calculation 2016-01-19 15:34:31 +01:00
pbkdf2.h split pbkdf2 into pbkdf2_hmac_sha256 and pbkdf2_hmac_sha512 2014-10-30 01:35:13 +01:00
rand.c fix build on _WIN32 2015-12-14 22:50:28 +01:00
rand.h fix /dev/urandom problem 2015-05-04 19:53:06 +02:00
README.md README: add travis badge 2015-07-29 21:57:41 +03:00
ripemd160.c change ripemd160 function names to match sha2 functions 2016-04-14 17:28:46 +02:00
ripemd160.h change ripemd160 function names to match sha2 functions 2016-04-14 17:28:46 +02:00
secp256k1.c ed25519 support 2016-04-22 18:21:58 +02:00
secp256k1.h ed25519 support 2016-04-22 18:21:58 +02:00
secp256k1.table Add support for NIST256P1 elliptic curve 2015-06-26 10:33:14 +03:00
setup.py whitespace 2015-07-06 12:48:11 -04:00
sha2.c Remove unused static variable sha384_initial_hash_value. 2015-01-27 19:22:42 -05:00
sha2.h fix copyright headers 2014-05-22 20:54:58 +02:00
test_curves.py bignum: add specific tests for bn_mod() edge cases 2015-08-31 21:18:16 +03:00
test-openssl.c Add support for NIST256P1 elliptic curve 2015-06-26 10:33:14 +03:00
test.py prepare cython-TrezorCrypto for pip release 2015-01-12 19:11:43 +01:00
tests.c Test vectors for ed25519 + BIP-0032 / SLIP-0010 2016-04-23 23:44:01 +02:00
TrezorCrypto.pyx whitespace 2015-07-06 12:48:11 -04:00

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.