Jack Grigg
0a66f01304
Use depth-first scan for eliminating partial solutions instead of breadth-first
...
This reduces the peak number of lists in-memory from 2^k to k, and enables the
solver to eliminate most duplicates before it has instantiated the full set of
leaves.
2016-06-03 17:00:03 +12:00
Taylor Hornby
592b2f0e64
z4 release
2016-06-01 13:42:03 -06:00
zkbot
55bf149df9
Auto merge of #921 - str4d:optimised-equihash, r=daira
...
Optimise memory usage of Equihash implementation
Part of #857 .
2016-06-01 13:10:26 +00:00
Jack Grigg
447444ae7a
Fix nits after review
2016-06-01 23:15:04 +12:00
Sean Bowe
3960e14d91
Update performance measurement transaction.
2016-05-31 13:17:55 -06:00
Sean Bowe
10c33f0f87
Test behavior of chained pour consensus rules.
2016-05-30 22:46:44 -06:00
Sean Bowe
6c59778acb
Allow pours to be anchored to intermediate treestates of a transaction.
2016-05-30 22:46:44 -06:00
Sean Bowe
8048f4c048
Ensure merkle tree fixed point removal is tested against inside coins_tests.
2016-05-30 22:46:44 -06:00
Sean Bowe
14b12fde2b
Move new coins tests to within coins_tests test suite.
2016-05-30 22:46:44 -06:00
zkbot
19769ba6c5
Auto merge of #976 - ebfull:implement-joinsplit-signatures, r=ebfull
...
Signing pours with ed25519
This is an alternative to #964 which uses ed25519 instead of secp256k1, and avoids the separate hash for fitting the public key into the `h_sig` block. It's based on @defuse's work in that branch.
Closes #808 .
2016-05-31 03:46:30 +00:00
Sean Bowe
7c68cc0747
Add additional assertions.
2016-05-30 21:38:44 -06:00
Sean Bowe
e8af0028eb
Change error for invalid joinsplit signature for consistency.
2016-05-30 19:38:01 -06:00
Sean Bowe
3a10823ad4
Wrap lines in *CTransaction constructors.
2016-05-30 19:35:09 -06:00
Sean Bowe
1e99cbab04
Use joinsplit_sig_t in more places.
2016-05-30 19:33:28 -06:00
Sean Bowe
69c0f9128c
Enforce that the `S` value of the ed25519 signature is smaller than the group order to prevent malleability attacks.
2016-05-30 11:05:55 -06:00
Sean Bowe
320f2cc7e0
Switch to Ed25519 for cryptographic binding of joinsplits to transactions.
2016-05-30 11:05:55 -06:00
Taylor Hornby
b48122b57b
Fix tests for JoinSplit signatures
2016-05-30 11:05:43 -06:00
Taylor Hornby
a138f81404
Implement signature verification in CheckTransaction
2016-05-30 11:05:43 -06:00
Taylor Hornby
ed6c1b5d15
We don't want to benchmark signature creation / verification.
2016-05-30 11:05:43 -06:00
Taylor Hornby
6aae9d1a55
Sign JoinSplit transactions
2016-05-30 11:05:31 -06:00
zkbot
212cdc4fa4
Auto merge of #972 - bitcartel:zc.v0.11.2.z3_issue_651_remove_bitcoin_seeds, r=ebfull
...
Remove Bitcoin mainnet and testnet seeds.
Simple patch for issue #651 to remove hard-coded mainnet and testnet seeds
- they currently point to bitcoin nodes
- some are .onion addresses but Tor support has not yet been added
- gets rid of error messages in debug.log which might confuse people testing the alpha builds
2016-05-27 18:55:42 +00:00
Simon
17c4c0db48
Remove Bitcoin mainnet seeds.
2016-05-27 11:37:41 -07:00
zkbot
b1f699660f
Auto merge of #887 - str4d:mining-slow-start, r=ebfull
...
Implement mining slow start
Closes #762 .
2016-05-27 02:15:24 +00:00
Jack Grigg
068e2f1a09
Fix comment
2016-05-27 11:29:08 +12:00
Simon
1cf94c69e8
Remove Bitcoin testnet seeds.
2016-05-25 17:00:44 -07:00
Taylor Hornby
fc8c101acf
Enable -v for valgrind so we can see counts for each error.
2016-05-25 16:42:39 -06:00
Taylor Hornby
0af5e31282
Pass -DPURIFY to OpenSSL so it doesn't clutter valgrind output.
2016-05-25 16:42:39 -06:00
Taylor Hornby
d578de8e27
Add ability to run things under valgrind.
2016-05-25 16:42:36 -06:00
Sean Bowe
fd7c139e37
Pass `-fopenmp` at compile-time to enable MULTICORE.
2016-05-25 15:59:59 -06:00
Sean Bowe
e6c2d66c93
Enable MULTICORE proving behavior with omp.
2016-05-25 11:19:13 -06:00
zkbot
8ff7c0752e
Auto merge of #954 - ebfull:fix-cpourtx-structure, r=ebfull
...
CPourTx structural changes
* Enable binary serialization of proofs and the proving key (closes #799 ) and make the proofs fixed-size.
* Reorder fields of CPourTx to match the spec (closes #927 )
2016-05-25 16:33:31 +00:00
zkbot
1f07deb5db
Auto merge of #956 - ebfull:uint252, r=ebfull
...
Enforce first four bits are zero for all spending keys and phi.
This introduces a `uint252` to ensure these fields are 252-bits for the PRFs.
Closes #899
2016-05-25 14:59:00 +00:00
Simon
0dd2bf94dd
Declare constants for the maximum number of retries, when to sleep
...
between retries and how long for.
2016-05-24 23:56:31 -07:00
Philip Kaufmann
0116e20ea1
remove using namespace std from addrman.cpp
...
Signed-off-by: Simon <simon@bitcartel.com>
2016-05-24 22:53:17 -07:00
Patrick Strateman
7bfb552f63
CAddrMan::Deserialize handle corrupt serializations better.
...
Signed-off-by: Simon <simon@bitcartel.com>
2016-05-24 22:47:00 -07:00
Ethan Heilman
1bf2cb1a06
Increase test coverage for addrman and addrinfo
...
Adds several unittests for CAddrMan and CAddrInfo.
Increases the accuracy of addrman tests.
Removes non-determinism in tests by overriding the random number generator.
Extracts testing code from addrman class to test class.
Signed-off-by: Simon <simon@bitcartel.com>
2016-05-24 12:55:33 -07:00
EthanHeilman
8375e1a3e7
Creates unittests for addrman, makes addrman testable.
...
Adds several unittests for addrman to verify it works as expected.
Makes small modifications to addrman to allow deterministic and targeted tests.
Signed-off-by: Simon <simon@bitcartel.com>
2016-05-24 11:10:54 -07:00
Sean Bowe
6b5d608899
Update proving key and tests that depend on transaction structure changes
2016-05-24 11:09:17 -06:00
Sean Bowe
3ebca007f3
Reorder fields of CPourTx to reflect the spec.
2016-05-24 11:08:31 -06:00
Sean Bowe
9285bba885
Enable binary serializations of proofs and r1cs keys, and make the `CPourTx` proof field fixed-size.
2016-05-24 11:08:31 -06:00
Sean Bowe
defe37a6d4
Enforce first four bits are zero for all spending keys and phi.
2016-05-24 11:07:09 -06:00
Jack Grigg
b5c6a3af12
Use optimised Equihash solver for miner and benchmarks
...
The basic solver is still used for regtest-only purposes.
2016-05-24 23:16:53 +12:00
Jack Grigg
d4d76536a5
Use fixed-width array for storing hash and indices
2016-05-24 23:16:53 +12:00
Jack Grigg
29d9986c83
Store full indices in the same char* as the hash
2016-05-24 23:16:52 +12:00
Jack Grigg
639c40047f
Use comparator object for sorting StepRows
2016-05-24 23:16:52 +12:00
Jack Grigg
a683cc85d9
Merge *StepRow XOR and trimming operations
2016-05-24 23:16:52 +12:00
Jack Grigg
e95747288a
Use template parameters to statically initialise Equihash
2016-05-24 23:16:50 +12:00
zkbot
9cf13a3e85
Auto merge of #955 - loxal:zc.v0.11.2.latest, r=ebfull
...
#776 add sha256sum support for Mac OS X
2016-05-24 03:47:03 +00:00
zkbot
4ac1841614
Auto merge of #958 - ebfull:prf-refactor, r=ebfull
...
Refactor PRF_gadget to hand responsibility to PRF_addr_a_pk_gadget for creating the '0' argument to the PRF
Closes #930
2016-05-24 01:11:44 +00:00
Jack Grigg
39f5cb35f9
Store truncated indices in the same char* as the hash (H/T tromp for the idea!)
2016-05-24 12:02:46 +12:00