mirror of https://github.com/zcash/zips.git
Make ordering of Orchard txid hash fields consistent with field order.
Also fixes a few conflicting/incorrect digest references and removes some spurious duplication. Co-authored by: Daira Hopwood <daira@jacaranda.org>
This commit is contained in:
parent
4b2af700ef
commit
02fd26fc1f
45
zip-0225.rst
45
zip-0225.rst
|
@ -286,23 +286,23 @@ to be a BLAKE2b-256 hash of the following values ::
|
|||
|
||||
The personalization field of this hash is unmodified from ZIP 244.
|
||||
|
||||
2: ``orchard_digest``
|
||||
"""""""""""""""""""""
|
||||
T.4: ``orchard_digest``
|
||||
"""""""""""""""""""""""
|
||||
|
||||
A BLAKE2b-256 hash of the following values ::
|
||||
|
||||
T.4a: anchorOrchard (32 bytes)
|
||||
T.4b: flagsOrchard (1 byte)
|
||||
T.4c: orchard_actions_compact_digest (32-byte hash output)
|
||||
T.4d: orchard_actions_memos_digest (32-byte hash output)
|
||||
T.4e: orchard_actions_noncompact_digest (32-byte hash output)
|
||||
T.4f: valueBalanceOrchard (64-bit signed little-endian)
|
||||
T.4a: orchard_actions_compact_digest (32-byte hash output)
|
||||
T.4b: orchard_actions_memos_digest (32-byte hash output)
|
||||
T.4c: orchard_actions_noncompact_digest (32-byte hash output)
|
||||
T.4d: flagsOrchard (1 byte)
|
||||
T.4e: valueBalanceOrchard (64-bit signed little-endian)
|
||||
T.4f: anchorOrchard (32 bytes)
|
||||
|
||||
The personalization field of this hash is set to::
|
||||
|
||||
"ZTxIdOrchardHash"
|
||||
|
||||
T.4c: orchard_actions_compact_digest
|
||||
T.4a: orchard_actions_compact_digest
|
||||
""""""""""""""""""""""""""""""""""""
|
||||
|
||||
A BLAKE2b-256 hash of the subset of Orchard Action information intended to be included in
|
||||
|
@ -319,7 +319,7 @@ The personalization field of this hash is set to::
|
|||
|
||||
"ZTxIdOrcOutCHash"
|
||||
|
||||
T.4d: orchard_actions_memos_digest
|
||||
T.4b: orchard_actions_memos_digest
|
||||
""""""""""""""""""""""""""""""""""
|
||||
|
||||
A BLAKE2b-256 hash of the subset of Orchard shielded memo field data for all Orchard
|
||||
|
@ -332,7 +332,7 @@ The personalization field of this hash is set to::
|
|||
|
||||
"ZTxIdOrcOutMHash"
|
||||
|
||||
T.4e: orchard_actions_noncompact_digest
|
||||
T.4c: orchard_actions_noncompact_digest
|
||||
"""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
A BLAKE2b-256 hash of the remaining subset of Orchard Action information **not** intended
|
||||
|
@ -354,12 +354,12 @@ Signature Digest
|
|||
|
||||
The signature digest creation algorithm defined by ZIP 244 [#zip-0244]_ is modified to
|
||||
include a new branch for Orchard hashes. The ``orchard_digest`` branch is the only new
|
||||
addition to the tree; ``header_digest``, ``transparent_digest``, and ``sapling_digest``
|
||||
addition to the tree; ``header_digest``, ``transparent_sig_digest``, and ``sapling_digest``
|
||||
are as in ZIP 244::
|
||||
|
||||
signature_digest
|
||||
├── header_digest
|
||||
├── transparent_digest
|
||||
├── transparent_sig_digest
|
||||
├── sapling_digest
|
||||
└── orchard_digest
|
||||
|
||||
|
@ -368,10 +368,10 @@ signature_digest
|
|||
|
||||
A BLAKE2b-256 hash of the following values ::
|
||||
|
||||
S.1: header_digest (32-byte hash output)
|
||||
S.2: transparent_digest (32-byte hash output)
|
||||
S.3: sapling_digest (32-byte hash output)
|
||||
S.4: orchard_digest (32-byte hash output)
|
||||
S.1: header_digest (32-byte hash output)
|
||||
S.2: transparent_sig_digest (32-byte hash output)
|
||||
S.3: sapling_digest (32-byte hash output)
|
||||
S.4: orchard_digest (32-byte hash output)
|
||||
|
||||
The personalization field of this hash is unmodified from ZIP 244
|
||||
|
||||
|
@ -384,9 +384,9 @@ Authorizing Data Commitment
|
|||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The tree of hashes defined by ZIP 244 [#zip-0244]_ for authorizing data commitments is
|
||||
re-structured to include a new branch for Orchard Actions. The ``orchard_digest`` branch
|
||||
is the only new addition to the tree; ``transparent_digest``, and ``sapling_digest`` are
|
||||
as in ZIP 244::
|
||||
re-structured to include a new branch for Orchard Actions. The ``orchard_auth_digest``
|
||||
branch is the only new addition to the tree; ``transparent_scripts_digest``, and
|
||||
``sapling_auth_digest`` are as in ZIP 244::
|
||||
|
||||
auth_digest
|
||||
├── transparent_scripts_digest
|
||||
|
@ -396,10 +396,7 @@ as in ZIP 244::
|
|||
auth_digest
|
||||
"""""""""""
|
||||
|
||||
The tree of hashes defined by ZIP 244 [#zip-0244]_ for authorizing data commitments is
|
||||
re-structured to include a new branch for Orchard authorizing data. The
|
||||
``orchard_auth_digest`` branch is the only new addition to the tree;
|
||||
``transparent_auth_digest``, and ``sapling_auth_digest`` are as in ZIP 244::
|
||||
A BLAKE2b-256 hash of the following values::
|
||||
|
||||
A.1: transparent_scripts_digest (32-byte hash output)
|
||||
A.2: sapling_auth_digest (32-byte hash output)
|
||||
|
|
Loading…
Reference in New Issue