]>
Git Repo - secp256k1.git/log
Andrew Poelstra [Thu, 8 Jun 2017 01:17:59 +0000 (01:17 +0000)]
add pubkey prefix constants to include/secp256k1.h
Pieter Wuille [Fri, 5 May 2017 17:48:14 +0000 (10:48 -0700)]
Merge #454: Remove residual parts from the schnorr expirement.
5e95bf2 Remove residual parts from the schnorr expirement. (Gregory Maxwell)
Tree-SHA512: de1e56cc54443e29a60787996a1b1381b0b84eacb87a8f1af06b5ba3900b1771c3a04fd547c65e21979e3c08c3a45d258d699eb951a956f8e617833c5396ecfe
Gregory Maxwell [Wed, 3 May 2017 11:13:28 +0000 (11:13 +0000)]
Remove residual parts from the schnorr expirement.
Pieter Wuille [Wed, 26 Apr 2017 23:56:52 +0000 (16:56 -0700)]
Merge #452: Minor optimizations to _scalar_inverse to save 4M
465159c Further shorten the addition chain for scalar inversion. (Brian Smith)
cf12fa1 Minor optimizations to _scalar_inverse to save 4M (Peter Dettman)
Tree-SHA512: b03ae53bd48435f8ef8a89ba3b45f9a35f3f3c6cfba7deb6820ab2146205656d198e4317a4cb98a986f434df244ae735313d303d0ce5a5c40519d37621238957
Pieter Wuille [Tue, 25 Apr 2017 23:18:37 +0000 (16:18 -0700)]
Merge #437: Unroll secp256k1_fe_(get|set)_b32 to make them much faster.
a2b6b19 Fix benchmark print_number infinite loop. (Gregory Maxwell)
8b7680a Unroll secp256k1_fe_(get|set)_b32 for 10x26. (Gregory Maxwell)
aa84990 Unroll secp256k1_fe_(get|set)_b32 for 5x52. (CryptoGuru)
Tree-SHA512: b17fa454dc4ef614305e10575b0f87c3b37d398d6d3996d5bbbb8e27b0d9841aa13b3cffe93d13dc637c8c3071f8565919574ec0b07f02bf3b0eb6faf4b93251
Brian Smith [Sun, 23 Apr 2017 13:18:53 +0000 (03:18 -1000)]
Further shorten the addition chain for scalar inversion.
Reduce the number of squarings by one and reduce the number of
multiplications by three.
Gregory Maxwell [Mon, 24 Apr 2017 06:02:36 +0000 (06:02 +0000)]
Fix benchmark print_number infinite loop.
Gregory Maxwell [Tue, 10 Jan 2017 01:54:49 +0000 (01:54 +0000)]
Unroll secp256k1_fe_(get|set)_b32 for 10x26.
field_get_b32: min 0.890us / avg 0.905us / max 0.956us
field_set_b32: min 1.12us / avg 1.15us / max 1.19us
becomes
field_get_b32: min 0us / avg 0.000000119us / max 0.000000238us
field_set_b32: min 0.0532us / avg 0.0584us / max 0.0782us
CryptoGuru [Mon, 9 Jan 2017 23:18:57 +0000 (23:18 +0000)]
Unroll secp256k1_fe_(get|set)_b32 for 5x52.
field_get_b32: min 0.647us / avg 0.666us / max 0.751us
field_set_b32: min 0.551us / avg 0.571us / max 0.624us
becomes
field_get_b32: min 0us / avg 0.0000000477us / max 0.000000238us
field_set_b32: min 0us / avg 0.0000000238us / max 0.000000238us
(Patch from https://bitcointalk.org/index.php?topic=
1740973 .0
_get was reversed from the patch because this order appeared
somewhat faster in testing.)
Signed-off-by: Gregory Maxwell <[email protected] >
Peter Dettman [Tue, 18 Apr 2017 04:43:56 +0000 (11:43 +0700)]
Minor optimizations to _scalar_inverse to save 4M
- Precalculate x^5 and use for "01010" patterns during accumulation. (net -2M)
- Further use of x^5 to allow shorter addition chain (net -2M)
Pieter Wuille [Wed, 22 Mar 2017 00:51:36 +0000 (17:51 -0700)]
Merge #408: Add `secp256k1_ec_pubkey_negate` and `secp256k1_ec_privkey_negate`
8e48aa6 Add `secp256k1_ec_pubkey_negate` and `secp256k1_ec_privkey_negate` (Andrew Poelstra)
Tree-SHA512: 28eeca0b04001958ad86b3c802e33a13273514e9e9802d5b358fd577dc95421a2cffb5591716bea10300717f742f0941c465b9df71dbb4c66d174c643887e06f
Pieter Wuille [Wed, 22 Mar 2017 00:35:26 +0000 (17:35 -0700)]
Merge #441: secp256k1_context_randomize: document.
72d952c FIXUP: Missing "is" (Rusty Russell)
70ff29b secp256k1_context_randomize: document. (Rusty Russell)
Tree-SHA512: c1f48431e07a23b572838d63250d5a356ff5b321dd242cf0af5227ee89b9795d49a762b0c7311bb7284ccd487c68b3d1f16cf6824eac30fc3f8becdf2b891dad
Pieter Wuille [Wed, 22 Mar 2017 00:33:05 +0000 (17:33 -0700)]
Merge #444: test: Use checked_alloc
5eb030c test: Use checked_alloc (Wladimir J. van der Laan)
Tree-SHA512: f0fada02664fca3b4f48795ce29a187331f86f80fc1605150fcfc451e7eb4671f7b5dff09105c9927e28af6d1dafd1edad1671dddd412110f4b5950153df499d
Pieter Wuille [Wed, 22 Mar 2017 00:00:35 +0000 (17:00 -0700)]
Merge #449: Remove executable bit from secp256k1.c
51b77ae Remove executable bit from secp256k1.c (Emil Rus)
Emil Rus [Fri, 17 Mar 2017 15:27:25 +0000 (17:27 +0200)]
Remove executable bit from secp256k1.c
Wladimir J. van der Laan [Sun, 26 Feb 2017 14:05:42 +0000 (15:05 +0100)]
test: Use checked_alloc
Rusty Russell [Tue, 21 Feb 2017 04:13:09 +0000 (14:43 +1030)]
FIXUP: Missing "is"
Signed-off-by: Rusty Russell <[email protected] >
Rusty Russell [Tue, 14 Feb 2017 04:59:33 +0000 (15:29 +1030)]
secp256k1_context_randomize: document.
I think I summarized it correctly after IRC discussion with gmaxwell
and andytoshi; I didn't know it existed :(
It's regrettable to expose this level of detail, but users need to know
this to make a decision about how to use it.
Signed-off-by: Rusty Russell <[email protected] >
Pieter Wuille [Wed, 28 Dec 2016 12:33:30 +0000 (04:33 -0800)]
Merge #428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module (Andrew Poelstra)
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign (Andrew Poelstra)
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function (Andrew Poelstra)
a724d72 configure: add --enable-coverage to set options for coverage analysis (Andrew Poelstra)
b595163 recovery: add tests to cover API misusage (Andrew Poelstra)
6f8ae2f ecdh: test NULL-checking of arguments (Andrew Poelstra)
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign (Andrew Poelstra)
Andrew Poelstra [Thu, 28 Jul 2016 16:05:40 +0000 (16:05 +0000)]
Add `secp256k1_ec_pubkey_negate` and `secp256k1_ec_privkey_negate`
Andrew Poelstra [Mon, 28 Nov 2016 22:43:04 +0000 (22:43 +0000)]
exhaustive tests: add recovery module
Pieter Wuille [Mon, 12 Dec 2016 19:06:51 +0000 (11:06 -0800)]
Merge #433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API. (Gregory Maxwell)
Gregory Maxwell [Mon, 12 Dec 2016 07:56:01 +0000 (07:56 +0000)]
Make the libcrypto detection fail the newer API.
OpenSSL 1.1 makes ECDSA_SIG opaque and our tests need access
inside this object.
The comparison tests against OpenSSL aren't important for most
users, but the build failing is...
Andrew Poelstra [Mon, 28 Nov 2016 18:59:38 +0000 (18:59 +0000)]
exhaustive tests: remove erroneous comment from ecdsa_sig_sign
Mathematically, we always overflow when using the exhaustive tests (because our
scalar order is 13 and our field order is on the order of 2^256), but the
`overflow` variable returned when parsing a b32 as a scalar is always set
to 0, to prevent infinite (or practically infinite) loops searching for
non-overflowing scalars.
Pieter Wuille [Mon, 28 Nov 2016 05:12:01 +0000 (21:12 -0800)]
Merge #427: Remove Schnorr from travis as well
8eecc4a Remove Schnorr from travis as well (Pieter Wuille)
Andrew Poelstra [Sat, 26 Nov 2016 22:50:40 +0000 (22:50 +0000)]
group_impl.h: remove unused `secp256k1_ge_set_infinity` function
Also remove `secp256k1_fe_verify` from field_*_.impl.h when VERIFY is not defined
Andrew Poelstra [Sat, 26 Nov 2016 20:34:15 +0000 (20:34 +0000)]
configure: add --enable-coverage to set options for coverage analysis
Andrew Poelstra [Sat, 26 Nov 2016 19:52:37 +0000 (19:52 +0000)]
recovery: add tests to cover API misusage
Pieter Wuille [Sun, 27 Nov 2016 22:31:51 +0000 (14:31 -0800)]
Remove Schnorr from travis as well
Andrew Poelstra [Wed, 23 Nov 2016 18:47:38 +0000 (18:47 +0000)]
ecdh: test NULL-checking of arguments
Boosts the ECDH module to 100% coverage
Andrew Poelstra [Sat, 26 Nov 2016 20:14:19 +0000 (20:14 +0000)]
ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
Whenever ecdsa_sig_sign is called, in the case that r == 0 or r overflows,
we want to retry with a different nonce rather than fail signing entirely.
Because of this, we always check the nonce conditions before calling
sig_sign, so these checks should always pass (and in particular, they
are inaccessible through the API and appear as uncovered code in test
coverage).
Pieter Wuille [Sat, 26 Nov 2016 00:48:14 +0000 (16:48 -0800)]
Merge #310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification (Andrew Poelstra)
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group (Andrew Poelstra)
20b8877 Add exhaustive test for group functions on a low-order subgroup (Andrew Poelstra)
Andrew Poelstra [Sat, 16 Apr 2016 17:32:37 +0000 (17:32 +0000)]
Add exhaustive test for verification
Andrew Poelstra [Thu, 7 Jul 2016 10:11:30 +0000 (10:11 +0000)]
Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
If you compile without ./configure --enable-exhaustive-tests=no,
this will create a binary ./exhaustive_tests which will execute
every function possible on a group of small order obtained by
moving to a twist of our curve and locating a generator of small
order.
Currently defaults to order 13, though by changing some #ifdefs
you can get a couple other ones. (Currently 199, which will take
forever to run, and 14, which won't work because it's composite.)
TODO exhaustive tests for the various modules
Andrew Poelstra [Thu, 17 Sep 2015 23:54:52 +0000 (18:54 -0500)]
Add exhaustive test for group functions on a low-order subgroup
We observe that when changing the b-value in the elliptic curve formula
`y^2 = x^3 + ax + b`, the group law is unchanged. Therefore our functions
for secp256k1 will be correct if and only if they are correct when applied
to the curve defined by `y^2 = x^3 + 4` defined over the same field. This
curve has a point P of order 199.
This commit adds a test which computes the subgroup generated by P and
exhaustively checks that addition of every pair of points gives the correct
result.
Unfortunately we cannot test const-time scalar multiplication by the same
mechanism. The reason is that these ecmult functions both compute a wNAF
representation of the scalar, and this representation is tied to the order
of the group.
Testing with the incomplete version of gej_add_ge (found in
5de4c5dff ^)
shows that this detects the incompleteness when adding P - 106P, which
is exactly what we expected since 106 is a cube root of 1 mod 199.
Pieter Wuille [Fri, 25 Nov 2016 19:30:19 +0000 (11:30 -0800)]
Merge #425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment (Pieter Wuille)
Pieter Wuille [Fri, 18 Nov 2016 01:49:11 +0000 (17:49 -0800)]
Remove Schnorr experiment
Pieter Wuille [Wed, 26 Oct 2016 22:04:38 +0000 (15:04 -0700)]
Merge #407: Modify parameter order of internal functions to match API parameter order
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order (llamasoft)
541b783 Fix secp256k1_ge_set_all_gej_var parameter order (llamasoft)
7d893f4 Fix secp256k1_fe_inv_all_var parameter order (llamasoft)
Pieter Wuille [Wed, 26 Oct 2016 21:54:09 +0000 (14:54 -0700)]
Merge #411: Remove guarantees about memcmp-ability
91219a1 Remove guarantees about memcmp-ability (Andrew Poelstra)
Pieter Wuille [Wed, 26 Oct 2016 21:24:52 +0000 (14:24 -0700)]
Merge #421: Update scalar_4x64_impl.h
9d67afa Update scalar_4x64_impl.h (Alex-GR)
Pieter Wuille [Wed, 26 Oct 2016 21:14:13 +0000 (14:14 -0700)]
Merge #422: Restructure nonce clearing
3769783 Restructure nonce clearing (bgorlick)
0f9e69d Restructure nonce clearing (bgorlick)
bgorlick [Fri, 21 Oct 2016 11:59:32 +0000 (04:59 -0700)]
Restructure nonce clearing
Make sure we clear the nonce data even if the nonce function fails (it may have written partial data), and call memset only once in the case we iterate to produce a valid signature.
bgorlick [Fri, 21 Oct 2016 10:50:10 +0000 (03:50 -0700)]
Restructure nonce clearing
Make sure we clear the nonce data even if the nonce function fails (it may have written partial data), and call memset only once in the case we iterate to produce a valid signature.
Alex-GR [Sat, 8 Oct 2016 21:16:50 +0000 (00:16 +0300)]
Update scalar_4x64_impl.h
XOR reg,reg instead of MOV 0 to reg. It should be at least equal in all architectures and faster in some else.
Pieter Wuille [Mon, 12 Sep 2016 16:04:44 +0000 (18:04 +0200)]
Merge #413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation (Cory Fields)
Cory Fields [Wed, 7 Sep 2016 16:14:18 +0000 (12:14 -0400)]
fix auto-enabled static precompuatation
This was broken in
aa0b1fd14979145d54ef85485cb497a9cdbc22c7
Andrew Poelstra [Fri, 26 Aug 2016 18:03:48 +0000 (18:03 +0000)]
Remove guarantees about memcmp-ability
Pieter Wuille [Thu, 4 Aug 2016 18:38:26 +0000 (20:38 +0200)]
Merge #410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl (Wladimir J. van der Laan)
Wladimir J. van der Laan [Thu, 4 Aug 2016 10:58:29 +0000 (12:58 +0200)]
Add string.h include to ecmult_impl
`memcpy` and `memset` are used, so include the appropriate header
for the declaration.
llamasoft [Tue, 26 Jul 2016 16:53:29 +0000 (11:53 -0500)]
Fix secp256k1_ge_set_table_gej_var parameter order
Rearranged secp256k1_ge_set_table_gej_var parameters so length comes last (it modifies both *a and *zr).
llamasoft [Tue, 26 Jul 2016 16:48:28 +0000 (11:48 -0500)]
Fix secp256k1_ge_set_all_gej_var parameter order
Rearranged secp256k1_ge_set_all_gej_var parameters so length comes after *a.
llamasoft [Tue, 26 Jul 2016 15:57:08 +0000 (10:57 -0500)]
Fix secp256k1_fe_inv_all_var parameter order
Rearranged secp256k1_fe_inv_all_var parameters so length is after array.
Text editor removed some trailing whitespaces.
Pieter Wuille [Sat, 9 Jul 2016 17:39:49 +0000 (19:39 +0200)]
Merge #405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time (Pieter Wuille)
Pieter Wuille [Sat, 9 Jul 2016 12:23:44 +0000 (14:23 +0200)]
Make secp256k1_fe_sqrt constant time
Pieter Wuille [Thu, 7 Jul 2016 15:06:42 +0000 (17:06 +0200)]
Merge #404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula (Andrew Poelstra)
Andrew Poelstra [Thu, 30 Jul 2015 17:30:15 +0000 (12:30 -0500)]
Add note about 2M + 5S doubling formula
Pieter Wuille [Wed, 6 Jul 2016 12:12:10 +0000 (14:12 +0200)]
Merge #400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags (Andrew Poelstra)
a6c6f99 Remove a bunch of unused stdlib #includes (Andrew Poelstra)
Andrew Poelstra [Mon, 6 Jun 2016 18:32:29 +0000 (18:32 +0000)]
build: add -DSECP256K1_BUILD to benchmark_internal build flags
gcc 6 will warn about our non-null checks when SECP256K1_BUILD
our NONNULL marker is nontrivial. This occurs unless SECP256K1_BUILD
is set, which we had forgotten to do for the internal benchmarks,
which compile directly against the library instead of linking.
Andrew Poelstra [Sun, 5 Jun 2016 21:39:17 +0000 (21:39 +0000)]
Remove a bunch of unused stdlib #includes
Pieter Wuille [Wed, 6 Jul 2016 10:07:58 +0000 (12:07 +0200)]
Merge #403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests (Andrew Poelstra)
Andrew Poelstra [Tue, 5 Jul 2016 11:00:39 +0000 (11:00 +0000)]
configure: add flag to disable OpenSSL tests
OpenSSL messes up valgrind.
Pieter Wuille [Mon, 4 Jul 2016 11:59:10 +0000 (13:59 +0200)]
Merge #402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements. (Pieter Wuille)
efd953a Add Jacobi symbol test via GMP (Peter Dettman)
Pieter Wuille [Wed, 25 Nov 2015 16:38:44 +0000 (17:38 +0100)]
Add function for testing quadratic residue field/group elements.
Peter Dettman [Fri, 3 Jul 2015 12:21:52 +0000 (21:51 +0930)]
Add Jacobi symbol test via GMP
Also add native Jacobi symbol test (Andrew)
Rebased-by: Andrew Poelstra
Rebased-by: Pieter Wuille
Pieter Wuille [Thu, 30 Jun 2016 13:50:33 +0000 (15:50 +0200)]
Merge #401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases (Andrew Poelstra)
Andrew Poelstra [Thu, 30 Jun 2016 09:59:10 +0000 (09:59 +0000)]
ecmult_const: unify endomorphism and non-endomorphism skew cases
We now do a skew correction even without the endomorphism optimization,
which costs one additional group addition but unifies a lot of code.
Pieter Wuille [Wed, 29 Jun 2016 09:19:13 +0000 (11:19 +0200)]
Merge #378: .gitignore build-aux cleanup
70141a8 Update .gitignore (upgradeadvice)
Pieter Wuille [Wed, 29 Jun 2016 09:16:49 +0000 (11:16 +0200)]
Merge #384: JNI: align shared files copyright/comments to bitcoinj's
6ceea2c align shared files copyright/comments to bitcoinj's (GreenAddress)
Pieter Wuille [Wed, 29 Jun 2016 09:10:13 +0000 (11:10 +0200)]
Merge #399: build: verify that the native compiler works for static precomp
aa0b1fd build: verify that the native compiler works for static precomp (Cory Fields)
Pieter Wuille [Mon, 30 May 2016 17:58:18 +0000 (19:58 +0200)]
Merge #398: Test whether ECDH and Schnorr are enabled for JNI
eee808d Test whether ECDH and Schnorr are enabled for JNI (Pieter Wuille)
Cory Fields [Tue, 16 Feb 2016 20:50:17 +0000 (15:50 -0500)]
build: verify that the native compiler works for static precomp
Pieter Wuille [Wed, 25 May 2016 17:15:42 +0000 (19:15 +0200)]
Test whether ECDH and Schnorr are enabled for JNI
Pieter Wuille [Wed, 25 May 2016 17:01:24 +0000 (19:01 +0200)]
Merge #366: ARM assembly implementation of field_10x26 inner (rebase of #173)
001f176 ARM assembly implementation of field_10x26 inner (Wladimir J. van der Laan)
Wladimir J. van der Laan [Wed, 24 Dec 2014 11:12:37 +0000 (12:12 +0100)]
ARM assembly implementation of field_10x26 inner
Rebased-by: Pieter Wuille <[email protected] >
Pieter Wuille [Wed, 25 May 2016 16:23:07 +0000 (18:23 +0200)]
Merge #397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h (Kirill Fomichev)
2ab4695 Fix state size in sha256 struct (Kirill Fomichev)
Kirill Fomichev [Sat, 21 May 2016 07:18:57 +0000 (10:18 +0300)]
Fix undefs in hash_impl.h
Kirill Fomichev [Sat, 21 May 2016 07:17:06 +0000 (10:17 +0300)]
Fix state size in sha256 struct
Pieter Wuille [Sun, 8 May 2016 18:01:19 +0000 (20:01 +0200)]
Merge #386: Add some missing `VERIFY_CHECK(ctx != NULL)`
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK` (Andrew Poelstra)
Pieter Wuille [Sun, 8 May 2016 17:57:43 +0000 (19:57 +0200)]
Merge #389: Cast pointers through uintptr_t under JNI
47b9e78 Cast pointers through uintptr_t under JNI (Jon Griffiths)
Pieter Wuille [Sun, 8 May 2016 17:56:26 +0000 (19:56 +0200)]
Merge #390: Update bitcoin-core GitHub links
faa2a11 Update bitcoin-core GitHub links (MarcoFalke)
Pieter Wuille [Sun, 8 May 2016 17:53:56 +0000 (19:53 +0200)]
Merge #391: JNI: Only call ecdsa_verify if its inputs parsed correctly
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly (Jon Griffiths)
Pieter Wuille [Sun, 8 May 2016 17:52:28 +0000 (19:52 +0200)]
Merge #392: Add testcase which hits additional branch in secp256k1_scalar_sqr
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr (Jonas Nick)
Pieter Wuille [Sun, 8 May 2016 17:49:05 +0000 (19:49 +0200)]
Merge #388: bench_ecdh: fix call to secp256k1_context_create
f36f9c6 bench_ecdh: fix call to secp256k1_context_create (Andrew Poelstra)
Jonas Nick [Tue, 3 May 2016 03:19:00 +0000 (20:19 -0700)]
Add testcase which hits additional branch in secp256k1_scalar_sqr
Jon Griffiths [Mon, 2 May 2016 11:21:33 +0000 (23:21 +1200)]
JNI: Only call ecdsa_verify if its inputs parsed correctly
Return 0 otherwise instead of calling it with bad parameters.
MarcoFalke [Fri, 29 Apr 2016 21:25:27 +0000 (23:25 +0200)]
Update bitcoin-core GitHub links
Jon Griffiths [Thu, 28 Apr 2016 08:25:31 +0000 (20:25 +1200)]
Cast pointers through uintptr_t under JNI
Fixes warnings of the form "warning: cast to pointer from integer of
different size" when building on 32 bit platforms. This is the same
approach used for pointer conversions in the openjdk sources.
Andrew Poelstra [Wed, 27 Apr 2016 10:16:18 +0000 (10:16 +0000)]
bench_ecdh: fix call to secp256k1_context_create
Andrew Poelstra [Tue, 26 Apr 2016 15:49:02 +0000 (15:49 +0000)]
Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
The `ARG_CHECK` macro requires that a variable called `ctx` exist and be
non-NULL. However, in several functions that do not use the context variable,
we simply ignore it with `(void)ctx`. Replace these with explicit checks for
non-NULLness to avoid invalid memory accesses.
GreenAddress [Sun, 27 Mar 2016 14:21:34 +0000 (16:21 +0200)]
align shared files copyright/comments to bitcoinj's
upgradeadvice [Tue, 16 Feb 2016 22:59:00 +0000 (16:59 -0600)]
Update .gitignore
Don't ignore everything under build-aux
Pieter Wuille [Tue, 16 Feb 2016 19:44:26 +0000 (20:44 +0100)]
Merge #373: build: fix x86_64 asm detection for some compilers
3f8fdfb build: fix x86_64 asm detection for some compilers (Cory Fields)
Pieter Wuille [Tue, 16 Feb 2016 19:42:23 +0000 (20:42 +0100)]
Merge #374: Add note about y=0 being possible on one of the sextic twists
e72e93a Add note about y=0 being possible on one of the sextic twists (Andrew Poelstra)
Pieter Wuille [Tue, 16 Feb 2016 19:33:30 +0000 (20:33 +0100)]
Merge #364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code (GreenAddress)
3093576 JNI library (GreenAddress)
GreenAddress [Mon, 1 Feb 2016 12:37:33 +0000 (13:37 +0100)]
JNI library: cleanup, removed unimplemented code
GreenAddress [Wed, 17 Dec 2014 03:23:17 +0000 (22:23 -0500)]
JNI library
Squashed and rebased. Thanks to @theuni and @faizkhan00 for doing
the majority of work here! Also thanks to @btchip for help with debugging
and review.
Pieter Wuille [Wed, 27 Jan 2016 19:58:52 +0000 (20:58 +0100)]
Merge pull request #371
e5a9047 [Trivial] Remove double semicolons (paveljanik)
Andrew Poelstra [Sun, 10 Jan 2016 08:35:59 +0000 (08:35 +0000)]
Add note about y=0 being possible on one of the sextic twists
Cory Fields [Mon, 4 Jan 2016 16:36:46 +0000 (11:36 -0500)]
build: fix x86_64 asm detection for some compilers
I Noticed this on OSX with clang, though it likely happens elsewhere as well.
The result is disabled x86_64 asm.
Due to missing escaping, this $0 was interpreted as the function name
SECP_64BIT_ASM_CHECK, causing the compile-check to be broken on some compilers.
The actual check looked like this:
int main()
{
uint64_t a = 11, tmp;
__asm__ __volatile__("movq SECP_64BIT_ASM_CHECKx100000000,%1; mulq %%rsi" : "+a"(a) : "S"(tmp) : "cc", "%rdx");
return 0;
}
It seems even more odd that it compiled anywhere.
paveljanik [Wed, 30 Dec 2015 07:42:42 +0000 (08:42 +0100)]
[Trivial] Remove double semicolons
This page took 0.066454 seconds and 4 git commands to generate.