Commit Graph

3160 Commits

Author SHA1 Message Date
Kris Nuttycombe 2e103629a6 ZIP 320: Add Background and Analysis sections. 2024-01-13 09:22:46 -07:00
Kris Nuttycombe 9b97740f14
Apply suggestions from code review
Co-authored-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-01-13 08:10:59 -07:00
Kris Nuttycombe ae1e49f2af ZIP 320: Specify alternatives for transparent-source addresses.
This provides two alternatives for how to implement
transparent-source-only addresses:
* A new, separate `bech32m` encoding with the `tex` human-readable part
* A modification to Unified Addresses to support the transparent-source
  requirement.
2024-01-12 16:09:24 -07:00
Daira Emma Hopwood 18cda576bc
Merge pull request #758 from daira/zip-320-stub
ZIP 320 stub: Defining an Address Type to which funds can only be sent from Transparent Addresses
2024-01-12 18:42:41 +00:00
Daira Emma Hopwood cc203e0923 ZIP 320: add stub.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-01-12 18:41:48 +00:00
GoodDaisy 4b2f5c1f5a ZIP 1007: fix typos 2024-01-07 15:30:29 +08:00
GoodDaisy fdd8a6fb60 ZIP 32: fix typos 2024-01-07 15:30:21 +08:00
Daira Emma Hopwood bf21364f78
Merge pull request #749 from daira/zip-321-clarification
ZIP 321: clarify the usage of ``req-`` and add Unified Addresses
2024-01-03 22:52:51 +00:00
Daira Emma Hopwood bc4d78641e This should not be allowed.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-01-03 22:31:30 +00:00
Daira Emma Hopwood 013b86f800 ZIP 0: Regenerate HTML.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-01-03 22:19:26 +00:00
Daira Emma Hopwood 1b72b6d065 ZIP 321: regenerate HTML.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-25 22:33:59 +00:00
Daira Emma Hopwood 7842c23eda ZIP 321: delete the recommendation not to use the new features.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-25 22:33:43 +00:00
Daira Emma Hopwood e6dc1ab660 ZIP 321: updates for Unified Addresses.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-25 22:33:43 +00:00
Daira Emma Hopwood a08c861dd9 ZIP 321: cosmetics and reference updates.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-25 22:22:13 +00:00
Daira Emma Hopwood 4c95d8b496 Regenerate PDFs. 2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 8b8d14ae02 Rename `release` Makefile target to `tag-release`. Make it not require being on main,
but check that the current branch is a descendant of the `origin` remote's `main`, i.e.
pushing to `origin main` would be a fast-forward.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 18a7b531c7 Set Change History entry date.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood cb48a537a0 Acknowledge the font designers Pablo Impallari and Morris Fuller.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood a77e74ffb6 Cosmetics: improve the appearance of italic bold.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 477fd91493 Initial attempt at making the document work with screen readers
(this doesn't work very well yet, and it may be a hopeless task).

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood dcd81b5a85 Document that Zooko came up with the name "Faerie Gold".
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 52a7763e4b ZIP 32: fix a type error in the derivation of dk_i. (The intent was clear.)
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 7082f4ddf6 ZIP 212: Cosmetics and minor rewording for clarity.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 95493805de Sort out the mess with $\mathsf{PRF^{expand}}$ domain separators.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 2a08f7be78 Add reference to my "Explaining the Security of Zcash" talk at Zcon3.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood f0457c0668 Cosmetics.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 4a61f37072 Explain the note decryption soft fork at block height 2121200.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood f24a4befab In \crossref{outputstatement}, say why $\mathsf{pk★_d}$ is typed as a
bit sequence rather than as a point.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 2ee72c97b7 In the table of \crossref{blockheader}, clarify that `hashLightClientRoot`
is used in Heartwood and Canopy, but not in NU5 or later.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood b83c7625cf Move a note about the order of arguments to NoteCommit^Orchard to a more
relevant place.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood e1ae36d208 Add notes in \crossref{spenddesc}, \crossref{outputdesc}, and
\crossref{concretehomomorphiccommit} saying that an implementation of
HomomorphicPedersenCommit^Sapling MAY resample the commitment trapdoor
until the resulting commitment is not the zero point, in order to avoid
it being rejected as the cv field of a Spend description or Output
description.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood cd9371b0ee Delete a confusing claim in \crossref{spenddesc} that "The check that rk
is not of small order is technically redundant with a check in the Spend
circuit ...". The small-order check excludes the zero point, which the
Spend authority check that this claim was intending to reference does not.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood d56323956b Document that the attacks in \cite{DKLS2020} are no better than brute force
key search against FF1-AES256 as specified in \crossref{concreteprps}.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 3b799127d1 Acknowledge Greg Pfeil as a co-designer of the Zcash protocol.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood aa2d9a4802 The abstract no longer describes the NU5 version of the specification as
a draft.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood ae88944e8c * Rename the section "Note Commitments and Nullifiers" to "Computing ρ
values and Nullifiers" to more accurately reflect its contents.
* Split some of the content of the section "Notes" into subsections
  "Note Commitments" and "Nullifiers". Make the descriptions of how
  note commitments and nullifiers are used more precise and explicit,
  and add forward references where helpful.
* Remove redundancy in the definition of note plaintexts between
  \crossref{noteptconcept} and \crossref{noteptencoding}.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood b4e3edbb8c The uses of inputs [4] and [5] to PRF^{expand}_{rseed} (or first bytes
of the input in case of Orchard), were accidentally swapped in the
protocol specification relative to ZIP 212. The implementation in zcashd
correctly followed ZIP 212, using [4] to derive rcm and [5] to derive esk.

[Note added 2023-12-07: This commit, which is between spec versions
2022.3.8 and 2023.4.0, does not accurately reflect what was deployed.
In fact the domain separators for Sapling were implemented according to
ZIP 212, but the ones for Orchard were implemented according to the spec,
i.e. swapped relative to Sapling. This has been documented in spec
version 2023.4.0.]

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 04db180f3c The return type of $GroupHash^{\mathbb{J}^{(r)*}}$ in \crossref{concretegrouphashjubjub}
was incorrectly given as $\mathbb{J}^{(r)*}$, rather than the correct
$\mathbb{J}^{(r)*} \cup \{\bot\}$.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 5f0bed973e In the discussion of partitioning oracle attacks on note encryption in
\crossref{inbandrationale}, we now use the fact that g_d has order greater
than the maximum value of ivk, rather than assuming that g_d is a non-zero
point in the prime-order subgroup. (In the case of Sapling, the circuits
only enforce that g_d is not a small-order point, not that it is in the
prime-order subgroup. It is true that honestly generated addresses have
prime-order g_d which would have been sufficient for the security argument
against this class of attacks, but the chosen fix is more direct.)

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood f0ef9cf1f1 Add a Change History entry "Change Daira Emma Hopwood's name.", and change the
name in bibliography entries (the changes in `protocol.tex` were made in
8ea921667d).

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-19 17:43:09 +00:00
Daira Emma Hopwood 1d1ec0324b ZIP 321: clarify the usage of ``req-``.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-14 18:05:49 +00:00
Daira Emma Hopwood 57d2d72003
Merge pull request #743 from daira/zip-231-stub
Add stub for ZIP 231: Decouple Memos from Transaction Outputs
2023-12-08 01:57:04 +00:00
teor d3ea7d9bdf
Merge pull request #746 from zcash/arya-editor 2023-12-07 15:34:17 +10:00
teor 3bdbf4d620
Update with Arya's name and email
Co-authored-by: Arya <aryasolhi@gmail.com>
2023-12-06 07:16:10 +10:00
teor 50fcbcf8d4
Add Arya as a ZIP Editor 2023-12-06 05:00:46 +10:00
Daira Emma Hopwood f18b12db0e ZIP 231: add stub.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-12-01 20:10:29 +00:00
Daira Emma Hopwood 6dd46ce7df
Merge pull request #734 from daira/fix-linkcheck
Fix for `make linkcheck` false positives
2023-11-22 22:11:01 +00:00
Daira Emma Hopwood e514a9fbf2
Merge pull request #726 from zcash/dependabot/github_actions/actions/checkout-4.1.1
Bump actions/checkout from 3.6.0 to 4.1.1
2023-11-22 22:08:35 +00:00
str4d 1d9780f674
Merge pull request #730 from daira/bcp14
Updates to reference BCP 14 rather than RFC 2119
2023-11-08 22:12:05 +00:00
Daira Emma Hopwood b1410c0f42
Merge pull request #723 from daira/zip-0-updates-3
ZIP 0: Leftover change from #716
2023-10-31 14:28:28 +00:00