Commit Graph

1420 Commits

Author SHA1 Message Date
Daira-Emma Hopwood 8b2929cd7f Render manually, while the CI-based rendering is broken.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-07-01 17:21:37 +01:00
Daira-Emma Hopwood c204c8f700 Acknowledge Conrado Gouvea.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-07-01 16:39:48 +01:00
Daira-Emma Hopwood a1657b29c3 In \crossref{concretesinsemillahash}, declare use of LEBS2IP instead of LEOS2IP.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-07-01 16:39:48 +01:00
Daira-Emma Hopwood be1b95e76e Protocol spec: cosmetics and improved indexing.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-07-01 16:39:48 +01:00
Daira-Emma Hopwood ccd3a109aa Daira [Emma] -> Daira-Emma. Also correct some author lists and prevent line-breaking of given names or surnames in the spec.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-07-01 16:39:48 +01:00
github-actions 6a0a93c020 Commit from GitHub Actions (Build tex and rst) 2024-01-06 20:57:42 +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 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
Andrew Arnott 4ebc0f7629
Fix identification of HRP for full viewing keys
This was likely a copy-paste error with the section above it, which is very similar but presents the human-readable part of *incoming* viewing keys.
2023-07-31 07:13:11 -06:00
Daira Emma Hopwood 8ea921667d Daira Hopwood -> Daira Emma Hopwood.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-03-02 12:13:07 +00:00
teor 0f33bb41a2 Fix a MUST -> MUSTNOT typo 2022-11-09 16:03:37 -05:00
Daira Hopwood 954467c15d Update dependency info.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-20 10:21:45 +01:00
Daira Hopwood 7146491320 Regenerate PDFs. 2022-09-15 20:30:25 +01:00
Daira Hopwood 7070e586c3 Set change history entry date.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-15 20:24:47 +01:00
Daira Hopwood 5991a14d1f Correct Jurgen Bos' name.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-15 20:24:25 +01:00
Daira Hopwood 4dfeb91623 Regenerate PDFs. 2022-09-10 00:48:43 +01:00
Daira Hopwood c3f96b0a58 Set Change History entry date.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-10 00:28:19 +01:00
Daira Hopwood f455422648 Specify in \crossref{blockchain} that NU5 is the most recent settled
network upgrade.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-10 00:27:45 +01:00
Daira Hopwood 2bfe19acda Remove a now-unused sampling of rcv in \crossref{orcharddummynotes}.
fixes #562

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-08 09:14:44 +01:00
Daira Hopwood acd7c37976 Regenerate PDFs. 2022-09-01 13:16:28 +01:00
Daira Hopwood 5f1f1cde2b [protocol spec] Set Change History entry date.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 13:09:45 +01:00
Daira Hopwood 26c1b6ca8c [protocol spec] Cosmetics: rearrange Change History items and mark some as \nufive.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 13:09:45 +01:00
Daira Hopwood 563b885e86 Update `protocol/Makefile` to build correctly with newer versions of `latexmk`.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 13:09:45 +01:00
Daira Hopwood 1c1a42bb27 In protocol/README.rst: Update build dependency documentation for Debian Bullseye,
mention `make linkcheck`, and correct the description of `make all`.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 13:09:45 +01:00
Daira Hopwood 8e59342637 [protocol spec] Cosmetics (vertical spacing and pagination).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 13:09:35 +01:00
Daira Hopwood a512f23bbd [protocol spec] Replace ResearchGate links for \cite{CDvdG1987} and \cite{BDPA2007}
with alternatives that do not cause false-positive link checker errors.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 00:57:05 +01:00
Daira Hopwood 22ee93c027 [protocol spec] Clarify that the recommended format for a QR code starts
with a Bech32 encoding for a Sapling payment address and with a Bech32m
encoding for a unified payment address.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 00:57:05 +01:00
Daira Hopwood a3847c0064 [protocol spec] Correct cross-references for the definition of an anchor. fixes #413
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-09-01 00:57:05 +01:00