Commit Graph
100 Commits
Author SHA1 Message Date
Sean Bowe 7662d72bf4 Make more string changes. 2016-10-26 13:57:22 -06:00
Sean Bowe 58c4c0bba3 Change some Bitcoin strings to Zcash strings. 2016-10-26 13:29:05 -06:00
Sean Bowe 2399b1f9ad Add manpages for zcashd and zcash-cli binaries for debian. 2016-10-25 18:35:08 -06:00
Sean Bowe 27e3f362f0 Zcash zk-SNARK public parameters for 1.0 "Sprout". 2016-10-24 11:22:39 -06:00
Sean Bowe 74f15a73a1 Make 100KB transaction size limit a consensus rule, rather than a standard rule. 2016-10-08 00:00:23 -06:00
Sean Bowe 796c7ee52f Update to beta2 public parameters, remove regtest/testnet3 parameters
subdirectories.
2016-10-03 15:58:02 -06:00
Sean Bowe 80259d4b4f Add release notes for 1.0.0-beta1. 2016-09-09 00:41:41 -06:00
Sean Bowe 88188dc2a3 Update pchMessageStart and add testnet DNS boostrapper. 2016-09-09 00:37:49 -06:00
Sean Bowe f11099e2f0 Change version to 1.0.0. This is just a beta. 2016-09-09 00:33:20 -06:00
Sean Bowe a4b00373ab Fix transaction test in test_bitcoin. 2016-09-07 13:55:31 -06:00
Sean Bowe 50aba0ec19 Remove TODO 808. 2016-09-05 13:03:32 -06:00
Sean Bowe d7eeb7455b Fix CheckTransaction bugs. 2016-09-05 12:18:43 -06:00
Sean Bowe f6b6c9bed8 Update libsnark again. 2016-09-05 12:00:50 -06:00
Sean Bowe 7ee82c4361 Deallocate the public parameters during Shutdown. 2016-08-26 16:55:43 -06:00
Sean Bowe 393b2b7834 Update proving/verifying keys. 2016-08-22 15:48:43 -06:00
Sean Bowe decde3864d Enable MONTGOMERY_OUTPUT everywhere. 2016-08-22 15:48:43 -06:00
Sean Bowe 6a1653f009 Update libsnark dependency. 2016-08-22 15:48:20 -06:00
Sean Bowe ae6b333c75 Perform curve parameter initialization at start of gtest suite. 2016-08-22 15:47:00 -06:00
Sean Bowe f0dab51cf3 Implement zkSNARK compression. 2016-08-22 00:36:12 -06:00
ebfull 2ee6ed64eb Add parenthesis around macro value definition 2016-08-18 10:43:58 -06:00
Sean Bowe f5e5707d4c Change memo field size and relocate ciphertexts field of JoinSplit description. 2016-08-15 09:39:14 -06:00
Sean Bowe 167aece517 z7 Release 2016-07-22 15:50:04 -06:00
Sean Bowe 4d66f8f68a Add test for non-intuitive merkle tree gadget witnessing behavior. 2016-07-21 19:28:58 -06:00
Sean Bowe 25d2197043 Remove more from libsnark, and fix potential remote-DoS. 2016-07-21 18:34:59 -06:00
Sean Bowe 697cc53b29 Bump the (minimum) protocol version to avoid invoking legacy behavior from upstream. 2016-07-19 19:07:14 -06:00
Sean Bowe 1737627c4e Introduce zcsamplejoinsplit for creating a raw joinsplit description, and use it to construct the joinsplit for the performance tests that verify joinsplits. 2016-07-19 15:49:11 -06:00
Sean Bowe 1477fd3f40 Remove the constraint system from the alpha proving key. 2016-07-19 14:01:58 -06:00
Sean Bowe d36098f873 Rename pour in RPC tests. 2016-07-18 10:43:17 -06:00
Sean Bowe b78daf7de7 Change serial to nf in txdb. 2016-07-18 10:07:30 -06:00
Sean Bowe 22de160219 Fixes for indentation and local variable names. 2016-07-18 10:07:29 -06:00
Sean Bowe 28173cd0de Remove more usage of serial. 2016-07-18 10:06:18 -06:00
Sean Bowe fd933ed05e Fix tests 2016-07-18 10:06:18 -06:00
Sean Bowe 6e33353ea2 Rename pour RPC tests 2016-07-18 10:06:18 -06:00
Sean Bowe ffcfe76d4f Change encryptedbucket1 to encryptednote1. 2016-07-18 10:06:18 -06:00
Sean Bowe 9e511dbbdd Rename CSerialsCacheEntry. 2016-07-18 10:06:18 -06:00
Sean Bowe 1d184d53e1 Rename cacheSerials to cacheNullifiers and fix tests. 2016-07-18 10:06:18 -06:00
Sean Bowe cc01120a17 Rename more usage of serial. 2016-07-18 10:06:18 -06:00
Sean Bowe b7e4abd6f7 Rename some usage of 'pour'. 2016-07-18 10:06:18 -06:00
Sean Bowe bb64be52fe Rename mapSerials to mapNullifiers. 2016-07-18 10:06:18 -06:00
Sean Bowe d889a287ae Rename CSerialsMap to CNullifiersMap. 2016-07-18 10:06:18 -06:00
Sean Bowe d90e46ba8d Renaming SetSerial to SetNullifier. 2016-07-18 10:06:18 -06:00
Sean Bowe 616f8d05af Rename GetSerial to GetNullifier. 2016-07-18 10:06:18 -06:00
Sean Bowe ee964faf3d Rename HavePourRequirements to HaveJoinSplitRequirements. 2016-07-18 10:06:18 -06:00
Sean Bowe 942bc46756 Rename GetPourValueIn to GetJoinSplitValueIn 2016-07-18 10:06:18 -06:00
Sean Bowe 8f95cd3c26 Test fixes. 2016-07-18 10:06:18 -06:00
Sean Bowe bfeaf0049a Rename JSDescription's serials to nullifiers. 2016-07-18 10:06:18 -06:00
Sean Bowe 8675d94b63 Rename vpour to vjoinsplit. 2016-07-18 10:06:18 -06:00
Sean Bowe a8c68ffe99 Rename CPourTx to JSDescription. 2016-07-18 10:06:18 -06:00
Sean Bowe bf76024eb7 Pass our constraint system to libsnark, so that it doesn't need to (de)serialize it in the proving key. 2016-07-15 10:45:59 -06:00
Sean Bowe 1fad6b87e5 Initialize libsodium in this routine, which is now necessary because libsnark uses its PRNG. 2016-07-15 10:45:22 -06:00
Sean Bowe e9f9a73ab7 Update libsnark to our fork. 2016-07-15 10:45:09 -06:00
Sean Bowe 35f82c35fe Rename samplepour to samplejoinsplit 2016-07-11 11:33:14 -06:00
Sean Bowe 92b73b0dbb Remove zerocash tests from full-test-suite. 2016-07-11 10:05:55 -06:00
Sean Bowe f4091941f5 Reorder initialization routines to ensure verifying key log messages appear in debug.log. 2016-07-10 21:10:02 -06:00
Sean Bowe ffcd1c57cc Update tests with cache usage computations 2016-07-10 20:53:33 -06:00
Sean Bowe 2668a1bc13 Remove the rest of libzerocash. 2016-07-10 20:25:02 -06:00
Sean Bowe 2fbbde597c Always check valid joinsplits during performance tests, and avoid recomputing them every time we change the circuit. 2016-07-09 14:31:43 -06:00
Sean Bowe 000383c193 Increase block size to 2MB and update performance test. 2016-07-07 16:53:16 -06:00
Sean Bowe 9c45b501ad Make validatelargetx test more accurate, reduce block size limit to 1MB for now. 2016-07-06 12:07:50 -06:00
Sean Bowe 2ba9641767 Fix performance test for block verification. 2016-07-05 07:55:35 -06:00
Sean Bowe 3cb927661e Remove the mainnet checkpoints. 2016-06-29 14:21:03 -06:00
Sean Bowe 7f3c7a683b Flush to disk more consistently by accounting memory usage of serials/anchors in cache. 2016-06-27 10:52:34 -06:00
Sean Bowe 05a6d19a54 Testnet spending keys should start with 'TK'. 2016-06-16 12:16:49 -06:00
Sean Bowe f0ae0b11fe Add test to ensure spending keys always encode with 'SK' at beginning. 2016-06-15 16:25:21 -06:00
Sean Bowe 13039c5362 Make testnet addresses always start with 'tn'. 2016-06-15 16:22:36 -06:00
Sean Bowe d5d2fb71cf Guarantee first two bytes of spending key are SK 2016-06-15 16:15:54 -06:00
Sean Bowe 0d6864e465 Added encoding for Zcash spending keys. 2016-06-15 16:03:57 -06:00
Sean Bowe 6ab0a227c6 Fix test against merkle tree root. 2016-06-15 15:31:14 -06:00
Sean Bowe 83ee1903fc Add tests for CZCPaymentAddress. 2016-06-15 15:06:07 -06:00
Sean Bowe e104fcddf8 Use base58check to encode Zcash payment addresses, such that the first two bytes are "zc". 2016-06-15 14:59:05 -06:00
Sean Bowe 62b7cd6173 Do not encode leading bytes in PaymentAddress serialization; this is a task for a higher-level API. 2016-06-15 14:58:30 -06:00
Sean Bowe d212ba320b Disable enforced coinbase protection in miner_tests. 2016-06-14 15:18:52 -06:00
Sean Bowe a180d0a6c6 Rename to fCoinbaseMustBeProtected. 2016-06-14 15:16:34 -06:00
Sean Bowe 89f3cd11c7 Ensure NonContextualCheckInputs runs before routines in ContextualCheckInputs. 2016-06-14 12:41:32 -06:00
Sean Bowe 542da618df Enforce remaining softfork activation rules unconditionally. 2016-06-14 12:34:38 -06:00
Sean Bowe b3be1ef529 Enforce BIP16 and BIP30 unconditionally to all blocks. 2016-06-14 09:49:48 -06:00
Sean Bowe a667caec13 Ensure mempool integrity checks don't trip on chained joinsplits. 2016-06-13 13:02:46 -06:00
Sean Bowe c0dde76d8a Disable coinbase-must-be-protected rule on regtest. 2016-06-13 12:23:55 -06:00
Sean Bowe 1d38795f50 Prevent coinbases from being spent to transparent outputs. 2016-06-13 11:58:10 -06:00
Sean Bowe 2c901fd87d Refactor contextual and noncontextual input checks. 2016-06-13 11:52:46 -06:00
Sean Bowe 10df6fb3df Rename CheckInputs to ContextualCheckInputs since it relies on a global variable
and assumes calling conditions.
2016-06-13 11:45:41 -06:00
Sean Bowe ecd8ca5dbe Minor changes to coins_tests. 2016-06-08 09:15:44 -06:00
Sean Bowe 49ab032b5f Add test to ensure parent treestates only can appear earlier in the transaction or in the global state, not later. 2016-06-07 21:05:25 -06:00
Sean Bowe 1744fec274 Update the zkSNARK parameters. 2016-06-03 21:04:07 -06:00
Sean Bowe c5f766b9b1 Change merkle tree depth to 29. 2016-06-03 20:42:15 -06:00
Sean Bowe 83e018b160 Remove redundant constraints. 2016-06-03 20:27:51 -06: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
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
Sean Bowe 6ef996a3b6 Make sigop limit 20000 just as in Bitcoin, ignoring our change to the blocksize limit. 2016-05-25 16:46: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