Ensure tze digest is only included if TZEs are in the consensus rules.
This commit is contained in:
parent
acc19a76e2
commit
31ea91ced8
|
@ -572,13 +572,7 @@ impl TransactionDigest<Authorized> for BlockTxCommitmentDigester {
|
||||||
orchard_digest: Self::OrchardDigest,
|
orchard_digest: Self::OrchardDigest,
|
||||||
#[cfg(feature = "zfuture")] tze_digest: Self::TzeDigest,
|
#[cfg(feature = "zfuture")] tze_digest: Self::TzeDigest,
|
||||||
) -> Self::Digest {
|
) -> Self::Digest {
|
||||||
let digests = [
|
let digests = [transparent_digest, sapling_digest, orchard_digest];
|
||||||
transparent_digest,
|
|
||||||
sapling_digest,
|
|
||||||
orchard_digest,
|
|
||||||
#[cfg(feature = "zfuture")]
|
|
||||||
tze_digest,
|
|
||||||
];
|
|
||||||
|
|
||||||
let mut personal = [0; 16];
|
let mut personal = [0; 16];
|
||||||
(&mut personal[..12]).copy_from_slice(ZCASH_AUTH_PERSONALIZATION_PREFIX);
|
(&mut personal[..12]).copy_from_slice(ZCASH_AUTH_PERSONALIZATION_PREFIX);
|
||||||
|
@ -591,6 +585,11 @@ impl TransactionDigest<Authorized> for BlockTxCommitmentDigester {
|
||||||
h.write_all(digest.as_bytes()).unwrap();
|
h.write_all(digest.as_bytes()).unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "zfuture")]
|
||||||
|
if TxVersion::suggested_for_branch(consensus_branch_id).has_tze() {
|
||||||
|
h.write_all(tze_digest.as_bytes()).unwrap();
|
||||||
|
}
|
||||||
|
|
||||||
h.finalize()
|
h.finalize()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue