Implement and integrate new Incremental Merkle Tree This supersedes #823. ---- This is an implementation of a new incremental merkle tree with * no memory safety issues * a more sensible internal design * better space efficiency (tree representation, witnessing) * simpler API It is intended that this tracks the behavior of the previous tree, which it does, as verified by tests. I even wrote a little circuit for testing that all the paths work. This PR also integrates the tree into the codebase and deprecates the old tree in almost all of our code. (I left it alone in `zerocashTest` but everything else has been changed.) This change is compatible with the testnet but you will need to clear your *local* blockchain data out since the serialized representation of the merkle tree is now different. Closes #517, Closes #519, Closes #591, Closes #460, Closes #473
46 lines
1.2 KiB
Makefile
46 lines
1.2 KiB
Makefile
bin_PROGRAMS += \
|
|
zerocash/GenerateParamsForFiles \
|
|
zerocash/tests/utilTest \
|
|
zerocash/tests/zerocashTest \
|
|
zerocash/tests/test_zerocash_pour_ppzksnark
|
|
|
|
# tool for generating our public parameters
|
|
zerocash_GenerateParamsForFiles_SOURCES = zerocash/GenerateParamsForFiles.cpp
|
|
zerocash_GenerateParamsForFiles_LDADD = \
|
|
$(BOOST_LIBS) \
|
|
$(LIBZEROCASH) \
|
|
$(LIBBITCOIN_CRYPTO) \
|
|
$(LIBZEROCASH_LIBS)
|
|
|
|
# tests for utilities that come with zerocash
|
|
zerocash_tests_utilTest_SOURCES = zerocash/tests/utilTest.cpp
|
|
zerocash_tests_utilTest_LDADD = \
|
|
$(BOOST_LIBS) \
|
|
$(LIBZEROCASH) \
|
|
$(LIBBITCOIN_UTIL) \
|
|
$(LIBBITCOIN_CRYPTO) \
|
|
$(LIBZEROCASH_LIBS)
|
|
|
|
# tests for libzerocash APIs
|
|
zerocash_tests_zerocashTest_SOURCES = \
|
|
zerocash/tests/zerocashTest.cpp \
|
|
zerocash/tests/timer.cpp
|
|
|
|
zerocash_tests_zerocashTest_LDADD = \
|
|
$(BOOST_LIBS) \
|
|
$(LIBZEROCASH) \
|
|
$(LIBBITCOIN_UTIL) \
|
|
$(LIBBITCOIN_CRYPTO) \
|
|
$(LIBZEROCASH_LIBS)
|
|
|
|
# tests for our zkSNARK circuit
|
|
|
|
zerocash_tests_test_zerocash_pour_ppzksnark_SOURCES = zerocash/tests/test_zerocash_pour_ppzksnark.cpp
|
|
zerocash_tests_test_zerocash_pour_ppzksnark_LDADD = \
|
|
$(BOOST_LIBS) \
|
|
$(LIBZEROCASH) \
|
|
$(LIBBITCOIN_UTIL) \
|
|
$(LIBBITCOIN_CRYPTO) \
|
|
$(LIBZEROCASH_LIBS)
|
|
|