1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-21 05:48:23 +00:00
Commit Graph

273 Commits

Author SHA1 Message Date
Jochen Hoenicke
c983afd72f Added curve type to HDNode
Every curve gets it's own hierarchy and the curve is remembered in
HD node.  Fixed the private/public key derivations to use the right
modulus.
2016-04-19 18:21:56 +02:00
Pavol Rusnak
f4dd151eb9
change ripemd160 function names to match sha2 functions 2016-04-14 17:28:46 +02:00
Pavol Rusnak
86d6a0b782
adopt ripemd160 from mbedtls 2016-04-14 10:58:26 +02:00
Pavol Rusnak
bb52cb4ac9
adjust format of LICENSE 2016-01-31 12:16:31 +01:00
Karel Bilek
b1a73ed984 Adding cmake to travis
Not 100% if it will work, let's see
2016-01-26 22:32:41 +01:00
Karel Bílek
2802d97d47 Merge pull request #51 from trezor/runn1ng-patch-1
Adding nist256p1 to CMakeLists
2016-01-26 20:08:07 +01:00
Karel Bilek
2b5859ca47 Adding nist256p1 to CMakeLists 2016-01-26 20:07:45 +01:00
Pavol Rusnak
fbc0df736a
call progress callback at the beginning of pbkdf2 calculation 2016-01-19 15:34:31 +01:00
Pavol Rusnak
9a8e982153
implement bip39 cache 2016-01-19 15:11:57 +01:00
Pavol Rusnak
3556c74740
fix build on _WIN32 2015-12-14 22:50:28 +01:00
Pavol Rusnak
6726547a88 Merge pull request #50 from 251io/trezor-crypto-bugfix
Fixes a bug in the test_pbkdf2_hmac_sha256 test.
2015-09-22 00:10:28 +02:00
251
1d7fb4e38f Fixes a bug in the test_pbkdf2_hmac_sha256 test.
This bug fix sets the length of the derived key in the last test_pbkdf2_hmac_sha256 test to 40 bytes to fix a buffer overflow, which is caused by the call to the pbkdf2_hmac_sha256 function, on the memory reserved by the local variable k.
2015-09-21 23:51:10 +02:00
Pavol Rusnak
57cee67855 Merge pull request #49 from romanz/master
bignum: constant time implementation for bn_mod()
2015-08-31 20:27:29 +02:00
Roman Zeyde
12c3b1ccf6 bignum: add specific tests for bn_mod() edge cases 2015-08-31 21:18:16 +03:00
Roman Zeyde
437f8b3856 bignum: constant time implementation for bn_mod() 2015-08-31 20:55:02 +03:00
Pavol Rusnak
e67018178b Merge pull request #48 from jhoenicke/bignumcleanup
Added more tests for specific points.
2015-08-19 21:52:33 +02:00
Jochen Hoenicke
472b90d8ed Added myself to copyright lines. 2015-08-19 21:45:21 +02:00
Jochen Hoenicke
50428bb37b Added more tests for specific points.
Some points designed to test for underflow of x^3-ax.
2015-08-19 21:26:05 +02:00
Pavol Rusnak
74eed547a3 Merge pull request #46 from jhoenicke/bignumcleanup
Fixed more unit tests.  Simplified jacobian_add
2015-08-08 01:56:27 +02:00
Jochen Hoenicke
774ac9cb22 Simplified test for doubling in point_jacobian_add 2015-08-07 11:26:00 +02:00
Jochen Hoenicke
11d14a3946 Fixed unit test for addmod added test for add.
- bn_addmod: now only guarantees result < 2*prime.
- bn_add: new test
- bn_mult_half: fixed normalization of prime -> 0.
2015-08-07 11:15:10 +02:00
Pavol Rusnak
c0a03d1429 Merge pull request #45 from jhoenicke/bignumcleanup
Extended comments, new function bn_add, a bug fix.
2015-08-06 19:50:36 +02:00
Jochen Hoenicke
f93b003cbc Extended comments, new function bn_add, a bug fix.
Describe normalized, partly reduced and reduced numbers.
Comment which function expects which kind of input.
Removed unused bn_bitlen.
Add bn_add that does not reduce.
Bug fix in ecdsa_validate_pubkey: bn_mod before bn_is_equal.
Bug fix in hdnode_private_ckd: bn_mod after bn_addmod.
2015-08-06 19:09:23 +02:00
Pavol Rusnak
57166295c4 Merge pull request #44 from jhoenicke/bignumcleanup
My bignum cleanup branch
2015-08-06 00:31:29 +02:00
Jochen Hoenicke
53fa580b81 Added more unit tests
- Added Romanz's validate_pubkey test.
- Added special test to check that jacobin_point_add can double.
2015-08-05 22:29:34 +02:00
Jochen Hoenicke
a1408fc5a0 Fix unit test for point_jacobian_add 2015-08-05 22:26:50 +02:00
Roman Zeyde
a9b98a3671 test_curves: generalize UT for bignum cleanup 2015-08-05 21:51:39 +02:00
Jochen Hoenicke
e1347fcdf8 New Unit Tests
- Added unit tests for the NIST curve.
- Fix some missing bn_mod in unit tests.
- New tests for tricky 2 (2j+1) 2^{4i} exponents.
2015-08-05 21:42:40 +02:00
Jochen Hoenicke
f2081d88d8 New jacobian_add that handles doubling.
Fix bug where jacobian_add is called with two identical points.
2015-08-05 21:23:04 +02:00
Jochen Hoenicke
60e36dac3b Fixed conditional_negate for larger numbers
Without the bn_mod the numbers get larger (but still < 2*prime), so
conditional_negate should handle this.
2015-08-05 19:36:30 +02:00
Jochen Hoenicke
6ba4d288b0 Cleaned up bignum code
1. Fixed bn_multiply_step to handle small primes.
2. Removed many calls to bn_mod to prevent side-channel leakage.
2015-08-05 19:36:30 +02:00
Pavol Rusnak
2e09a9ff35 add b to ecdsa_curve structure 2015-08-05 18:06:10 +02:00
Pavol Rusnak
418e86c293 remove scons dependency, build shared library with Makefile 2015-08-05 16:16:24 +02:00
Pavol Rusnak
cbbc0bdc71 fix curves unit test by using canonize version of sigencode 2015-08-04 00:41:50 +02:00
Pavol Rusnak
d659fd49a5 return back normalization of signatures 2015-08-03 21:47:06 +02:00
Pavol Rusnak
9255595c97 Merge pull request #42 from romanz/master
bignum: use constant time comparisons
2015-08-03 21:46:53 +02:00
Roman Zeyde
793234a0ec bignum: use constant time comparisons 2015-08-03 10:57:09 +03:00
Pavol Rusnak
bfa812441d Merge pull request #41 from romanz/travis
Improve Travis CI usage
2015-07-31 11:04:49 +02:00
Roman Zeyde
558b3fd65b travis: add pytest (for test_curves.py) 2015-07-31 11:40:13 +03:00
Roman Zeyde
8a3ee52d63 travis: add openssl tests 2015-07-31 11:09:15 +03:00
Roman Zeyde
cfbd09d158 travis: use container-based infrastructure 2015-07-31 10:55:06 +03:00
Pavol Rusnak
79738f4251 Merge pull request #40 from romanz/travis
Add Travis CI for unit test suite
2015-07-29 21:02:38 +02:00
Roman Zeyde
f91e912dd2 README: add travis badge 2015-07-29 21:57:41 +03:00
Roman Zeyde
0164137786 tests: fix signedness error 2015-07-29 21:49:00 +03:00
Roman Zeyde
1163992e5c travis: add simple tests 2015-07-29 20:57:30 +03:00
Pavol Rusnak
f9df01c6e6 add CONTRIBUTORS file
generated using the following:

git log --format='%aN <%aE>' --no-merges | sort | uniq -c | sort -nr
2015-07-29 16:38:45 +02:00
Pavol Rusnak
8108524358 Merge pull request #39 from romanz/master
test_curves: fix test case name typo
2015-07-26 16:47:42 +02:00
Roman Zeyde
e569b019c4 test_curves: fix test case name typo 2015-07-24 10:44:56 +03:00
Pavol Rusnak
5ec72d3a5b Merge pull request #38 from romanz/master
Fix few small issues.
2015-07-07 18:32:13 +02:00
Pavol Rusnak
9c3e51074b use -O3 instead of -Os 2015-07-07 18:31:04 +02:00