feat(zcash): shielded message handlers, tests and constant-time gates - #348
Closed
BitHighlander wants to merge 1 commit into
Closed
feat(zcash): shielded message handlers, tests and constant-time gates#348BitHighlander wants to merge 1 commit into
BitHighlander wants to merge 1 commit into
Conversation
Wires the Orchard engine to the host and puts it under test: - ZcashSignPCZT / ZcashPCZTAction / ZcashGetOrchardFVK / transparent input and output / ZcashDisplayAddress handlers, registered privacy-guarded so the bitcoin-only image exposes none of them. - unittests/firmware/zcash.cpp covers PCZT parsing, action signing and unified address encoding; a second binary links the engine against the host crypto so the Orchard paths run under the normal unit-test job. - unittests/crypto/pallas_ct.cpp plus tools/check_pallas_api_boundary.py and tools/check_pallas_ct_disassembly.py enforce the constant-time contract at three levels: operation counters in the test build, an API boundary check on the sources, and a disassembly scan of the shipped ELF. CI runs the pinned fork's Pallas suite under Valgrind and ASan/UBSan as well. - docs/coin-integration documents the PCZT flow, on-device unified addresses and the clear-sign handoff.
Owner
Author
|
Superseded by the smaller audit-ready 7.15 stack: #359 release foundation, #360 authenticated clear-signing, #361 recovery and entropy, #362 Zcash Orchard, #363 chain integrations, and #364 Bitcoin/release security. All release changes remain preserved in the replacement branches and preservation tags. The replacement aggregate was tree-verified against the prior release and passed the local CI-equivalent container suite (405 firmware, 2 board, 18 crypto, and 7 Pallas constant-time tests). GitHub-hosted checks have been explicitly dispatched and are currently queued. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
7.15 review stack position 07/17.
This PR is intentionally one coherent commit, based on
feature/715-06-storage-bip85-recovery, for individual auditing.The full stack is linear from the clean fork
developat 1af2ffe.Review scope: feat(zcash): shielded message handlers, tests and constant-time gates.
The preserved pre-restage candidate remains available at
preserve/alpha-2026-08-05.