Go to file
Jack Grigg d4e47e4720 wallet: Fix Sapling address bug in `listaddresses`
`CWallet::FindUnifiedAddressByReceiver` is a wrapper around the visitor
`UnifiedAddressForReceiver`, which looks up the Unified Address (if any)
corresponding to the given receiver. However, this only returns external
UAs, and returns `std::nullopt` both if the receiver does not correspond
to a UFVK, and if it does but is derived from an internal FVK. By using
this method as a filter, `listaddresses` was not filtering out internal
Sapling receivers, and thus was leaking Sapling change addresses for
accounts (which we do not want revealed in the UI anywhere).

Instead, we now check for UFVK metadata directly, which verifies that
the Sapling receiver is derived from a UFVK without any extra filtering.
2022-03-22 14:55:40 +00:00
.cargo Add OrchardWallet::GetTxActions 2022-03-18 08:03:16 -06:00
.github depends: Update Rust to 1.59.0 2022-03-01 00:09:18 +00:00
build-aux/m4 Partial revert of "Update links". See #4904 2020-12-17 01:42:03 +00:00
contrib Merge pull request #5438 from sandakersmann/master 2022-03-18 16:13:43 -06:00
depends Merge pull request #5600 from superbaud/use-debian-libtinfo 2022-03-14 17:06:53 -07:00
doc Merge pull request #5693 from str4d/z_sendmany-privacy-policy 2022-03-18 08:09:43 -06:00
qa Fix bugs in wallet_addresses RPC test 2022-03-22 14:55:39 +00:00
share Update links 2020-12-13 11:24:44 +02:00
src wallet: Fix Sapling address bug in `listaddresses` 2022-03-22 14:55:40 +00:00
test/lint Do not strip quotes when verifying mnemonic seed. 2021-11-07 10:16:22 -07:00
zcutil Make a zcashd-wallet-tool executable. 2022-03-07 18:39:23 +00:00
.gitattributes Separate protocol versioning from clientversion 2014-10-29 00:24:40 -04:00
.gitignore Make a zcashd-wallet-tool executable. 2022-03-07 18:39:23 +00:00
CONTRIBUTING.md Link to development guidelines in CONTRIBUTING.md 2019-06-11 10:27:52 -05:00
COPYING Update copyright year to 2022 2021-12-27 00:30:51 +01:00
Cargo.lock Add OrchardWallet::GetTxActions 2022-03-18 08:03:16 -06:00
Cargo.toml Add OrchardWallet::GetTxActions 2022-03-18 08:03:16 -06:00
INSTALL Typo Fix 2019-08-21 11:17:21 -04:00
Makefile.am Include $(bin_SCRIPTS) in `check-symbols`, `check-security`, and `clean` targets. 2022-03-13 22:53:29 +00:00
README.md make-release.py: Versioning changes for 4.6.0-1. 2022-01-05 20:16:10 +00:00
SECURITY.md Rename responsible_disclosure.md to SECURITY.md 2021-02-18 23:38:32 +00:00
autogen.sh Enable ShellCheck rules 2020-10-26 17:36:26 +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 Merge pull request #5438 from sandakersmann/master 2022-03-18 16:13:43 -06:00
libzcash_script.pc.in Rename libzcashconsensus.la -> libzcash_script.la 2021-01-25 22:20:25 +00:00
rust-toolchain depends: Update Rust to 1.59.0 2022-03-01 00:09:18 +00:00

README.md

Zcash 4.6.0-1

What is Zcash?

Zcash is an implementation of the "Zerocash" protocol. Based on Bitcoin's code, 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.

This software is the Zcash client. 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 a day or more once the blockchain has reached a significant size.

🔒 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.

Getting Started

Please see our user guide for 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.