Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ZIP 32] Point out that Sapling and Orchard spending keys can be invalid #561

Closed
str4d opened this issue Sep 16, 2021 · 0 comments · Fixed by #608
Closed

[ZIP 32] Point out that Sapling and Orchard spending keys can be invalid #561

str4d opened this issue Sep 16, 2021 · 0 comments · Fixed by #608
Labels
S-committed Status: Planned work in a sprint
Milestone

Comments

@str4d
Copy link
Collaborator

str4d commented Sep 16, 2021

Section 4.2.3 specifies the (cryptographically negligible) cases in which an Orchard spending key could be invalid. However the ZIP 32 derivation treats spending keys purely as byte arrays, and is written infallibly. We should add a note to the ZIP to remind implementors that derivation could fail, and to handle it how they wish.

Section 4.2.2 also specifies some invalid Sapling key cases, which in our code we've historically just ignored (assuming they won't be hit). But for the orchard crate we've instead exposed the potential failures for the caller to handle (as we have done elsewhere in the protocol, per comments from auditors).

@daira daira added this to the Core Sprint 2022-08 milestone Mar 15, 2022
@r3ld3v r3ld3v added the S-committed Status: Planned work in a sprint label Mar 15, 2022
@r3ld3v r3ld3v added S-committed Status: Planned work in a sprint and removed S-committed Status: Planned work in a sprint labels Mar 29, 2022
@r3ld3v r3ld3v added S-committed Status: Planned work in a sprint and removed S-committed Status: Planned work in a sprint labels Apr 14, 2022
daira added a commit to daira/zips that referenced this issue Apr 28, 2022
fixes zcash#561

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-committed Status: Planned work in a sprint
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants