[ZIP-231] Add Newsletter, Reply-to and Application Layer Use Cases #1209
[ZIP-231] Add Newsletter, Reply-to and Application Layer Use Cases #1209pacu wants to merge 6 commits into
Conversation
61fe4f4 to
6416f69
Compare
bd461da to
b236b5e
Compare
also includes Suggestions by Daira-Emma and Str4d (via DM) the origin of these changes start in this PR: #1185
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
These suggestions were added during ZIP editors meeting on February 24th 2026 Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
this addresses commment from Daira-Emma Hopwood that can be found here #1185 (comment)
b236b5e to
733416e
Compare
Zk-nd3r
left a comment
There was a problem hiding this comment.
The application-layer use case section is the most interesting part. We built a structured memo protocol (ZAP1, PR #1243) and a universal memo decoder crate (zcash-memo-decode on crates.io) that already handles the classification problem this PR describes - distinguishing actionable memos from arbitrary data by format.
Two concrete observations:
-
The newsletter use case assumes subscribers prove authorship of their subscription memos. That maps to the authenticated reply address mechanism in the earlier section. Worth stating explicitly that the newsletter pattern depends on that mechanism shipping first.
-
The phrase "using unverifiable memo data as input for business logic is unadvisable" is the right starting point. Our experience confirms this - we hash all application payloads with BLAKE2b domain separation specifically because raw memo text has no integrity guarantee. The proof-of-authorship mechanism in ZIP 231 would complement hash-based attestation for applications that need both content integrity and sender identity.
This addition was discussed during zcash/lcwg#157
The idea of this addition is to include two clear use cases where Memo Bundles will contribute to both Zcash UX and security.
This continues work carried out in #1185 because the base branch was deleted and it can't be reopened because of GitHub's limitations