Add draft ZIP: Deterministic Orchard Wallet Scanning Standard#1158
Add draft ZIP: Deterministic Orchard Wallet Scanning Standard#1158Lowo88 wants to merge 1 commit intozcash:mainfrom
Conversation
This Standards Track ZIP specifies a deterministic algorithm for scanning Orchard notes in Zcash wallets. The specification ensures that all wallet implementations produce identical results when scanning the same block range, addressing critical issues with wallet reliability and interoperability. Key features: - Deterministic block, transaction, and action processing order - Comprehensive note deduplication and spent status tracking - Test vectors for verification - Reference implementation from NozyWallet - Backward compatible with existing ZIPs
| **Non-Deterministic Results**: Different wallets may produce different results | ||
| when scanning the same block range. |
There was a problem hiding this comment.
This is incorrect. The state of the wallet is a function of the contents of the blockchain; the order of scanning is irrelevant (modulo implementation bugs.)
| **Non-Deterministic Results**: Different wallets may produce different results | ||
| when scanning the same block range. | ||
|
|
||
| **Inconsistent Wallet State**: Wallet restores may produce different results. |
There was a problem hiding this comment.
Same issue, this is also flatly incorrect.
|
|
||
| **Inconsistent Wallet State**: Wallet restores may produce different results. | ||
|
|
||
| **Interoperability Issues**: Users cannot reliably switch between wallet |
There was a problem hiding this comment.
Interoperability concerns are the purview of ZIP 315. If there are specific standards required for interoperability (such as standards around key handling), I would recommend that you suggest them there.
|
Closing with @daira and @arya2; this proposal is based on a misconception about wallet state being dependent on scanning order. While this may be ephemerally true (different scanning algorithms will achieve different intermediate states) when a wallet has fully scanned the chain its value MUST be a deterministic function of chain contents irrespective of scanning order. |
This Standards Track ZIP specifies a deterministic algorithm for scanning Orchard notes in Zcash wallets. The specification ensures that all wallet implementations produce identical results when scanning the same block range, addressing critical issues with wallet reliability and interoperability.
Key features: