Daira Hopwood
219a4ef253
Clarify wording in the Change History entry for v2021.2.13.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-08-12 21:38:20 +01:00
Daira Hopwood
8718157af0
Reword the reference to a Sapling full viewing key in \crossref{saplingdummynotes}
...
(the full viewing key would include ovk, although it is not used in that section).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-08-12 21:37:35 +01:00
Daira Hopwood
b2e0184fe5
ZIP 211: wording improvement suggested by Canopy audit.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-08-04 15:35:46 +01:00
Daira Hopwood
cdb30d10ca
ZIP 215: add a citation for reference to https://zips.z.cash/protocol/protocol.pdf#concreteed25519
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-08-04 15:22:46 +01:00
str4d
88bc08b6e3
Merge pull request #538 from daira/zip-316-update
...
ZIP 316: Define HRPs for Unified Viewing Keys, and include the HRP in the padding
2021-07-30 14:53:05 +01:00
Daira Hopwood
0ae051226e
Regenerate PDFs.
2021-07-29 17:35:14 +01:00
Daira Hopwood
045a3a9e54
Cosmetics.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-29 17:30:21 +01:00
Daira Hopwood
a6fd0153d2
Add a consensus rule in \crossref{merkletree} that a block MUST NOT add note commitments that
...
exceed the capacity of each of the Sprout, Sapling, and Orchard note commitment trees.
Also add a cross-reference for constants used in \crossref{merkletree}.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-29 17:30:21 +01:00
Daira Hopwood
8b8761b302
Regenerate PDFs.
2021-07-29 15:48:31 +01:00
Daira Hopwood
1aefc848bf
Change the number of partial rounds, R_P, for Poseidon from 58 to 56.
...
This matches the number calculated by `calc_round_numbers.py` (for 128-bit security "with margin")
in Version 1.1 of the Poseidon reference implementation.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-29 15:43:24 +01:00
Daira Hopwood
cecfb9b0e4
Regenerate PDFs.
2021-07-20 06:05:58 +01:00
Daira Hopwood
411f39e231
Change the definition of inputs to the action circuit to split enableSpends and enableOutputs
...
into two field elements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-20 06:00:31 +01:00
Daira Hopwood
5e0769d295
Include the Human-Readable Part in the padding used to check for malleation.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 23:51:02 +01:00
Daira Hopwood
5d98ec714a
Add Human-Readable Parts for UVKs.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 23:50:01 +01:00
Daira Hopwood
8c510a1415
Regenerate PDFs.
2021-07-13 15:55:15 +01:00
Daira Hopwood
36e2059de0
Set Change History entry date.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
ffd97926a8
Clarify in \crossref{transactions} that the remaining value in a transparent transaction value pool
...
is only available to miners as a fee in the case of non-coinbase transactions, and that the remaining
value in the transparent transaction value pool of a coinbase transaction is destroyed.
Co-authored-by: Teor <teor@riseup.net>
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
teor
e628134536
Make heightBytes encoding match NU5 coinbase nExpiryHeight
...
Since nExpiryHeight is limited to `2^32 - 1`, heightBytes is limited to 5 bytes.
Co-authored-by: Teor <teor@riseup.net>
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
819761ef67
Cosmetics.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
8c7b2f2a95
Add cross-references for CanopyActivationHeight, ZIP212GracePeriod, and BlockHeight.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
0ad0d3d57a
Clarify that decomposition of scalars for scalar multiplication in the action circuit MUST be canonical,
...
unless a non-canonical decomposition can be proven to result in an equivalent statement -- and clarify
for which multiplications the latter case applies.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
f97ef3ae72
Remove a spurious reference to rseed in \crossref{sproutinband}. There were no changes for Sprout in ZIP 212.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-13 15:50:46 +01:00
Daira Hopwood
65ff47a022
Merge pull request #536 from daira/zip-316-clarification
...
ZIP 316: clarify requirements, especially for Unified Viewing Keys
2021-07-13 14:49:20 +01:00
Daira Hopwood
fed2bc0438
ZIP 316: more instances of Sender that should be Consumer.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-12 16:04:10 +01:00
Daira Hopwood
af1bee056f
ZIP 316: clarify requirements, especially for Unified Viewing Keys.
...
This required introducing the Consumer definition, since a Consumer
of a UVK is not necessarily a Sender.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-12 13:18:31 +01:00
Daira Hopwood
9d6fa7d8ec
ZIP 316: add links to implementation PRs.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-12 12:20:09 +01:00
Daira Hopwood
f0858810a2
Regenerate PDFs.
2021-07-01 20:01:41 +01:00
Daira Hopwood
fb83397ad7
Set the Change History entry date.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
2814e00a1a
Cosmetics and cross-referencing improvements.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
4821afe9ba
Add a clarification in \crossref{txnconsensus} that after Heartwood and before Canopy activation,
...
Sapling outputs of a coinbase transaction MUST have note plaintext lead byte equal to 0x01.
This was implied by the existing rule that such outputs MUST decrypt successfully with an
all-zero outgoing viewing key.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
172573e686
Correct an erroneous statement in \crossref{transactions} that claimed transaction IDs are not part
...
of the consensus protocol.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
55052e4e54
Add a consensus rule for version 5 or later transactions, that if `nActionsOrchard` > 0 then
...
at least one of `enableSpendsOrchard` and `enableOutputsOrchard` MUST be 1.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
3f9ede243b
Replace "must" with "MUST" in two consensus rules specified in \crossref{txnencoding}.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
7102635fc6
Correct l to l⋆ in two places in \crossref{saplingmerklecrh}.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
3159602dfc
Fix a typo in the Security Requirements for \crossref{orchardmerklecrh}: the length of the input
...
to SinsemillaHash is 10 + 2·ℓ^Orchard_Merkle bits, not 6 + 2·ℓ^Orchard_Merkle bits.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
1ed8e47d56
Allow the Merkle path validity check in the Action circuit to pass if any output of
...
MerkleCRH^Orchard is 0, and add a note in \crossref{merklepath} arguing that this is safe.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
0b7aeae33e
Change the type of MerkleCRH^Orchard to have MerkleHash^Orchard in place of MerkleHash^Orchard ∪ {⊥}
...
for the inputs and output, and map a ⊥ output from SinsemillaHash to 0.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
c33e23e0c2
Delete the consensus rule in \crossref{transactions} that required checking that each intermediate
...
Merkle root of the note commitment tree is not ⊥. Checking this rule would have imposed a
significant performance penalty, since intermediate roots do not otherwise need to be computed.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-07-01 19:54:54 +01:00
Daira Hopwood
a39618ff66
Merge pull request #529 from nuttycom/zip_0302_fix_indentation
...
Fix bullet points in the future-reserved section of zip-0302
2021-06-30 23:33:51 +01:00
Kris Nuttycombe
bcb9845f00
Fix bullet points in the future-reserved section of zip-0302
2021-06-29 12:25:47 -06:00
Daira Hopwood
076af3f055
Regenerate PDFs.
2021-06-29 18:08:21 +01:00
Daira Hopwood
75e2ae585d
Set Change History entry height.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-29 18:03:43 +01:00
Daira Hopwood
7f04e327ad
Cosmetics.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-29 18:02:17 +01:00
Daira Hopwood
b3aad58459
Add a section \crossref{txnidentifiers} on how to compute transaction IDs and \wtxids.
...
Split the transaction-related consensus rules into their own subsection \crossref{txnconsensus},
for more precise cross-referencing.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-29 18:02:00 +01:00
Daira Hopwood
4c118b813e
Describe transaction IDs and wtxids in \crossref{transactions}.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-29 17:59:15 +01:00
Daira Hopwood
9eec2ec378
Change one of the [Sapling onward] consensus rules in \crossref{txnencodingandconsensus} to have
...
the correct applicability: [Sapling to Canopy inclusive, pre-NU5].
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-29 17:57:03 +01:00
Daira Hopwood
27dc2a5fc4
Regenerate PDFs.
2021-06-28 18:10:48 +01:00
Daira Hopwood
671451008a
Add a step to the algorithm for generating an Orchard note in \crossref{orchardsend}, to restart if esk = 0.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-28 18:06:10 +01:00
Daira Hopwood
b4928747cc
Explicitly say that padding in \crossref{concretesinsemillahash} is by appending zero bits.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-28 18:06:10 +01:00
Daira Hopwood
c6247f4bd5
Cosmetics.
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-06-28 18:06:10 +01:00