Alex
7e540a0b6f
add sha256sum support for Mac OS X
2016-05-23 23:54:29 +02:00
zkbot
a09517f313
Auto merge of #948 - nathan-at-least:t946.fix-cov-zcash, r=nathan-at-least
...
Fix a test name bug so that ``make cov-zcash`` correctly runs the ``zcash-gtest`` binary. Fixes #946 .
2016-05-23 21:44:20 +00:00
Sean Bowe
1bcdec40a4
Refactor PRF_gadget to hand responsibility to PRF_addr_a_pk_gadget for creating the '0' argument to the PRF.
2016-05-23 10:43:25 -06:00
zkbot
671b9562f1
Auto merge of #943 - str4d:938-clientversion, r=ebfull
...
Update version and help strings for Zcash
Closes #938 .
2016-05-21 00:30:13 +00:00
Jack Grigg
b3e712a4d2
Minor error message tweak
2016-05-21 11:48:52 +12:00
Jack Grigg
c5d080bb83
Add Zcash Developers to CLI copyright notice
2016-05-20 11:56:19 +12:00
Jack Grigg
a1de76c7a0
Bitcoin -> Zcash in version and help text
2016-05-20 11:56:11 +12:00
Nathan Wilcox
7fde87cd4e
Fix a test name bug so that ``make cov-zcash`` correctly runs the ``zcash-gtest`` binary. Fixes #946 .
2016-05-19 10:52:28 -07:00
Taylor Hornby
be1bae14e8
Hide new Boost warnings on GCC 6.
2016-05-18 12:20:16 -06:00
Taylor Hornby
e334392fab
Patch libsnark to build with my compiler. Upstream PR #35 .
2016-05-18 11:22:29 -06:00
Taylor Hornby
6dc53bdc33
Turn on -Werror for the Zcash build.
2016-05-18 11:22:29 -06:00
Taylor Hornby
7c1ccd9006
Remove unused code in libzerocash util.cpp
2016-05-18 11:22:29 -06:00
Taylor Hornby
ec3bd70b6d
Ignore deprecated declaration warnings.
2016-05-18 11:22:29 -06:00
Taylor Hornby
675e17022f
Use left shift instead of floating-point pow() in equihash.
2016-05-18 11:22:29 -06:00
Taylor Hornby
6fe2e85816
Use HARDENED_CPPFLAGS in the Makefile consistently.
2016-05-18 11:22:29 -06:00
Taylor Hornby
67f3fe3d25
Fix FORTIFY_SOURCE build errors.
2016-05-18 11:22:29 -06:00
Taylor Hornby
e857a0cd1f
Fix build warnings in sighash tests.
2016-05-18 11:22:29 -06:00
Jack Grigg
fe0cacd2d8
Add Zcash revision to version strings
2016-05-18 16:50:28 +12:00
Sean Bowe
a6770caa45
Update versions and release notes.
2016-05-16 23:08:35 -06:00
Sean Bowe
383f8b0c8a
Change testnet network magics.
2016-05-16 22:54:33 -06:00
Taylor Hornby
bf2e3122ac
Remove the Merkle tree hash function's fixed point.
2016-05-16 20:20:36 -06:00
zkbot
9e387120eb
Auto merge of #908 - ebfull:trafford, r=ebfull
...
libzcash and new zkSNARK circuit implementation
This PR completes [`libzcash`](https://github.com/zcash/zcash/tree/zc.v0.11.2.latest/src/zcash ), the implementation of the [Zcash protocol specification](9bb4410e45/protocol/protocol.pdf
) and replacement of [`libzerocash`](https://github.com/Zerocash/libzerocash ), our old Zerocash protocol implementation. The new spec comes with some improvements to security and terminology, with minimal differences from the original academic design.
This implementation includes:
* A rewrite of the zkSNARK circuit for `JoinSplit` operations. This rewrite is cleaner, broken up into separate gadgets, easier to audit and review, and fixes some security bugs. (Closes #822 , Closes #809 , Closes #500 , Closes #854 )
* A minimal API for interacting with `JoinSplit`s and surrounding primitives. This PR removes almost twice as much code as it introduces. (Closes #877 , Closes #315 , Closes #824 , Closes #798 , Closes #707 , Closes #512 , Closes #247 , Closes #128 , Closes #514 )
2016-05-17 01:04:49 +00:00
Simon
b0f75847ea
Fix issue #717 where if addrman is starved of addresses (e.g. on testnet)
...
the Select_() function will loop endlessly trying to find an address,
and therefore eat up 100% cpu time on the 'opencon' thread.
Solution is to (1) add a delay to the loop and (2) restrict the number
of attempts to find an address. On exiting the loop, we return
to an outer loop in net.cpp which will sleep, add seed nodes and
calcualte new addresses.
2016-05-13 16:00:22 -07:00
Sean Bowe
1896a89cac
Add h_sig test vectors.
2016-05-12 16:45:12 -06:00
Sean Bowe
3e0af61b86
Update zkSNARK proving/verifying keys.
2016-05-12 16:45:12 -06:00
Sean Bowe
81469bbb83
`Note` values should be little-endian byte order.
2016-05-12 16:45:12 -06:00
Sean Bowe
032164d5d5
Rename hmac -> mac in circuit.
2016-05-12 16:45:12 -06:00
Sean Bowe
a9640f67f1
Rename ZCASH_ constants to ZC_.
2016-05-12 16:45:07 -06:00
Sean Bowe
53ab7c06ba
Use inheritance for PRF gadgets.
2016-05-12 16:44:49 -06:00
Sean Bowe
ccb439c510
Protect-style joinsplits should anchor to the latest root for now, until #604 is resolved.
2016-05-12 16:44:49 -06:00
Sean Bowe
0cdfab1d92
Remove the zerocash tests from the full test suite.
2016-05-12 16:44:49 -06:00
Sean Bowe
ddb03c3e8d
Fix performance measurements due to modified transaction structure.
2016-05-12 16:44:49 -06:00
Sean Bowe
b8d320df19
Update public zkSNARK parameters for new circuit.
2016-05-12 16:44:49 -06:00
Sean Bowe
4ec57478c4
Remove nearly all of libzerocash.
2016-05-12 16:44:49 -06:00
Sean Bowe
0d990f31a7
Stop testing old tree against new tree.
2016-05-12 16:44:49 -06:00
Sean Bowe
5975bf1c32
Added public zkSNARK parameter generation utility.
2016-05-12 16:44:49 -06:00
Sean Bowe
2dc3599271
Transplant of libzcash.
2016-05-12 16:44:47 -06:00
Sean Bowe
2140639309
Remove scriptPubKey/scriptSig from CPourTx, and add randomSeed.
2016-05-12 16:44:30 -06:00
Sean Bowe
5a2db9e283
libzcash: Add tests for API
2016-05-12 16:44:30 -06:00
Daira Hopwood
dbab243725
zkSNARK: Add constraint that the total value in a JoinSplit is a 64-bit integer.
2016-05-12 16:44:30 -06:00
Sean Bowe
59c3d926c6
zkSNARK: Enforce merkle authentication path from nonzero-valued public inputs to root.
2016-05-12 16:44:30 -06:00
Sean Bowe
fcece37f00
zkSNARK: Witness commitments to input notes.
2016-05-12 16:44:30 -06:00
Sean Bowe
e5f7c49d55
zkSNARK: Ensure that values balance correctly.
2016-05-12 16:44:30 -06:00
Sean Bowe
5e61a78fec
zkSNARK: Enforce disclosure of commitments to output notes.
2016-05-12 16:44:30 -06:00
Sean Bowe
6b010d9bfd
zkSNARK: Enforce that new output notes have unique `rho` to prevent faerie gold attack.
2016-05-12 16:44:30 -06:00
Sean Bowe
e52f40e839
zkSNARK: Authenticate h_sig with a_sk
2016-05-12 16:44:30 -06:00
Sean Bowe
2a2f3fb80f
zkSNARK: Enforce disclosure of input note nullifiers
2016-05-12 16:44:30 -06:00
Sean Bowe
ca8d6c9347
zkSNARK: Enforce spend-authority of input notes.
2016-05-12 16:44:30 -06:00
Sean Bowe
53d2ade7c2
zkSNARK: Add "zero" constant variable.
2016-05-12 16:44:30 -06:00
Sean Bowe
074eb3a2cf
zkSNARK: Foundations of circuit design and verification logic.
2016-05-12 16:44:30 -06:00