mirror of https://github.com/zcash/zips.git
Note number of underscores in hash personalization strings.
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
parent
4da60ce58b
commit
90e83ad754
21
zip-0244.rst
21
zip-0244.rst
|
@ -148,6 +148,8 @@ The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
||||||
|
|
||||||
|
"ZcashTxHash_" has 1 underscore character.
|
||||||
|
|
||||||
As in ZIP 143 [#zip-0143]_, CONSENSUS_BRANCH_ID is the 4-byte little-endian encoding of
|
As in ZIP 143 [#zip-0143]_, CONSENSUS_BRANCH_ID is the 4-byte little-endian encoding of
|
||||||
the consensus branch ID for the epoch of the block containing the transaction. Domain
|
the consensus branch ID for the epoch of the block containing the transaction. Domain
|
||||||
separation of the transaction id hash across parallel consensus branches provides replay
|
separation of the transaction id hash across parallel consensus branches provides replay
|
||||||
|
@ -302,7 +304,7 @@ in the hash::
|
||||||
|
|
||||||
The personalization field of this hash is set to::
|
The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZTxIdSOutC__Hash"
|
"ZTxIdSOutC__Hash" (2 underscore characters)
|
||||||
|
|
||||||
T.4a.ii: sapling_outputs_memos_digest
|
T.4a.ii: sapling_outputs_memos_digest
|
||||||
.....................................
|
.....................................
|
||||||
|
@ -314,7 +316,7 @@ are included in the hash::
|
||||||
|
|
||||||
The personalization field of this hash is set to::
|
The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZTxIdSOutM__Hash"
|
"ZTxIdSOutM__Hash" (2 underscore characters)
|
||||||
|
|
||||||
T.4a.iii: sapling_outputs_noncompact_digest
|
T.4a.iii: sapling_outputs_noncompact_digest
|
||||||
...........................................
|
...........................................
|
||||||
|
@ -363,9 +365,11 @@ The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
||||||
|
|
||||||
This value must have the same personalization as the top hash of the transaction
|
"ZcashTxHash_" has 1 underscore character.
|
||||||
identifier digest tree, in order to make it possible to sign the transaction id
|
|
||||||
in the case that there are no transparent inputs.
|
This value has the same personalization as the top hash of the transaction
|
||||||
|
identifier digest tree, so that what is being signed in the case that there are
|
||||||
|
no transparent inputs is just the transaction id.
|
||||||
|
|
||||||
S.1: header_digest
|
S.1: header_digest
|
||||||
``````````````````
|
``````````````````
|
||||||
|
@ -501,6 +505,8 @@ The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZTxAuthHash_" || CONSENSUS_BRANCH_ID
|
"ZTxAuthHash_" || CONSENSUS_BRANCH_ID
|
||||||
|
|
||||||
|
"ZTxAuthHash_" has 1 underscore character.
|
||||||
|
|
||||||
A.1: transparent_scripts_digest
|
A.1: transparent_scripts_digest
|
||||||
```````````````````````````````
|
```````````````````````````````
|
||||||
A BLAKE2b-256 hash of the field encoding of the Bitcoin script associated
|
A BLAKE2b-256 hash of the field encoding of the Bitcoin script associated
|
||||||
|
@ -561,9 +567,9 @@ to the transaction data, including witnesses, that appear within the block.
|
||||||
|
|
||||||
As a consequence, we now need to add a new commitment to the block header.
|
As a consequence, we now need to add a new commitment to the block header.
|
||||||
This commitment will be the root of a Merkle tree that has parallel structure
|
This commitment will be the root of a Merkle tree that has parallel structure
|
||||||
to the tree committed to by ``hashMerkleRoot`` (a path through this merkle
|
to the tree committed to by ``hashMerkleRoot`` (a path through this Merkle
|
||||||
tree to a transaction identifies the same transaction as that path reaches
|
tree to a transaction identifies the same transaction as that path reaches
|
||||||
in the tree rooted at ``hashMerkleRoot``) but where the leaves are hashes
|
in the tree rooted at ``hashMerkleRoot``), but where the leaves are hashes
|
||||||
produced according to the `Authorizing Data Commitment` part of this
|
produced according to the `Authorizing Data Commitment` part of this
|
||||||
specification.
|
specification.
|
||||||
|
|
||||||
|
@ -617,4 +623,3 @@ References
|
||||||
.. [#zip-0143] `ZIP 143: Transaction Signature Validation for Overwinter <zip-0143.rst>`_
|
.. [#zip-0143] `ZIP 143: Transaction Signature Validation for Overwinter <zip-0143.rst>`_
|
||||||
.. [#zip-0307] `ZIP 307: Light Client Protocol for Payment Detection <zip-0307.rst>`_
|
.. [#zip-0307] `ZIP 307: Light Client Protocol for Payment Detection <zip-0307.rst>`_
|
||||||
.. [#protocol_consensus] `Zcash Protocol Specification, Version 2020.1.15. Section 7.1: Transaction Encoding and Consensus <protocol/protocol.pdf#txnencodingandconsensus>`_
|
.. [#protocol_consensus] `Zcash Protocol Specification, Version 2020.1.15. Section 7.1: Transaction Encoding and Consensus <protocol/protocol.pdf#txnencodingandconsensus>`_
|
||||||
|
|
||||||
|
|
|
@ -118,6 +118,8 @@ The personalization field of this hash is set to::
|
||||||
|
|
||||||
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
"ZcashTxHash_" || CONSENSUS_BRANCH_ID
|
||||||
|
|
||||||
|
"ZcashTxHash_" has 1 underscore character.
|
||||||
|
|
||||||
This value must have the same personalization as the top hash of the transaction
|
This value must have the same personalization as the top hash of the transaction
|
||||||
identifier digest tree, in order to make it possible to sign the transaction id
|
identifier digest tree, in order to make it possible to sign the transaction id
|
||||||
in the case that there are no transparent inputs.
|
in the case that there are no transparent inputs.
|
||||||
|
@ -135,7 +137,7 @@ input being signed::
|
||||||
|
|
||||||
The personalization field of this hash is set to::
|
The personalization field of this hash is set to::
|
||||||
|
|
||||||
"Zcash__TzeInHash"
|
"Zcash__TzeInHash" (2 underscore characters)
|
||||||
|
|
||||||
Authorizing Data Commitment
|
Authorizing Data Commitment
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
Loading…
Reference in New Issue