Go to file
Jack Grigg 8342e350b1 test: Avoid generating a chain fork in `mempool_packages` RPC test
There was a race condition here between the block generated by node 0
being broadcast to node 1, and being invalidated by node 0. Due to the
changes we made to the difficulty adjustment algorithm, the invalidated
block and the block replacing it generated by node 0 would have the same
chain work; thus if node 1 observed the invalidated block, it would
never reorg to the replacement block.

We fix this by having node 0 reconsider the invalidated block before
generating its next block. This avoids the chain fork, and also clears
the mempool to provide better separation between test stages.

Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-04-18 17:00:54 +00:00
.cargo Use published `zcash_primitives 0.11` and `zcash_proofs 0.11` 2023-04-15 01:51:29 +00:00
.github Add additional audits. 2023-04-03 16:41:07 -06:00
build-aux/m4 build-aux: Update Boost macros to latest serials 2023-01-12 02:10:22 +00:00
contrib Fix some messages, comments, and documentation that: 2023-04-17 18:49:45 +01:00
depends depends: `cxx 1.0.94` 2023-04-13 17:01:03 +00:00
doc RPC/Mining: Restore API compatibility for prioritisetransaction 2023-04-17 18:49:45 +01:00
qa test: Avoid generating a chain fork in `mempool_packages` RPC test 2023-04-18 17:00:54 +00:00
share Remove `git_check_in_repo` from genbuild.sh to fix gitian version string 2022-10-21 14:39:21 -07:00
src Minor improvements to z_shieldcoinbase 2023-04-17 15:11:10 -06:00
test/lint Appease ShellCheck 2022-12-06 10:46:43 -07:00
zcutil Update release support book page in release process 2023-03-09 03:17:56 +00:00
.editorconfig Correct EditorConfig for Makefiles 2023-04-03 13:30:59 -06:00
.gitattributes Separate protocol versioning from clientversion 2014-10-29 00:24:40 -04:00
.gitignore Add script for verifying block rewards and fees not claimed by miners. 2023-01-22 09:10:03 -07:00
CONTRIBUTING.md Link to development guidelines in CONTRIBUTING.md 2019-06-11 10:27:52 -05:00
COPYING scripted-diff: Update Zcash copyrights to 2023 2023-01-23 11:31:54 -07:00
Cargo.lock Use published `zcash_primitives 0.11` and `zcash_proofs 0.11` 2023-04-15 01:51:29 +00:00
Cargo.toml Use published `zcash_primitives 0.11` and `zcash_proofs 0.11` 2023-04-15 01:51:29 +00:00
INSTALL Update documentation link 2023-02-21 07:07:17 +01:00
Makefile.am Fix automake warnings when running autogen.sh 2023-03-13 10:11:26 -06:00
README.md make-release.py: Versioning changes for 5.4.2. 2023-02-20 19:55:37 -07:00
SECURITY.md Fix Horizen Security contact email 2023-02-17 22:16:38 +00:00
autogen.sh Enable ShellCheck rules 2022-08-20 03:13:52 +00:00
code_of_conduct.md Beef up the CoC to address use of dog-whistles. 2020-10-11 08:24:37 +01:00
configure.ac make-release.py: Versioning changes for 5.4.2. 2023-02-20 19:55:37 -07:00
libzcash_script.pc.in Rename libzcashconsensus.la -> libzcash_script.la 2021-01-25 22:20:25 +00:00
rust-toolchain.toml CI: Remove most usages of `actions-rs` actions 2023-03-16 15:38:15 +00:00

README.md

Zcash 5.4.2

What is Zcash?

Zcash is an implementation of the "Zerocash" protocol. Initially based on Bitcoin's design, Zcash intends to offer a far higher standard of privacy through a sophisticated zero-knowledge proving scheme that preserves confidentiality of transaction metadata. More technical details are available in our Protocol Specification.

The zcashd Full Node

This repository hosts the zcashd software, a Zcash consensus node implementation. It downloads and stores the entire history of Zcash transactions. Depending on the speed of your computer and network connection, the synchronization process could take several days.

The zcashd code is derived from a source fork of Bitcoin Core. The code was forked initially from Bitcoin Core v0.11.2, and the two codebases have diverged substantially.

🔒 Security Warnings

See important security warnings on the Security Information page.

Zcash is experimental and a work in progress. Use it at your own risk.

📒 Deprecation Policy

This release is considered deprecated 16 weeks after the release day. There is an automatic deprecation shutdown feature which will halt the node some time after this 16-week period. The automatic feature is based on block height.

Other Zcash Implementations

The Zebra project offers a different Zcash consensus node implementation, written largely from the ground up.

Getting Started

Please see our user guide for instructions on joining the main Zcash network.

Need Help?

  • 📘 See the documentation at the ReadTheDocs for help and more information.
  • 📨 Ask for help on the Zcash forum.
  • 💬 Join our community on Discord

Participation in the Zcash project is subject to a Code of Conduct.

Building

Build Zcash along with most dependencies from source by running the following command:

./zcutil/build.sh -j$(nproc)

Currently, Zcash is only officially supported on Debian and Ubuntu. See the Debian / Ubuntu build for detailed instructions.

License

For license information see the file COPYING.