]> Git Repo - VerusCoin.git/blame - doc/security-warnings.md
Update wording
[VerusCoin.git] / doc / security-warnings.md
CommitLineData
8fb1005c
TH
1Security Warnings
2====================
3
4Security Audit
5--------------
6
a9ca1601 7Zcash has been subjected to a formal third-party security review. For high priority security announcements, check https://z.cash.
8fb1005c 8
60991f9e
TH
9x86-64 Linux Only
10-----------------------
11
12There are [known bugs](https://github.com/scipr-lab/libsnark/issues/26) which
13make proving keys generated on 64-bit systems unusable on 32-bit and big-endian
14systems. It's unclear if a warning will be issued in this case, or if the
15proving system will be silently compromised.
16
8fb1005c
TH
17Side-Channel Attacks
18--------------------
19
20This implementation of Zcash is not resistant to side-channel attacks. You
b7220002
TH
21should assume (even unprivileged) users who are running on the hardware, or who
22are physically near the hardware, that your `zcashd` process is running on will
23be able to:
8fb1005c 24
35b3168d
TH
25- Determine the values of your secret spending keys, as well as which notes you
26 are spending, by observing cache side-channels as you perform a JoinSplit
27 operation. This is due to probable side-channel leakage in the libsnark
28 proving machinery.
8fb1005c
TH
29
30- Determine which notes you own by observing cache side-channel information
31 leakage from the incremental witnesses as they are updated with new notes.
32
2b5c33e1
TH
33- Determine which notes you own by observing the trial decryption process of
34 each note ciphertext on the blockchain.
35
8fb1005c
TH
36You should ensure no other users have the ability to execute code (even
37unprivileged) on the hardware your `zcashd` process runs on until these
38vulnerabilities are fully analyzed and fixed.
8962f2a9 39
40REST Interface
41--------------
42
43The REST interface is a feature inherited from upstream Bitcoin. By default,
44it is disabled. We do not recommend you enable it until it has undergone a
45security review.
a9ca1601 46
28799d8b 47Block Chain Reorgs
a9ca1601
JG
48----------------------------
49
28799d8b
JG
50Users should be aware of new behavior in Zcash that differs significantly from Bitcoin: in the case of a block chain reorganization, Bitcoin's coinbase maturity rule helps ensure that any reorg shorter than the maturity interval will not invalidate any of the rolled-back transactions. However for Zcash, all JoinSplits which were anchored within the reorg interval will become invalid, rolling back transactions and reverting funds to the original owner. The transaction rebroadcast mechanism inherited from Bitcoin will not successfully rebroadcast transactions containing JoinSplits if the anchor needs to change—the JoinSplit creator must do that.
51
52For receivers of funds from a JoinSplit, using a higher minconf can help mitigate the risk of relying on funds received from transactions that may be rolled back.
This page took 0.027175 seconds and 4 git commands to generate.