Commit graph

56 commits

Author SHA1 Message Date
Pieter Wuille
11ab562203 Move implementations from impl/*.h to *_impl.h 2014-03-12 18:40:02 +01:00
Pieter Wuille
65a79b300c Slice bytes of G multiples to avoid cache timings 2014-03-07 00:32:41 +01:00
Peter Dettman
bb7bb81d07 Fix addition chain entry in comments 2014-01-31 11:43:57 +07:00
Peter Dettman
f8ccd9befd Re-write secp256k1_fe_sqrt and secp256k1_fe_inv to use a sliding window over blocks of 1s 2014-01-30 19:16:20 +07:00
Cory Fields
5a9989c52a add missing include 2014-01-17 23:24:12 -05:00
Cory Fields
78cd96b151 autotools: autotools'ify libsecp256k1 2014-01-17 23:24:12 -05:00
Pieter Wuille
60442b835f Remove 5x64 implementation - no actual benefits 2013-12-01 21:16:47 +01:00
Pieter Wuille
399c03f227 Make endomorphism optimization optional 2013-12-01 21:06:20 +01:00
Pieter Wuille
ad52495d72 Check for overflows when order is added at recovery 2013-11-07 20:27:13 +01:00
Pieter Wuille
d0b33489f2 Break malleability by producing S <= order/2 2013-09-19 00:58:42 +02:00
Pieter Wuille
350ade2ab4 Tweak fixes & variable name improvement 2013-07-14 20:49:37 +02:00
Pieter Wuille
86d3cce2a9 Add support for multiplicative tweaking 2013-07-14 17:58:23 +02:00
Pieter Wuille
b0be6aba91 Invert buggy logic in secp256k1_ecdsa_seckey_verify 2013-07-13 01:31:41 +02:00
Diederik Huys
355b4192cf 1st assembly version of field 5x64 code - bugfix 2013-06-17 15:31:06 +02:00
Diederik Huys
dd804adeff 1st assembly version of field 5x64 code 2013-06-16 22:46:43 +02:00
Pieter Wuille
6c78924a10 Inline asm for 5x64 2013-06-09 00:52:14 +02:00
Pieter Wuille
1487ca95c6 Field 5x64 2013-06-09 00:04:55 +02:00
Pieter Wuille
561b0e1044 Private/public key tweaking 2013-05-27 01:18:48 +02:00
Pieter Wuille
e3c5c26f54 Allow private keys with less-than-32-byte secrets 2013-05-24 05:32:53 +02:00
Matt Corallo
6df016fb20 Fix JNI for C instead of C++
(because apparently there is a significant difference...)
2013-05-18 16:05:58 +02:00
Pieter Wuille
12e29b320f Use privkey serialization to construct OpenSSL keys 2013-05-10 00:53:47 +02:00
Pieter Wuille
4bef497b9c Bugfix: correct privkey serialization 2013-05-10 00:52:28 +02:00
Pieter Wuille
0a433ea23c MIT License 2013-05-09 15:24:32 +02:00
Pieter Wuille
2fb64b2da2 Inline verify is slow, this is what unit tests are for 2013-05-05 17:00:05 +02:00
Pieter Wuille
dd08f03799 OpenSSL/EC tests 2013-05-05 16:55:05 +02:00
Pieter Wuille
da3038c757 Privkey import/export 2013-05-05 05:12:43 +02:00
Pieter Wuille
50eb498ece Compact signatures/pubkey recovery 2013-05-05 02:46:07 +02:00
Pieter Wuille
764332d05d Make pubkeys, set_xo, ... ge instead of gej 2013-05-05 01:18:23 +02:00
Pieter Wuille
42cccdaf55 More public implementations 2013-05-05 01:02:05 +02:00
Pieter Wuille
7823916781 Add signing to public interface 2013-05-05 00:21:03 +02:00
Pieter Wuille
42f5e7c58d Remove traces of old mpz-based num 2013-04-30 16:04:33 +02:00
Pieter Wuille
f491cd35df Make constants constant 2013-04-30 15:57:40 +02:00
Pieter Wuille
3f44e1ad36 More num unit tests 2013-04-22 01:53:50 +02:00
Pieter Wuille
404c30a800 Test improvements 2013-04-21 19:07:21 +02:00
Pieter Wuille
79b0ce6c84 Change num_mod semantics 2013-04-21 00:58:15 +02:00
Pieter Wuille
d06e61cbb5 Builtin random 2013-04-20 23:57:20 +02:00
Pieter Wuille
2f9e831d34 Some comments 2013-04-14 22:17:21 +02:00
Pieter Wuille
898cecb3b3 Use GMP's low-level routines for num (mpn_) 2013-04-14 18:13:41 +02:00
Pieter Wuille
f0c89aadc6 Revamp makefile 2013-04-07 01:39:57 +02:00
Pieter Wuille
6baf08dfe4 Support for 32-bit limbs in field_gmp 2013-04-06 22:31:02 +02:00
Pieter Wuille
7a4b7691b6 Reorganize source tree: no .c for non-objects 2013-04-05 02:09:37 +02:00
Pieter Wuille
ea165f47da Add field_gmp; only 64-bit platforms for now 2013-04-05 01:38:29 +02:00
Pieter Wuille
7fef66199e Some group.h comments 2013-04-03 00:58:51 +02:00
Pieter Wuille
3231676bf9 10x26 field implementation 2013-04-02 00:10:14 +02:00
Pieter Wuille
ff29b85510 move constants in field/group 2013-04-01 12:26:21 +02:00
Pieter Wuille
39481533e1 Small fix 2013-04-01 11:34:48 +02:00
Pieter Wuille
eb0be8eec6 Final step in converting to C 2013-04-01 07:52:58 +02:00
Pieter Wuille
d41e93a5e2 Fifth step in converting to C: ecdsa 2013-04-01 07:21:05 +02:00
Pieter Wuille
b1483f874c Fourth step in converting to C: ecmult 2013-04-01 06:29:30 +02:00
Pieter Wuille
f11ff5be70 Third step in converting to C: group 2013-03-31 17:02:52 +02:00