Need help with trezor-crypto?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

475 Stars 196 Forks MIT License 704 Commits 0 Opened issues


:lock: Don't use this repo, use the new monorepo instead:

Services available


Need anything else?

Contributors list


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 - Base32 (RFC4648 and custom alphabets) - Base58 address representation - Ed25519 signing/verifying (also SHA3 and Keccak variants) - ECDH using secp256k1, nist256p1 and Curve25519 - HMAC-SHA256 and HMAC-SHA512 - PBKDF2 - RIPEMD-160 - SHA1 - SHA2-256/SHA2-512 - SHA3/Keccak - BLAKE2s/BLAKE2b - Chacha20-Poly1305 - unit tests (using Check -; in testcheck.c) - tests against OpenSSL (in testopenssl.c) - integrated Wycheproof tests

Distibuted under MIT License.

Some parts of the library come from external sources:

  • AES:
  • Base58:
  • BLAKE2s/BLAKE2b:
  • RIPEMD-160:
  • SHA1/SHA2:
  • SHA3:
  • Curve25519:
  • Ed25519:
  • Chacha20:
  • Poly1305:

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.