diff --git a/static/css/style.css b/static/css/style.css index e0a79a772..b0198bb43 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -418,9 +418,9 @@ div.math { display: block; overflow-x: auto; overflow-y: hidden; - margin: 2.6rem 1rem 2.6rem 1rem; + margin: 1rem 1rem 1rem 1rem; text-align: center; - padding: 2rem; + padding: 1rem; } a, a:visited { diff --git a/zips/zip-0226.rst b/zips/zip-0226.rst index 990555eb9..bbe5ef941 100644 --- a/zips/zip-0226.rst +++ b/zips/zip-0226.rst @@ -23,11 +23,13 @@ Terminology The key word "MUST" in this document is to be interpreted as described in BCP 14 [#BCP14]_ when, and only when, it appears in all capitals. -The term "network upgrade" in this document is to be interpreted as described in ZIP 200 [#zip-0200]_. +The term "network upgrade" in this document is to be interpreted as described in ZIP 200. [#zip-0200]_ -The terms "Orchard" and "Action" in this document are to be interpreted as described in ZIP 224 [#zip-0224]_. +The character § is used when referring to sections of the Zcash Protocol Specification. [#protocol]_ -The terms "Asset", "Custom Asset" and "Wrapped Asset" in this document are to be interpreted as described in ZIP 227 [#zip-0227]_. +The terms "Orchard" and "Action" in this document are to be interpreted as described in ZIP 224. [#zip-0224]_ + +The terms "Asset", "Custom Asset" and "Wrapped Asset" in this document are to be interpreted as described in ZIP 227. [#zip-0227]_ We define the following additional terms: @@ -90,7 +92,7 @@ An OrchardZSA note differs from an Orchard note [#protocol-notes]_ by additional where - $\mathsf{AssetBase} : \mathbb{P}^*$ is the unique element of the Pallas group [#protocol-pallasandvesta]_ that identifies each Asset in the Orchard protocol, defined as the Asset Base in ZIP 227 [#zip-0227-assetidentifier]_, a valid group element that is not the identity and is not $\bot$. The byte representation of the Asset Base is defined as $\mathsf{asset\_base} : \mathbb{B}^{[\ell_{\mathbb{P}}]} := \mathsf{repr}_{\mathbb{P}}(\mathsf{AssetBase})$. -- The remaining terms are as defined in §3.2 of the protocol specification [#protocol-notes]_. +- The remaining terms are as defined in §3.2 ‘Notes’ [#protocol-notes]_. Note that the above assumes a canonical encoding, which is true for the Pallas group, but may not hold for future shielded protocols. @@ -98,7 +100,7 @@ Let $\mathsf{Note^{OrchardZSA}}$ be the type of a OrchardZSA note, i.e. .. math:: \mathsf{Note^{OrchardZSA}} := \mathbb{B}^{[\ell_{\mathsf{d}}]} \times \mathsf{KA}^{\mathsf{Orchard}}.\mathsf{Public} \times \{0 .. 2^{\ell_{\mathsf{value}}} - 1\} \times \mathbb{P}^* \times \mathbb{F}_{q_{\mathbb{P}}} \times \mathbb{F}_{q_{\mathbb{P}}} \times \mathsf{NoteCommit^{Orchard}.Trapdoor}, -where $\mathbb{P}^*$ is the Pallas group excluding the identity element, and the other types are as defined in §3.2 of the protocol specification [#protocol-notes]_. +where $\mathbb{P}^*$ is the Pallas group excluding the identity element, and the other types are as defined in §3.2 ‘Notes’ [#protocol-notes]_. **Non-normative note:** The type and definition of the OrchardZSA note reflect that it is a tuple of all the components of an Orchard note, with the addition of the Asset Base into the tuple. @@ -113,8 +115,8 @@ We define the note commitment scheme $\mathsf{NoteCommit^{OrchardZSA}_{rcm}}$ as $\hspace{1em}\times\, \mathbb{F}_{q_{\mathbb{P}}}\hspace{-1em}$ $\hspace{1em}\times\, \mathbb{P}^* \to \mathsf{NoteCommit^{Orchard}.Output}$ -where $\mathbb{P}, \ell_{\mathbb{P}}, q_{\mathbb{P}}$ are as defined for the Pallas curve [#protocol-pallasandvesta]_, and where $\mathsf{NoteCommit^{Orchard}.\{Trapdoor, Output\}}$ are as defined in the Zcash protocol specification [#protocol-abstractcommit]_. -This note commitment scheme is instantiated using the Sinsemilla Commitment [#protocol-concretesinsemillacommit]_ as follows: +where $\mathbb{P}, \ell_{\mathbb{P}}, q_{\mathbb{P}}$ are as defined for the Pallas curve [#protocol-pallasandvesta]_, and where $\mathsf{NoteCommit^{Orchard}.\{Trapdoor, Output\}}$ are as defined in §4.1.8 ‘Commitment’ [#protocol-abstractcommit]_. +This uses the note commitment scheme defined in §5.4.8.4 ‘Sinsemilla Commitments’ [#protocol-concretesinsemillacommit]_ as follows: .. math:: \mathsf{NoteCommit^{OrchardZSA}_{rcm}}(\mathsf{g_d}\star, \mathsf{pk_d}\star, \mathsf{v}, \text{ρ}, \text{ψ}, \mathsf{AssetBase}) := @@ -130,9 +132,9 @@ where: $\hspace{6em}\,||\, \mathsf{I2LEBSP}_{\ell^{\mathsf{Orchard}}_{\mathsf{base}}}(\text{ψ}) \,||\, \mathsf{asset\_base})\hspace{-4em}$ $\hspace{4em}\,+\; [\mathsf{rcm}]\,\mathsf{GroupHash}^{\mathbb{P}}(\texttt{“z.cash:Orchard-NoteCommit-r”}, \texttt{“”})$ -Note that $\mathsf{repr}_{\mathbb{P}}$ and $\mathsf{GroupHash}^{\mathbb{P}}$ are as defined for the Pallas curve [#protocol-pallasandvesta]_, $\ell^{\mathsf{Orchard}}_{\mathsf{base}}$ is as defined in §5.3 [#protocol-constants]_, and $\mathsf{I2LEBSP}$ is as defined in §5.1 [#protocol-endian]_ of the Zcash protocol specification. +Note that $\mathsf{repr}_{\mathbb{P}}$ and $\mathsf{GroupHash}^{\mathbb{P}}$ are as defined for the Pallas curve [#protocol-pallasandvesta]_, $\ell^{\mathsf{Orchard}}_{\mathsf{base}}$ is as defined in §5.3 ‘Constants’ [#protocol-constants]_, and $\mathsf{I2LEBSP}$ is as defined in §5.1 ‘Integers, Bit Sequences, and Endianness’ [#protocol-endian]_. -The nullifier is generated in the same manner as in the Orchard protocol [#protocol-commitmentsandnullifiers]_. +The nullifier is generated in the same manner as in the Orchard protocol §4.16 ‘Computing ρ values and Nullifiers’ [#protocol-rhoandnullifiers]_. The OrchardZSA note plaintext also includes the Asset Base in addition to the components in the Orchard note plaintext [#protocol-notept]_. It consists of @@ -265,7 +267,7 @@ For Split Notes, the nullifier is generated as follows: .. math:: \mathsf{nf_{old}} = \mathsf{Extract}_{\mathbb{P}} ([(\mathsf{PRF^{nfOrchard}_{nk}} (\text{ρ}^{\mathsf{old}}) + \text{ψ}^{\mathsf{nf}}) \bmod q_{\mathbb{P}}]\,\mathcal{K}^\mathsf{Orchard} + \mathsf{cm^{old}} + \mathcal{L}^\mathsf{Orchard}) -where $\text{ψ}^{\mathsf{nf}}$ is sampled uniformly at random on $\mathbb{F}_{q_{\mathbb{P}}}$, $\mathcal{K}^{\mathsf{Orchard}}$ is the Orchard Nullifier Base as defined in [#protocol-commitmentsandnullifiers]_, and $\mathcal{L}^{\mathsf{Orchard}} := \mathsf{GroupHash^{\mathbb{P}}}(\texttt{“z.cash:Orchard”}, \texttt{“L”})$. +where $\text{ψ}^{\mathsf{nf}}$ is sampled uniformly at random on $\mathbb{F}_{q_{\mathbb{P}}}$, $\mathcal{K}^{\mathsf{Orchard}}$ is the Orchard Nullifier Base as defined in §4.16 ‘Computing ρ values and Nullifiers’ [#protocol-rhoandnullifiers]_, and $\mathcal{L}^{\mathsf{Orchard}} := \mathsf{GroupHash^{\mathbb{P}}}(\texttt{“z.cash:Orchard”}, \texttt{“L”})$. Rationale for Split Notes ````````````````````````` @@ -423,7 +425,7 @@ References .. [#protocol-abstractcommit] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.1.8: Commitment `_ .. [#protocol-orcharddummynotes] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.8.3: Dummy Notes (Orchard) `_ .. [#protocol-orchardbalance] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.14: Balance and Binding Signature (Orchard) `_ -.. [#protocol-commitmentsandnullifiers] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.16: Computing ρ values and Nullifiers `_ +.. [#protocol-rhoandnullifiers] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.16: Computing ρ values and Nullifiers `_ .. [#protocol-actionstatement] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.18.4: Action Statement (Orchard) `_ .. [#protocol-endian] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 5.1: Integers, Bit Sequences, and Endianness `_ .. [#protocol-constants] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 5.3: Constants `_ diff --git a/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg index 200c2be19..897586a4d 100644 --- a/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg +++ b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg @@ -25,11 +25,11 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="0.5" - inkscape:cx="631" - inkscape:cy="218" + inkscape:zoom="0.60419345" + inkscape:cx="734.86398" + inkscape:cy="79.444754" inkscape:document-units="px" - inkscape:current-layer="layer1" + inkscape:current-layer="g481-4" showgrid="false" inkscape:window-width="1068" inkscape:window-height="916" @@ -360,14 +360,14 @@ style="fill:#ffeeaa;fill-opacity:1;stroke:#000000;stroke-width:1.1017;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />ikissuer[32 bytes][33 bytes][65 bytes] + y="976.58667">[66 bytes] diff --git a/zips/zip-0227-key-components-zsa.svg b/zips/zip-0227-key-components-zsa.svg index eb38e4dcb..4f30b6b0a 100644 --- a/zips/zip-0227-key-components-zsa.svg +++ b/zips/zip-0227-key-components-zsa.svg @@ -26,7 +26,7 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="0.80392436" - inkscape:cx="183.47497" + inkscape:cx="220.16997" inkscape:cy="176.63353" inkscape:document-units="px" inkscape:current-layer="layer1" @@ -34,7 +34,7 @@ inkscape:window-width="1068" inkscape:window-height="916" inkscape:window-x="222" - inkscape:window-y="102" + inkscape:window-y="38" inkscape:window-maximized="0" inkscape:showpageshadow="2" inkscape:pagecheckerboard="0" @@ -167,13 +167,13 @@ inkscape:export-filename="zip-0227-key-components-zsa.png" inkscape:export-xdpi="179.99957" inkscape:export-ydpi="179.99957" />iskikik`_ .. [#bip-0043] `BIP 43: Purpose Field for Deterministic Wallets `_ .. [#bip-0340] `BIP 340: Schnorr Signatures for secp256k1 `_ +.. [#protocol] `Zcash Protocol Specification, Version 2024.5.1 [NU6] or later. `_ .. [#protocol-notation] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 2: Notation `_ -.. [#protocol-addressesandkeys] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 3.1: Payment Addresses and Keys `_ .. [#protocol-notes] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 3.2: Notes `_ .. [#protocol-abstractsig] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.1.7: Signature `_ .. [#protocol-orchardkeycomponents] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.2.3: Orchard Key Components `_ @@ -675,3 +696,4 @@ References .. [#protocol-concretegrouphashpallasandvesta] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 5.4.9.8: Group Hash into Pallas and Vesta `_ .. [#protocol-orchardpaymentaddrencoding] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 5.6.4.2: Orchard Raw Payment Addresses `_ .. [#protocol-txnencoding] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 7.1: Transaction Encoding and Consensus `_ +.. [#petnames] `An Introduction to Petname Systems. Marc Stiegler, updated June 2010. `_ diff --git a/zips/zip-0230.rst b/zips/zip-0230.rst index a0917276c..e3a946132 100644 --- a/zips/zip-0230.rst +++ b/zips/zip-0230.rst @@ -120,13 +120,12 @@ Transaction Format | varies |``nSpendsSapling`` |``compactSize`` |Number of Sapling Spend descriptions in ``vSpendsSapling``. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 96 × ``nSpendsSapling`` |``vSpendsSapling`` |``SpendDescriptionV5[nSpendsSapling]`` |A sequence of Sapling Spend descriptions, encoded per | -| | | |protocol §7.3 ‘Spend Description Encoding and Consensus’ | -| | | |(unchanged from V5). | +| | | |§7.3 ‘Spend Description Encoding and Consensus’ (unchanged from V5). | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | varies |``nOutputsSapling`` |``compactSize`` |Number of Sapling Output Decriptions in ``vOutputsSapling``. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 276 × ``nOutputsSapling`` |``vOutputsSapling`` |``OutputDescriptionV6[nOutputsSapling]`` |A sequence of Sapling Output descriptions, encoded per | -| | | |protocol §7.4 ‘Output Description Encoding and Consensus’. | +| | | |§7.4 ‘Output Description Encoding and Consensus’. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 8 |``valueBalanceSapling`` |``int64`` |The net value of Sapling Spends minus Outputs | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ @@ -152,21 +151,22 @@ Transaction Format +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 64 |``bindingSigOrchard`` |``byte[64]`` |An OrchardZSA binding signature on the SIGHASH transaction hash. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| **ZSA Issuance Fields** | +| **ZSA Issuance Bundle Fields** | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | varies |``nIssueActions`` |``compactSize`` |The number of issuance actions in the bundle. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | varies |``vIssueActions`` |``IssueAction[nIssueActions]`` |A sequence of issuance action descriptions. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| varies |``ikLength`` |``compactSize`` |The length of the issuance validating key of the issuer. | +| varies |``issuerLength`` |``compactSize`` |The length of the issuer identifier. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| varies |``ik`` |``byte[ikLength]`` |The issuance validating key of the issuer, used to validate the | -| | | |signature. | +| varies |``issuer`` |``byte[issuerLength]`` |The issuer identifier as defined in [#zip-0227-issuer-identifier]_. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| varies |``issueAuthSigLength`` |``compactSize`` |The length of the issuance authorization signature. | +| varies |``issueAuthSigLength`` |``compactSize`` |The length of the issuance authorization signature, including the | +| | | |initial byte indicating a BIP 340 signature. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | varies |``issueAuthSig`` |``byte[issueAuthSigLength]`` |The signature of the transaction SIGHASH, signed by the issuer, | -| | | |validated as in Issuance Authorization Signature Scheme [#zip-0227]_.| +| | | |preceded by a :math:`\mathtt{0x00}` byte indicating a BIP 340 | +| | | |signature. It is validated as specified in [#zip-0227-issuance-sig]_.| +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | **Memo Bundle Fields** | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ @@ -203,7 +203,7 @@ Transaction Format only if $\mathtt{nActionGroupsOrchard} > 0$. If ``valueBalanceOrchard`` is not present, then $\mathsf{v^{balanceOrchard}}$ is defined to be $0$. -* The fields ``ikLength``, ``ik``, ``issueAuthSigLength``, and ``issueAuthSig`` are present if and only if $\mathtt{nIssueActions} > 0$. +* The fields ``issuerLength``, ``issuer``, ``issueAuthSigLength``, and ``issueAuthSig`` are present if and only if $\mathtt{nIssueActions} > 0$. * For coinbase transactions, the ``enableSpendsOrchard`` and ``enableZSAs`` bits MUST be set to $0$. @@ -254,8 +254,7 @@ Sapling Output Description (``OutputDescriptionV6``) | | | |of the transmission key with the ephemeral secret key. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -The encodings of each of these elements are defined in §7.4 ‘Output Description Encoding -and Consensus’ of the Zcash Protocol Specification [#protocol-outputdesc]_. +The encodings of each of these elements are defined in §7.4 ‘Output Description Encoding and Consensus’ [#protocol-outputdesc]_. OrchardZSA Action Group Description ----------------------------------- @@ -270,10 +269,10 @@ The OrchardZSA Action Group Description is encoded in a transaction as an instan +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 372 × ``nActionsOrchard`` |``vActionsOrchard`` |``OrchardZSAAction[nActionsOrchard]`` |A sequence of OrchardZSA Action descriptions in the Action Group. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| 1 |``flagsOrchard`` |``byte`` |As defined in Section 7.1 of the Protocol Specification | +| 1 |``flagsOrchard`` |``byte`` |As defined in §7.1 ‘Transaction Encoding and Consensus’ | | | | |[#protocol-txnencoding]_. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| 32 |``anchorOrchard`` |``byte[32]`` |As defined in Section 7.1 of the Protocol Specification | +| 32 |``anchorOrchard`` |``byte[32]`` |As defined in §7.1 ‘Transaction Encoding and Consensus’ | | | | |[#protocol-txnencoding]_. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 4 |``nAGExpiryHeight`` |``uint32`` |A block height in the range {1 .. 499999999} after which any | @@ -283,9 +282,9 @@ The OrchardZSA Action Group Description is encoded in a transaction as an instan | varies | ``nAssetBurn`` | ``compactSize`` |The number of Assets burnt. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 40 × ``nAssetBurn`` | ``vAssetBurn`` | ``AssetBurn[nAssetBurn]`` |A sequence of Asset Burn descriptions, encoded per | -| | | | encoded per `OrchardZSA Asset Burn Description`_. | +| | | |`OrchardZSA Asset Burn Description`_. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -| varies |``sizeProofsOrchard`` |``compactSize`` |As defined in Section 7.1 of the Protocol Specification | +| varies |``sizeProofsOrchard`` |``compactSize`` |As defined in §7.1 ‘Transaction Encoding and Consensus’ | | | | |[#protocol-txnencoding]_. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | ``sizeProofsOrchard`` |``proofsOrchard`` |``byte[sizeProofsOrchard]`` |The aggregated zk-SNARK proof for all Actions in the Action Group. | @@ -300,7 +299,7 @@ The encodings of ``OrchardZSAAction`` and ``AssetBurn`` are described below. ``vSpendAuthSigsOrchard``, each have a 1:1 correspondence to the elements of ``vActionsOrchard`` and MUST be ordered such that the proof or signature at a given index corresponds to the ``OrchardZSAAction`` at the same index. -* If thee value of ``nAGExpiryHeight`` is nonzero, it MUST be consistent with +* If the value of ``nAGExpiryHeight`` is nonzero, it MUST be consistent with the ``nExpiryHeight`` of the overall transaction. * In NU7, ``nExpiryHeight`` MUST be set to ``0``; this restriction is expected to be lifted in a future network upgrade. @@ -346,8 +345,7 @@ OrchardZSA Action Description (``OrchardZSAAction``) | | | |of the transmission key with the ephemeral secret key. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ -The encodings of each of these elements are defined in §7.5 ‘Action Description Encoding -and Consensus’ of the Zcash Protocol Specification [#protocol-actiondesc]_. +The encodings of each of these elements are defined in §7.5 ‘Action Description Encoding and Consensus’ [#protocol-actiondesc]_. OrchardZSA Asset Burn Description ---------------------------------- @@ -404,16 +402,16 @@ An issuance note, ``IssueNote`` contains the following fields: | | | |(\mathsf{pk}_\mathsf{d}))\!`, where :math:`\mathsf{d}` is the | | | | |diversifier and :math:`\mathsf{pk_d}` is the diversified | | | | |transmission key. **Non Normative Note**: This is the same as the | -| | | |encoding of an Orchard Raw Payment Address, as defined in the | -| | | |protocol specification §5.6.4.2 ‘Orchard Raw Payment Addresses’. | +| | | |encoding of an Orchard Raw Payment Address, as defined in | +| | | |§5.6.4.2 ‘Orchard Raw Payment Addresses’. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 8 |``value`` |``uint64`` |The amount being issued in this note. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 32 |``rho`` |``byte[32]`` |This is defined and encoded in the same manner as for Orchard notes | -| | | |in protocol §3.2.1 'Note Plaintexts and Memo Fields'. | +| | | |in §3.2.1 ‘Note Plaintexts and Memo Fields’. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ | 32 |``rseed`` |``byte[32]`` |The ``rseed`` field of the note, encoded as for Orchard notes in | -| | | |protocol §3.2.1 'Note Plaintexts and Memo Fields'. | +| | | |§3.2.1 ‘Note Plaintexts and Memo Fields’. | +-----------------------------+------------------------------+------------------------------------------------+---------------------------------------------------------------------+ @@ -443,6 +441,8 @@ References .. [#zip-0225] `ZIP 225: Version 5 Transaction Format `_ .. [#zip-0226] `ZIP 226: Transfer and Burn of Zcash Shielded Assets `_ .. [#zip-0227] `ZIP 227: Issuance of Zcash Shielded Assets `_ +.. [#zip-0227-issuer-identifier] `ZIP 227: Issuance of Zcash Shielded Assets — Issuer Identifier `_ +.. [#zip-0227-issuance-sig] `ZIP 227: Issuance of Zcash Shielded Assets — Issuance Authorization Signature Scheme `_ .. [#zip-0228] `ZIP 228: Asset Swaps for Zcash Shielded Assets `_ .. [#zip-0244] `ZIP 244: Transaction Identifier Non-Malleability `_ .. [#zip-0254] `ZIP 254: Deployment of the NU7 Network Upgrade `_ diff --git a/zips/zip-0246.rst b/zips/zip-0246.rst index 46a04852d..88bb78ba0 100644 --- a/zips/zip-0246.rst +++ b/zips/zip-0246.rst @@ -342,7 +342,7 @@ T.5: issuance_digest A BLAKE2b-256 hash of the following values :: T.5a: issue_actions_digest (32-byte hash output) - T.5b: issuanceValidatingKey (field encoding bytes) + T.5b: issuerIdentifier (field encoding bytes) The personalization field of this hash is set to:: @@ -468,7 +468,7 @@ Identical to that specified for the transaction identifier. S.5: issuance_digest ```````````````````` -Identical to the ``issuance_digest`` specified for the transaction identifier in ZIP 227 [zip-0227-txiddigest]_. +Identical to the ``issuance_digest`` specified for the transaction identifier. S.6: memo_digest ```````````````` @@ -578,7 +578,6 @@ References .. [#protocol-actiondesc] `Zcash Protocol Specification, Version 2024.5.1 [NU6]. Section 4.6: Action Descriptions `_ .. [#protocol-txnencoding] `Zcash Protocol Specification, Version 2022.3.8. Section 7.1: Transaction Encoding and Consensus `_ .. [#zip-0200] `ZIP 200: Network Upgrade Mechanism `_ -.. [#zip-0227-txiddigest] `ZIP 227: Issuance of Zcash Shielded Assets: TODO (issuance digest anchor missing) `_ .. [#zip-0230-transaction-field-encodings] `ZIP 230: Version 6 Transaction Format. Specification: Transaction Format `_ .. [#zip-0230-orchard-action-group-field-encodings] `ZIP 230: Version 6 Transaction Format. Specification: OrchardZSA Action Group Description `_ .. [#zip-0230-orchard-action-field-encodings] `ZIP 230: Version 6 Transaction Format. Specification: OrchardZSA Action Description `_