Commit Graph

1075 Commits

Author SHA1 Message Date
Deirdre Connolly ed81c92365
s/enableSpendsOrchard/enableOutputsOrchard/ re: no new notes 2021-03-19 02:08:46 -04:00
Daira Hopwood ebe3800b2b Regenerate PDFs. 2021-03-17 20:00:51 +00:00
Daira Hopwood f0fa13761e Regenerate PDFs. 2021-03-17 19:55:50 +00:00
Daira Hopwood 3b558b2146 Set date in Change History entry for v2021.1.19.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:49 +00:00
Daira Hopwood c5c34cf93c Cosmetics (spacing).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:49 +00:00
Daira Hopwood 0b8a4b3d90 Correct the range of input to ValueCommit^Orchard in the action statement, and the corresponding security argument in \crossref{orchardbalance}.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:48 +00:00
Daira Hopwood e31f33c678 Fix a type error in the non-normative note at the end of \crossref{concretesinsemillacommit}.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:48 +00:00
Daira Hopwood 867d0cc712 Make DiversifyHash^Orchard total, by replacing an output of the zero point with another base.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:48 +00:00
Daira Hopwood c9b918a654 Fix a typo: 2^16 -> 2^{16}.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:48 +00:00
Daira Hopwood 17518632e1 Update the consensus rules that prevent trivial transactions (with no inputs or outputs)
to take into account action transfers in the v5 transaction format.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-17 19:55:48 +00:00
Daira Hopwood cec8b904c5 Regenerate PDFs. 2021-03-17 02:11:38 +00:00
Daira Hopwood 36074af67b Version 2021.1.18:
* Define unified payment addresses in place of the Bech32 form of Orchard addresses.
* Remove Sprout-specific fields from the v5 transaction format.
* The rho value for an Orchard output note was incorrectly described as being derived from
  rseed, instead of being set to the nullifier from the same action description as intended
  (fixes #459 ).
* The psi value is now derived using the PRF^expand input [9], instead of [10] (refs #459 ).
* Correct a note about the range of the Merkle hash inputs in \crossref{actionstatement}.
* Correct the validity condition for ak in \crossref{orchardfullviewingkeyencoding}.
* Add a definition for K^Orchard in \crossref{commitmentsandnullifiers} (fixes #460 ).
* Correct the number of full and partial rounds for Poseidon.
* Add a note explaining the origin of the 2^{65} constant in the definition of PoseidonHash.
2021-03-17 02:06:38 +00:00
Daira Hopwood 27a39088d6 Regenerate PDFs. 2021-03-15 16:27:53 +00:00
Daira Hopwood ad032d456a More WIP:
* fix the use of inputs to PRF^expand in Orchard note encryption;
* rename "hash extractor" to "coordinate extractor";
* miscellaneous minor fixes;
* set date of Change History entry.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 37d8221c4d Mainly fixes to the Action statement.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood d79de34b4a Update key components diagram.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 7cc31111bb Yet more WIP. Nullifier derivation for Orchard is correct now.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood f6fb3c80d7 More WIP.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 6ac5901a42 More WIP, and rename orchard.pdf to nu5.pdf.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood dae8852187 More Orchard WIP.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood e62d57959e More WIP.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 6453611314 * More Orchard WIP;
* The definition of a represented group abstraction function incorrectly required canonicity;
* Note about non-canonical encodings in the Jubjub gave incorrect values for encodings of the point of order 2;
* Change the spec of decryption with ovk to match zcashd (by adding \bot and subgroup checks);
* Add a note saying that a node impl that checkpoints on Sapling can omit verifying BCTV14 proofs.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 68cb4c6d5f Font hack to make sure that italic bold is not too wide.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood a81cfdb693 More WIP!
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood ad9c631ee0 More WIP for Orchard, including hashing to Pallas and Vesta.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 6215dce577 More WIP
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 0b6faf673d Update spec for Orchard up to and including section 3 (Concepts).
This includes the key derivation diagram in section 3.1.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 300df42bf3 More WIP for Orchard
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood c2c4160151 WIP: Orchard
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 16:18:54 +00:00
Daira Hopwood 7e21ab57ac Push draft of NU5 spec.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-04 03:27:02 +00:00
Alessandro Coglio 08fcc0c1f0
Add a paragraph break
It seems that this should get its own paragraph, for symmetry with nearby paragraphs.
2021-01-15 18:09:09 -08:00
Daira Hopwood 4f1ce394fe Regenerate PDFs. 2021-01-11 00:15:27 +00:00
Daira Hopwood 894c979a3d protocol/Makefile: add new .pdf files if needed.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-11 00:10:37 +00:00
Daira Hopwood adced97391 Update Change History version and date.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-11 00:08:20 +00:00
Daira Hopwood 6dc375e9ec Add (experimental, unused) support for linking consensus rules with the corresponding code.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:56:30 +00:00
Daira Hopwood 9bc9823a23 Add macros and Makefile support for building the Orchard draft specification.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:56:30 +00:00
Daira Hopwood 3751c9973d QED-it changed the spelling of their company name to QEDIT.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:46:24 +00:00
Daira Hopwood a5b78961f4 Clarify the encoding of block heights for the "height in coinbase" rule.
The description of this rule has also moved from 'Block Header Encoding and Consensus' to
'Transaction Encoding and Consensus'.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:45:53 +00:00
Daira Hopwood 0bd8580d1a Include the activation dates of Heartwood and Canopy in 'Network Upgrades'.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:40:03 +00:00
Daira Hopwood 1ddc19ffaa Section links in the Heartwood and Canopy versions of the specification now go to the correct document URL.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:37:16 +00:00
Daira Hopwood 34de56533f Protocol spec: use cmap package to attempt to improve search/copy-paste on some PDF readers.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-10 23:32:54 +00:00
Daira Hopwood c136527758 Regenerate PDFs. 2020-11-06 01:09:37 +00:00
Daira Hopwood 3274aa10de Avoid undefined references when building sprout.pdf.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 9a8f72c5e3 Add release date.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 7999296d7d Minor corrections.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 6e3c173538 Update a comment about BIPs (which is not in the rendered document).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood c278c2f93a Reserve transaction version 0x7FFFFFFF and version group ID 0xFFFFFFFF for experimental use.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 9257be1d1f Add a consensus rule that the (zero-valued) coinbase transaction output of the genesis block cannot be spent.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 917dbf5c46 Add a missing consensus rule that has always been implemented in zcashd: there must be at
least one transparent output, Sapling output, or JoinSplit in a transaction.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00
Daira Hopwood 94ec65564c Define Sprout/Sapling chain value pool balances, and include consensus rules from ZIP 209.
This includes updates to ZIPs 209 and 211 for consistency of terminology (also addressing
a nit from the NCC Canopy report).

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-11-06 01:00:58 +00:00