1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-15 19:08:07 +00:00
Go to file
Pavol Rusnak 638cf2310b cleanup
2013-09-20 21:49:17 +02:00
speed-stm32 cleanup 2013-09-20 21:49:17 +02:00
.gitignore implement bip32 - https://en.bitcoin.it/wiki/BIP_0032 2013-09-12 21:20:03 +02:00
AUTHORS import sources 2013-08-17 14:20:15 +02:00
bignum.c cleanup 2013-09-20 21:49:17 +02:00
bignum.h cleanup 2013-09-20 21:49:17 +02:00
bip32.c add function for computing addresses 2013-09-20 17:13:24 +02:00
bip32.h add function for computing addresses 2013-09-20 17:13:24 +02:00
ecdsa.c add function for computing addresses 2013-09-20 17:13:24 +02:00
ecdsa.h add function for computing addresses 2013-09-20 17:13:24 +02:00
hmac.c add hmac-sha256/512 2013-09-10 21:47:06 +02:00
hmac.h add hmac-sha256/512 2013-09-10 21:47:06 +02:00
LICENSE import sources 2013-08-17 14:20:15 +02:00
Makefile add function for computing addresses 2013-09-20 17:13:24 +02:00
rand.c use /dev/urandom in example 2013-08-21 20:26:00 +02:00
rand.h use /dev/urandom in example 2013-08-21 20:26:00 +02:00
README implement RFC 6979 2013-09-11 19:02:22 +02:00
ripemd160.c add ripemd160 2013-09-16 01:32:56 +02:00
ripemd160.h add ripemd160 2013-09-16 01:32:56 +02:00
secp256k1.c import sources 2013-08-17 14:20:15 +02:00
secp256k1.h refactor code -> bignum.c/h 2013-09-12 03:18:35 +02:00
sha2.c refactor code -> bignum.c/h 2013-09-12 03:18:35 +02:00
sha2.h use sha2 implementation by Aaron D. Gifford 2013-09-10 21:10:07 +02:00
test-bip32.c add function for computing addresses 2013-09-20 17:13:24 +02:00
test-pubkey.c implement bip32 - https://en.bitcoin.it/wiki/BIP_0032 2013-09-12 21:20:03 +02:00
test-rfc6979.c refactor code -> bignum.c/h 2013-09-12 03:18:35 +02:00
test-speed.c reorganize code in speed tests 2013-08-21 15:25:48 +02:00
test-verify.c implement bip32 - https://en.bitcoin.it/wiki/BIP_0032 2013-09-12 21:20:03 +02:00

MicroECDSA
==========

Heavily optimized ECDSA (secp256k1) signer for embedded devices.

Distibuted under MIT License.

Notes
-----

a) the signer only understands secp256k1 elliptic curve

b) there are executables:
   * test-rfc6979
     - check RFC 6979 algorithm for generating deterministic K
   * test-speed
     - check signing speed (sign 100x and compute speed from duration)
   * test-verify
     - generate random messages and private keys
     - check signature validity against OpenSSL (call verify method)

c) directory speed-stm32 contains project for deploying the code
   on STM32 microcontroller and checking signing speed there