Duke Leto
4d965f53eb
A bunch more libsnark deletions/updates
4 years ago
ca333
492d6703ed
sync jl777:FSM
6 years ago
Eirik Ogilvie-Wigley
7d379f18c5
Rename test objects to include sprout or sapling
6 years ago
Eirik Ogilvie-Wigley
8ea8ef9850
Rename Witnesses to include sprout or sapling
6 years ago
Eirik Ogilvie-Wigley
4fc309f0f5
Rename Merkle Trees to include sprout or sapling
6 years ago
Jack Grigg
70a7535ae8
Expose note position in IncrementalMerkleWitness
6 years ago
Jack Grigg
a6bbb26e08
Replace boost::array with std::array
6 years ago
Sean Bowe
2b002a7e60
Add implementation of Sapling merkle tree
6 years ago
Sean Bowe
a7cbb8475f
Abstract `uncommitted` and depth personalization for IncrementalMerkleTree.
6 years ago
Jack Grigg
68a1a592ca
Remove nType and nVersion from Zcash-specific code
6 years ago
jl777
e73b2055c6
Merge branch 'beta' into mergemaster
# Conflicts:
# src/main.cpp
6 years ago
Jack Grigg
4fe053e6e8
Move explicit instantiation of IncrementalMerkleTree::emptyroots into header
Fixes a -Wundefined-var-template warning with clang.
6 years ago
Jack Grigg
d58ed91af0
Optimise serialization of MerklePath, avoiding ambiguity of std::vector<bool>
The serialization enforces a maximum supported Merkle tree depth of 64.
Closes #2831 .
6 years ago
syd
4e4aa5b6ec
Get rid of underscore prefixes for include guards.
This is because they may conflict with reserved names. Also took
this opportunity to make the guards in the zcash subdir a bit
more uniform by having them all conform to ZC_<...>_H_
This closes #1272
7 years ago
Jack Grigg
5d6e1aa60f
Add total number of commitments to getblockchaininfo
8 years ago
Sean Bowe
5f0a73ce11
Improve accuracy of constraint system violation diagnostics.
8 years ago
Simon
19bec4d9bb
Fixes CID 1352715 uninitialized scalar field.
8 years ago
Jack Grigg
5abaca1af6
Fix the failing test!
8 years ago
Jack Grigg
ac91ebbe92
Add test showing that the witness cache isn't being serialised
8 years ago
Sean Bowe
7f3c7a683b
Flush to disk more consistently by accounting memory usage of serials/anchors in cache.
8 years ago
Taylor Hornby
bf2e3122ac
Remove the Merkle tree hash function's fixed point.
8 years ago
Sean Bowe
5961dcb6da
Change ciphertext length to match protocol spec, and refactor the use of constants.
8 years ago
Sean Bowe
6f1b70300d
Small nit fixes
8 years ago
Sean Bowe
482aefbd0d
Test old tree along with new tree as much as possible.
8 years ago
Sean Bowe
e1ff849d8d
New implementation of incremental merkle tree
This is a new implementation of the incremental merkle tree used by our
scheme to witness commitments to spendable value. It serves as a fixed-sized
accumulator.
This new construction has a much simpler API surface area, avoids memory
safety issues, remains pruned at all times, avoids serialization edge cases,
has more efficient insertion, and is abstract over the depth and hash
function used at the type level.
Further, it lays the groundwork for efficient "fast-forwarding" of witnesses
into the tree as the treestate is updated.
8 years ago