Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Asymmetric Pathfinding Issue #302

Closed
BobWay opened this issue Mar 10, 2014 · 2 comments
Closed

Asymmetric Pathfinding Issue #302

BobWay opened this issue Mar 10, 2014 · 2 comments

Comments

@BobWay
Copy link
Contributor

BobWay commented Mar 10, 2014

I have a pretty straight forward "saaad" path. Rippled is finding the path in one direction but not the other. Interestingly, in the direction it is finding the path, it is reporting an orderbook path even though there are no orders. Rippling is enabled on all trust lines.

Alice = rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y
NewGate = rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN
Mark = raD1PjscAej2Vj1syFi95F6SP1HAqpReQU
SnapSwap = rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q
Bob = r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6

Path: A --> NG <-- M --> SS <-- B
Balance: 1/USD 6/USD 3/USD 1/USD
Limit: 10 100 100 10

Path: B --> SS <-- M --> NG <-- A
NOT FOUND

MacBook-15:public bway$ ./rippled ripple_path_find '{"command":"ripple_path_find", "source_account":"r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6", "destination_account":"rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y", "destination_amount":{"currency":"USD","issuer":"rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y", "value":"1"}}'
Loading: "/Users/bway/Code/OpenCoin/ripple/rippled/public/rippled.cfg"
Connecting to: s1.ripple.com:51234
{
"result" : {
"alternatives" : [],
"destination_account" : "rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y",
"destination_currencies" : [ "USD", "XRP" ],
"status" : "success"
}
}

Path: A --> NG <-- M --> SS <-- B
FOUND

MacBook-15:public bway$ ./rippled ripple_path_find '{"command":"ripple_path_find", "source_account":"rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y", "destination_account":"r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6", "destination_amount":{"currency":"USD","issuer":"r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6", "value":"1"}}'
Loading: "/Users/bway/Code/OpenCoin/ripple/rippled/public/rippled.cfg"
Connecting to: s1.ripple.com:51234
{
"result" : {
"alternatives" : [
{
"paths_canonical" : [],
"paths_computed" : [
[
{
"account" : "rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN",
"type" : 1,
"type_hex" : "0000000000000001"
},
{
"currency" : "USD",
"issuer" : "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"type" : 48,
"type_hex" : "0000000000000030"
},
{
"account" : "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"type" : 1,
"type_hex" : "0000000000000001"
}
],
[
{
"account" : "rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN",
"type" : 1,
"type_hex" : "0000000000000001"
},
{
"account" : "raD1PjscAej2Vj1syFi95F6SP1HAqpReQU",
"type" : 1,
"type_hex" : "0000000000000001"
},
{
"account" : "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"type" : 1,
"type_hex" : "0000000000000001"
}
]
],
"source_amount" : {
"currency" : "USD",
"issuer" : "rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y",
"value" : "1"
}
}
],
"destination_account" : "r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6",
"destination_currencies" : [ "USD", "XRP" ],
"status" : "success"
}
}

NO ORDERS IN THE BOOK

MacBook-15:public bway$ ./rippled book_offers USD/rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q USD/rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN
Loading: "/Users/bway/Code/OpenCoin/ripple/rippled/public/rippled.cfg"
Connecting to: s1.ripple.com:51234
{
"result" : {
"ledger_current_index" : 5445184,
"offers" : [],
"status" : "success"
}
}
MacBook-15:public bway$ ./rippled book_offers USD/rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN USD/rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q
Loading: "/Users/bway/Code/OpenCoin/ripple/rippled/public/rippled.cfg"
Connecting to: s1.ripple.com:51234
{
"result" : {
"ledger_current_index" : 5445185,
"offers" : [],
"status" : "success"
}
}

@BobWay
Copy link
Contributor Author

BobWay commented Mar 10, 2014

If I put an order in the book, the path DOES get found. But it still does not show the rippling path.

MacBook-15:public bway$ ./rippled ripple_path_find '{"command":"ripple_path_find", "source_account":"r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6", "destination_account":"rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y", "destination_amount":{"currency":"USD","issuer":"rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y", "value":"1"}}'
Loading: "/Users/bway/Code/OpenCoin/ripple/rippled/public/rippled.cfg"
Connecting to: s1.ripple.com:51234
{
"result" : {
"alternatives" : [
{
"paths_canonical" : [],
"paths_computed" : [
[
{
"account" : "rMwjYedjc7qqtKYVLiAccJSmCwih4LnE2q",
"type" : 1,
"type_hex" : "0000000000000001"
},
{
"currency" : "USD",
"issuer" : "rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN",
"type" : 48,
"type_hex" : "0000000000000030"
},
{
"account" : "rUyPiNcSFFj6uMR2gEaD8jUerQ59G1qvwN",
"type" : 1,
"type_hex" : "0000000000000001"
}
]
],
"source_amount" : {
"currency" : "USD",
"issuer" : "r3euRcVNBpNJy7M96SGBw21kyZx15bB8D6",
"value" : "1"
}
}
],
"destination_account" : "rBpnzaxRxd7QbcLF8T6S6iXNouJPBNKD7y",
"destination_currencies" : [ "USD", "XRP" ],
"status" : "success"
}
}

@BobWay BobWay closed this as completed Mar 11, 2014
@BobWay
Copy link
Contributor Author

BobWay commented Mar 11, 2014

Moved to JIRA

MarkusTeufelberger pushed a commit to MarkusTeufelberger/rippled that referenced this issue Sep 21, 2015
1fdd726 Hotfix RocksDB 3.5
d67500a Add `make install` to Makefile in 3.5.fb.
4cb631a update HISTORY.md
cfd0946 comments about the BlockBasedTableOptions migration in Options
REVERT: 25888ae Merge pull request XRPLF#329 from fyrz/master
REVERT: 89833e5 Fixed signed-unsigned comparison warning in db_test.cc
REVERT: fcac705 Fixed compile warning on Mac caused by unused variables.
REVERT: b3343fd resolution for java build problem introduced by 5ec53f3
REVERT: 187b299 ForwardIterator: update prev_key_ only if prefix hasn't changed
REVERT: 5ec53f3 make compaction related options changeable
REVERT: d122e7b Update INSTALL.md
REVERT: 986dad0 Merge pull request XRPLF#324 from dalgaaf/wip-da-SCA-20140930
REVERT: 8ee75dc db/memtable.cc: remove unused variable merge_result
REVERT: 0fd8bbc db/db_impl.cc: reduce scope of prefix_initialized
REVERT: 676ff7b compaction_picker.cc: remove check for >=0 for unsigned
REVERT: e55aea5 document_db.cc: fix assert
REVERT: d517c83 in_table_factory.cc: use correct format specifier
REVERT: b140375 ttl/ttl_test.cc: prefer prefix ++operator for non-primitive types
REVERT: 43c789c spatialdb/spatial_db.cc: use !empty() instead of 'size() > 0'
REVERT: 0de452e document_db.cc: pass const parameter by reference
REVERT: 4cc8643 util/ldb_cmd.cc: prefer prefix ++operator for non-primitive types
REVERT: af8c2b2 util/signal_test.cc: suppress intentional null pointer deref
REVERT: 33580fa db/db_impl.cc: fix object handling, remove double lines
REVERT: 873f135 db_ttl_impl.h: pass func parameter by reference
REVERT: 8558457 ldb_cmd_execute_result.h: perform init in initialization list
REVERT: 063471b table/table_test.cc: pass func parameter by reference
REVERT: 93548ce table/cuckoo_table_reader.cc: pass func parameter by ref
REVERT: b8b7117 db/version_set.cc: use !empty() instead of 'size() > 0'
REVERT: 8ce050b table/bloom_block.*: pass func parameter by reference
REVERT: 53910dd db_test.cc: pass parameter by reference
REVERT: 68ca534 corruption_test.cc: pass parameter by reference
REVERT: 7506198 cuckoo_table_db_test.cc: add flush after delete
REVERT: 1f96330 Print MB per second compaction throughput separately for reads and writes
REVERT: ffe3d49 Add an instruction about SSE in INSTALL.md
REVERT: ee1f3cc Package generation for Ubuntu and CentOS
REVERT: f0f7955 Fixing comile errors on OS X
REVERT: 99fb613 remove 2 space linter
REVERT: b2d64a4 Fix linters, second try
REVERT: 747523d Print per column family metrics in db_bench
REVERT: 56ebd40 Fix arc lint (should fix XRPLF#238)
REVERT: 637f891 Merge pull request XRPLF#321 from eonnen/master
REVERT: 827e31c Make test use a compatible type in the size checks.
REVERT: fd5d80d CompactedDB: log using the correct info_log
REVERT: 2faf49d use GetContext to replace callback function pointer
REVERT: 983d2de Add AUTHORS file. Fix XRPLF#203
REVERT: abd70c5 Merge pull request XRPLF#316 from fyrz/ReverseBytewiseComparator
REVERT: 2dc6f62 handle kDelete type in cuckoo builder
REVERT: 8b8011a Changed name of ReverseBytewiseComparator based on review comment
REVERT: 389edb6 universal compaction picker: use double for potential overflow
REVERT: 5340484 Built-in comparator(s) in RocksJava
REVERT: d439451 delay initialization of cuckoo table iterator
REVERT: 94997ea reduce memory usage of cuckoo table builder
REVERT: c627595 improve memory efficiency of cuckoo reader
REVERT: 581442d option to choose module when calculating CuckooTable hash
REVERT: fbd2daf CompactedDBImpl::MultiGet() for better CuckooTable performance
REVERT: 3c68006 CompactedDBImpl
REVERT: f7375f3 Fix double deletes
REVERT: 21ddcf6 Remove allow_thread_local
REVERT: fb4a492 Merge pull request XRPLF#311 from ankgup87/master
REVERT: 611e286 Merge branch 'master' of https://github.com/facebook/rocksdb
REVERT: 0103b44 Merge branch 'master' of ssh://github.com/ankgup87/rocksdb
REVERT: 1dfb7bb Add block based table config options
REVERT: cdaf44f Enlarge log size cap when printing file summary
REVERT: 7cc1ed7 Merge pull request XRPLF#309 from naveenatceg/staticbuild
REVERT: ba6d660 Resolving merge conflict
REVERT: 51eeaf6 Addressing review comments
REVERT: fd7d3fe Addressing review comments (adding a env variable to override temp directory)
REVERT: cf7ace8 Addressing review comments
REVERT: 0a29ce5 re-enable BlockBasedTable::SetupForCompaction()
REVERT: 55af370 Remove TODO for checking index checksums
REVERT: 3d74f09 Fix compile
REVERT: 53b0039 Fix release compile
REVERT: d0de413 WriteBatchWithIndex to allow different Comparators for different column families
REVERT: 57a32f1 change target_file_size_base to uint64_t
REVERT: 5e6aee4 dont create backup_input if compaction filter v2 is not used
REVERT: 49b5f94 Merge pull request XRPLF#306 from Liuchang0812/fix_cast
REVERT: 787cb4d remove cast, replace %llu with % PRIu64
REVERT: a7574d4 Update logging.cc
REVERT: 7e0dcb9 Update logging.cc
REVERT: 57fa3cc Merge pull request XRPLF#304 from Liuchang0812/fix-check
REVERT: cd44522 Merge pull request XRPLF#305 from Liuchang0812/fix-logging
REVERT: 6a031b6 remove unused variable
REVERT: 4436f17 fixed XRPLF#303: replace %ld with % PRId64
REVERT: 7a1bd05 Merge pull request XRPLF#302 from ankgup87/master
REVERT: 423e52c Merge branch 'master' of https://github.com/facebook/rocksdb
REVERT: bfeef94 Add rate limiter
REVERT: 32f2532 Print compression_size_percent as a signed int
REVERT: 976caca Skip AllocateTest if fallocate() is not supported in the file system
REVERT: 3b897cd Enable no-fbcode RocksDB build
REVERT: f445947 RocksDB: Format uint64 using PRIu64 in db_impl.cc
REVERT: e17bc65 Merge pull request XRPLF#299 from ankgup87/master
REVERT: b93797a Fix build
REVERT: adae3ca [Java] Fix JNI link error caused by the removal of options.db_stats_log_interval
REVERT: 90b8c07 Fix unit tests errors
REVERT: 51af7c3 CuckooTable: add one option to allow identity function for the first hash function
REVERT: 0350435 Fixed a signed-unsigned comparison in spatial_db.cc -- issue XRPLF#293
REVERT: 2fb1fea Fix syncronization issues
REVERT: ff76895 Remove some unnecessary constructors
REVERT: feadb9d fix cuckoo table builder test
REVERT: 3c232e1 Fix mac compile
REVERT: 54cada9 Run make format on PR XRPLF#249
REVERT: 27b22f1 Merge pull request XRPLF#249 from tdfischer/decompression-refactoring
REVERT: fb6456b Replace naked calls to operator new and delete (Fixes XRPLF#222)
REVERT: 5600c8f cuckoo table: return estimated size - 1
REVERT: a062e1f SetOptions() for memtable related options
REVERT: e4eca6a Options conversion function for convenience
REVERT: a7c2094 Merge pull request XRPLF#292 from saghmrossi/master
REVERT: 4d05234 Merge branch 'master' of github.com:saghmrossi/rocksdb
REVERT: 60a4aa1 Test use_mmap_reads
REVERT: 94e43a1 [Java] Fixed 32-bit overflowing issue when converting jlong to size_t
REVERT: f9eaaa6 added include for inttypes.h to fix nonworking printf statements
REVERT: f090575 Replaced "built on on earlier work" by "built on earlier work" in README.md
REVERT: faad439 Fix XRPLF#284
REVERT: 49aacd8 Fix make install
REVERT: acb9348 [Java] Include WriteBatch into RocksDBSample.java, fix how DbBenchmark.java handles WriteBatch.
REVERT: 4a27a2f Don't sync manifest when disableDataSync = true
REVERT: 9b8480d Merge pull request XRPLF#287 from yinqiwen/rate-limiter-crash-fix
REVERT: 28be16b fix rate limiter crash XRPLF#286
REVERT: 04ce1b2 Fix XRPLF#284
REVERT: add22e3 standardize scripts to run RocksDB benchmarks
REVERT: dee91c2 WriteThread
REVERT: 540a257 Fix WAL synced
REVERT: 24f034b Merge pull request XRPLF#282 from Chilledheart/develop
REVERT: 49fe329 Fix build issue under macosx
REVERT: ebb5c65 Add make install
REVERT: 0352a9f add_wrapped_bloom_test
REVERT: 9c0e66c Don't run background jobs (flush, compactions) when bg_error_ is set
REVERT: a9639bd Fix valgrind test
REVERT: d1f24dc Relax FlushSchedule test
REVERT: 3d9e6f7 Push model for flushing memtables
REVERT: 059e584 [unit test] CompactRange should fail if we don't have space
REVERT: dd641b2 fix RocksDB java build
REVERT: 53404d9 add_qps_info_in cache bench
REVERT: a52cecb Fix Mac compile
REVERT: 092f97e Fix comments and typos
REVERT: 6cc1286 Added a few statistics for BackupableDB
REVERT: 0a42295 Fix SimpleWriteTimeoutTest
REVERT: 06d9862 Always pass MergeContext as pointer, not reference
REVERT: d343c3f Improve db recovery
REVERT: 6bb7e3e Merger test
REVERT: 88841bd Explicitly cast char to signed char in Hash()
REVERT: 5231146 MemTableOptions
REVERT: 1d284db Addressing review comments
REVERT: 55114e7 Some updates for SpatialDB
REVERT: 171d4ff remove TailingIterator reference in db_impl.h
REVERT: 9b0f7ff rename version_set options_ to db_options_ to avoid confusion
REVERT: 2d57828 Check stop level trigger-0 before slowdown level-0 trigger
REVERT: 659d2d5 move compaction_filter to immutable_options
REVERT: 048560a reduce references to cfd->options() in DBImpl
REVERT: 011241b DB::Flush() Do not wait for background threads when there is nothing in mem table
REVERT: a2bb7c3 Push- instead of pull-model for managing Write stalls
REVERT: 0af157f Implement full filter for block based table.
REVERT: 9360cc6 Fix valgrind issue
REVERT: 02d5bff Merge pull request XRPLF#277 from wankai/master
REVERT: 88a2f44 fix comments
REVERT: 7c16e39 Merge pull request XRPLF#276 from wankai/master
REVERT: 8237738 replace hard-coded number with named variable
REVERT: db8ca52 Merge pull request XRPLF#273 from nbougalis/static-analysis
REVERT: b7b031f Merge pull request XRPLF#274 from wankai/master
REVERT: 4c2b1f0 Merge remote-tracking branch 'upstream/master'
REVERT: a5d2863 typo improvement
REVERT: 9f8aa09 Don't leak data returned by opendir
REVERT: d1cfb71 Remove unused member(s)
REVERT: bfee319 sizeof(int*) where sizeof(int) was intended
REVERT: d40c1f7 Add missing break statement
REVERT: 2e97c38 Avoid off-by-one error when using readlink
REVERT: 40ddc3d add cache bench
REVERT: 9f1c80b Drop column family from write thread
REVERT: 8de151b Add db_bench with lots of column families to regression tests
REVERT: c9e419c rename options_ to db_options_ in DBImpl to avoid confusion
REVERT: 5cd0576 Fix compaction bug in Cuckoo Table Builder. Use kvs_.size() instead of num_entries in FileSize() method.
REVERT: 0fbb3fa fixed memory leak in unit test DBIteratorBoundTest
REVERT: adcd253 fix asan check
REVERT: 4092b7a Merge pull request XRPLF#272 from project-zerus/patch-1
REVERT: bb6ae0f fix more compile warnings
REVERT: 6d31441 Merge pull request XRPLF#271 from nbougalis/cleanups
REVERT: 0cd0ec4 Plug memory leak during index creation
REVERT: 4329d74 Fix swapped variable names to accurately reflect usage
REVERT: 45a5e3e Remove path with arena==nullptr from NewInternalIterator
REVERT: 5665e5e introduce ImmutableOptions
REVERT: e0b99d4 created a new ReadOptions parameter 'iterate_upper_bound'
REVERT: 51ea889 Fix travis builds
REVERT: a481626 Relax backupable rate limiting test
REVERT: f7f973d Merge pull request XRPLF#269 from huahang/patch-2
REVERT: ef5b384 fix a few compile warnings
REVERT: 2fd3806 Merge pull request XRPLF#263 from wankai/master
REVERT: 1785114 delete unused Comparator
REVERT: 1b1d961 update HISTORY.md
REVERT: 703c3ea comments about the BlockBasedTableOptions migration in Options
REVERT: 4b5ad88 Merge pull request XRPLF#260 from wankai/master
REVERT: 19cc588 change to filter_block std::unique_ptr support RAII
REVERT: 9b976e3 Merge pull request XRPLF#259 from wankai/master
REVERT: 5d25a46 Merge remote-tracking branch 'upstream/master'
REVERT: dff2b1a typo improvement
REVERT: 343e98a Reverting import change
REVERT: ddb8039 RocksDB static build Make file changes to download and build the dependencies .Load the shared library when RocksDB is initialized

git-subtree-dir: src/rocksdb2
git-subtree-split: 1fdd726a8254c13d0c66d8db8130ad17c13d7bcc
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Jan 26, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Jan 27, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Jan 30, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Jan 31, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Jan 31, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
vinniefalco added a commit to vinniefalco/rippled that referenced this issue Feb 1, 2017
9d560f9 Merge XRPLF#428: Exhaustive recovery
2cee5fd exhaustive tests: add recovery module
8225239 Merge XRPLF#433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
2928420 Merge XRPLF#427: Remove Schnorr from travis as well
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
8eecc4a Remove Schnorr from travis as well
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign
a8abae7 Merge XRPLF#310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge XRPLF#425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge XRPLF#407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge XRPLF#411: Remove guarantees about memcmp-ability
40c8d7e Merge XRPLF#421: Update scalar_4x64_impl.h
a922365 Merge XRPLF#422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge XRPLF#413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
7a49cac Merge XRPLF#410: Add string.h include to ecmult_impl
0bbd5d4 Add string.h include to ecmult_impl
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order
c5b32e1 Merge XRPLF#405: Make secp256k1_fe_sqrt constant time
926836a Make secp256k1_fe_sqrt constant time
e2a8e92 Merge XRPLF#404: Replace 3M + 4S doubling formula with 2M + 5S one
8ec49d8 Add note about 2M + 5S doubling formula
5a91bd7 Merge XRPLF#400: A couple minor cleanups
ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags
a6c6f99 Remove a bunch of unused stdlib #includes
65285a6 Merge XRPLF#403: configure: add flag to disable OpenSSL tests
a9b2a5d configure: add flag to disable OpenSSL tests
b340123 Merge XRPLF#402: Add support for testing quadratic residues
e6e9805 Add function for testing quadratic residue field/group elements.
efd953a Add Jacobi symbol test via GMP
fa36a0d Merge XRPLF#401: ecmult_const: unify endomorphism and non-endomorphism skew cases
c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases
0b3e618 Merge XRPLF#378: .gitignore build-aux cleanup
6042217 Merge XRPLF#384: JNI: align shared files copyright/comments to bitcoinj's
24ad20f Merge XRPLF#399: build: verify that the native compiler works for static precomp
b3be852 Merge XRPLF#398: Test whether ECDH and Schnorr are enabled for JNI
aa0b1fd build: verify that the native compiler works for static precomp
eee808d Test whether ECDH and Schnorr are enabled for JNI
7b0fb18 Merge XRPLF#366: ARM assembly implementation of field_10x26 inner (rebase of XRPLF#173)
001f176 ARM assembly implementation of field_10x26 inner
0172be9 Merge XRPLF#397: Small fixes for sha256
3f8b78e Fix undefs in hash_impl.h
2ab4695 Fix state size in sha256 struct
6875b01 Merge XRPLF#386: Add some missing `VERIFY_CHECK(ctx != NULL)`
2c52b5d Merge XRPLF#389: Cast pointers through uintptr_t under JNI
43097a4 Merge XRPLF#390: Update bitcoin-core GitHub links
31c9c12 Merge XRPLF#391: JNI: Only call ecdsa_verify if its inputs parsed correctly
1cb2302 Merge XRPLF#392: Add testcase which hits additional branch in secp256k1_scalar_sqr
d2ee340 Merge XRPLF#388: bench_ecdh: fix call to secp256k1_context_create
093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr
a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly
faa2a11 Update bitcoin-core GitHub links
47b9e78 Cast pointers through uintptr_t under JNI
f36f9c6 bench_ecdh: fix call to secp256k1_context_create
bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK`
6ceea2c align shared files copyright/comments to bitcoinj's
70141a8 Update .gitignore
7b549b1 Merge XRPLF#373: build: fix x86_64 asm detection for some compilers
bc7c93c Merge XRPLF#374: Add note about y=0 being possible on one of the sextic twists
e457018 Merge XRPLF#364: JNI rebased
86e2d07 JNI library: cleanup, removed unimplemented code
3093576 JNI library
bd2895f Merge pull request XRPLF#371
e72e93a Add note about y=0 being possible on one of the sextic twists
3f8fdfb build: fix x86_64 asm detection for some compilers
e5a9047 [Trivial] Remove double semicolons
c18b869 Merge pull request XRPLF#360
3026daa Merge pull request XRPLF#302
03d4611 Add sage verification script for the group laws
a965937 Merge pull request XRPLF#361
83221ec Add experimental features to configure
5d4c5a3 Prevent damage_array in the signature test from going out of bounds.
419bf7f Merge pull request XRPLF#356
6c527ec Merge pull request XRPLF#357
445f7f1 Fix for Windows compile issue
03d84a4 Benchmark against OpenSSL verification
2bfb82b Merge pull request XRPLF#351
06aeea5 Turn secp256k1_ec_pubkey_serialize outlen to in/out
970164d Merge pull request XRPLF#348
64666251 Improvements for coordinate decompression
e2100ad Merge pull request XRPLF#347
8e48787 Change secp256k1_ec_pubkey_combine's count argument to size_t.
c69dea0 Clear output in more cases for pubkey_combine, adds tests.
269d422 Comment copyediting.
b4d17da Merge pull request XRPLF#344
4709265 Merge pull request XRPLF#345
26abce7 Adds 32 static test vectors for scalar mul, sqr, inv.
5b71a3f Better error case handling for pubkey_create & pubkey_serialize, more tests.
3b7bc69 Merge pull request XRPLF#343
eed87af Change contrib/laxder from headers-only to files compilable as standalone C
d7eb1ae Merge pull request XRPLF#342
7914a6e Make lax_der_privatekey_parsing.h not depend on internal code
73f64ff Merge pull request XRPLF#339
9234391 Overhaul flags handling
1a36898 Make flags more explicit, add runtime checks.
1a3e03a Merge pull request XRPLF#340
96be204 Add additional tests for eckey and arg-checks.
bb5aa4d Make the tweak function zeroize-output-on-fail behavior consistent.
4a243da Move secp256k1_ec_privkey_import/export to contrib.
1b3efc1 Move secp256k1_ecdsa_sig_recover into the recovery module.
e3cd679 Eliminate all side-effects from VERIFY_CHECK() usage.
b30fc85 Avoid nonce_function_rfc6979 algo16 argument emulation.
70d4640 Make secp256k1_ec_pubkey_create skip processing invalid secret keys.
6c476a8 Minor comment improvements.
131afe5 Merge pull request XRPLF#334
0c6ab2f Introduce explicit lower-S normalization
fea19e7 Add contrib/lax_der_parsing.h
3bb9c44 Rewrite ECDSA signature parsing code
fa57f1b Use secp256k1_rand_int and secp256k1_rand_bits more
49b3749 Add new tests for the extra testrand functions
f684d7d Faster secp256k1_rand_int implementation
251b1a6 Improve testrand: add extra random functions
31994c8 Merge pull request XRPLF#338
f79aa88 Bugfix: swap arguments to noncefp
c98df26 Merge pull request XRPLF#319
67f7da4 Extensive interface and operations tests for secp256k1_ec_pubkey_parse.
ee2cb40 Add ARG_CHECKs to secp256k1_ec_pubkey_parse/secp256k1_ec_pubkey_serialize
7450ef1 Merge pull request XRPLF#328
68a3c76 Merge pull request XRPLF#329
98135ee Merge pull request XRPLF#332
37100d7 improve ECDH header-doc
b13d749 Fix couple of typos in API comments
7c823e3 travis: fixup module configs
cc3141a Merge pull request XRPLF#325
ee58fae Merge pull request XRPLF#326
213aa67 Do not force benchmarks to be statically linked.
338fc8b Add API exports to secp256k1_nonce_function_default and secp256k1_nonce_function_rfc6979.
52fd03f Merge pull request XRPLF#320
9f6993f Remove some dead code.
357f8cd Merge pull request XRPLF#314
118cd82 Use explicit symbol visibility.
4e64608 Include public module headers when compiling modules.
1f41437 Merge pull request XRPLF#316
fe0d463 Merge pull request XRPLF#317
cfe0ed9 Fix miscellaneous style nits that irritate overactive static analysis.
2b199de Use the explicit NULL macro for pointer comparisons.
9e90516 Merge pull request XRPLF#294
dd891e0 Get rid of _t as it is POSIX reserved
201819b Merge pull request XRPLF#313
912f203 Eliminate a few unbraced statements that crept into the code.
eeab823 Merge pull request XRPLF#299
486b9bb Use a flags bitfield for compressed option to secp256k1_ec_pubkey_serialize and secp256k1_ec_privkey_export
05732c5 Callback data: Accept pointers to either const or non-const data
1973c73 Bugfix: Reinitialise buffer lengths that have been used as outputs
788038d Use size_t for lengths (at least in external API)
c9d7c2a secp256k1_context_set_{error,illegal}_callback: Restore default handler by passing NULL as function argument
9aac008 secp256k1_context_destroy: Allow NULL argument as a no-op
64b730b secp256k1_context_create: Use unsigned type for flags bitfield
cb04ab5 Merge pull request XRPLF#309
a551669 Merge pull request XRPLF#295
81e45ff Update group_impl.h
85e3a2c Merge pull request XRPLF#112
b2eb63b Merge pull request XRPLF#293
dc0ce9f [API BREAK] Change argument order to out/outin/in
6d947ca Merge pull request XRPLF#298
c822693 Merge pull request XRPLF#301
6d04350 Merge pull request XRPLF#303
7ab311c Merge pull request XRPLF#304
5fb3229 Fixes a bug where bench_sign would fail due to passing in too small a buffer.
263dcbc remove unused assignment
b183b41 bugfix: "ARG_CHECK(ctx != NULL)" makes no sense
6da1446 build: fix parallel build
5eb4356 Merge pull request XRPLF#291
c996d53 Print success
9f443be Move pubkey recovery code to separate module
d49abbd Separate ECDSA recovery tests
439d34a Separate recoverable and normal signatures
a7b046e Merge pull request XRPLF#289
f66907f Improve/reformat API documentation secp256k1.h
2f77487 Add context building benchmarks
cc623d5 Merge pull request XRPLF#287
de7e398 small typo fix
9d96e36 Merge pull request XRPLF#280
432e1ce Merge pull request XRPLF#283
14727fd Use correct name in gitignore
356b0e9 Actually test static precomputation in Travis
ff3a5df Merge pull request XRPLF#284
2587208 Merge pull request XRPLF#212
a5a66c7 Add support for custom EC-Schnorr-SHA256 signatures
d84a378 Merge pull request XRPLF#252
72ae443 Improve perf. of cmov-based table lookup
92e53fc Implement endomorphism optimization for secp256k1_ecmult_const
ed35d43 Make `secp256k1_scalar_add_bit` conditional; make `secp256k1_scalar_split_lambda_var` constant time
91c0ce9 Add benchmarks for ECDH and const-time multiplication
0739bbb Add ECDH module which works by hashing the output of ecmult_const
4401500 Add constant-time multiply `secp256k1_ecmult_const` for ECDH
e4ce393 build: fix hard-coded usage of "gen_context"
b8e39ac build: don't use BUILT_SOURCES for the static context header
baa75da tests: add a couple tests
ae4f0c6 Merge pull request XRPLF#278
995c548 Introduce callback functions for dealing with errors.
c333074 Merge pull request XRPLF#282
18c329c Remove the internal secp256k1_ecdsa_sig_t type
74a2acd Add a secp256k1_ecdsa_signature_t type
23cfa91 Introduce secp256k1_pubkey_t type
4c63780 Merge pull request XRPLF#269
3e6f1e2 Change rfc6979 implementation to be a generic PRNG
ed5334a Update configure.ac to make it build on OpenBSD
1b68366 Merge pull request XRPLF#274
a83bb48 Make ecmult static precomputation default
166b32f Merge pull request XRPLF#276
c37812f Add gen_context src/ecmult_static_context.h to CLEANFILES to fix distclean.
125c15d Merge pull request XRPLF#275
76f6769 Fix build with static ecmult altroot and make dist.
5133f78 Merge pull request XRPLF#254
b0a60e6 Merge pull request XRPLF#258
733c1e6 Add travis build to test the static context.
fbecc38 Add ability to use a statically generated ecmult context.
4fb174d Merge pull request XRPLF#263
4ab8990 Merge pull request XRPLF#270
bdf0e0c Merge pull request XRPLF#271
31d0c1f Merge pull request XRPLF#273
eb2c8ff Add missing casts to SECP256K1_FE_CONST_INNER
55399c2 Further performance improvements to _ecmult_wnaf
99fd963 Add secp256k1_ec_pubkey_compress(), with test similar to the related decompress() function.
145cc6e Improve performance of _ecmult_wnaf
36b305a Verify the result of GMP modular inverse using non-GMP code
e2a07c7 Fix compilation with C++
2b4cf41 Use pkg-config always when possible, with failover to manual checks for libcrypto

git-subtree-dir: src/secp256k1
git-subtree-split: 9d560f992db26612ce2630b194aef5f44d63a530
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant