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
Overwinter SignatureHash #2903
Overwinter SignatureHash #2903
Conversation
This is a rebased and cleaned-up version of #2896. Still todo:
|
74a57e1
to
e92418b
Compare
516a278
to
7eeb9fe
Compare
Note to reviewers: do not trust the commit ordering on GitHub, it does not handle the rebasing well. |
Just to check that nothing was horribly broken, I adjusted Current SigHash
New SigHash
New SigHash, with caching
|
9d5c135
to
44212dd
Compare
Once I rebase this on #2925 (so all the underlying pieces are in place, and this code can be finished), I will collect benchmark data for both the old and new SignatureHash as a function of the number of inputs, to verify that this PR does indeed address the performance problem sufficiently. |
☔ The latest upstream changes (presumably #2898) made this pull request unmergeable. Please resolve the merge conflicts. |
… parameter We do not need to be able to calculate multiple SignatureHash versions for a single transaction format; instead, we use the transaction format to determine the SigVersion. The consensus branch ID *does* need to be passed in from the outside, as only the caller knows the context in which the SignatureHash is being calculated (ie. mempool acceptance vs. block validation). JoinSplit signature verification has been moved into ContextualCheckTransaction, where the consensus branch ID can be obtained. The argument to the sign command for zcash-tx has been modified to take a height in addition to the optional sigtype flags.
with help from str4d
☔ The latest upstream changes (presumably #2940) made this pull request unmergeable. Please resolve the merge conflicts. |
Rebased on master to fix merge conflicts, namely removing the partial commit from bitcoin/bitcoin#6915 which was fully back-ported in #2940. @zkbot try |
Overwinter SignatureHash Implements ZIP 143. Includes code cherry-picked from the following upstream PRs: - bitcoin/bitcoin#7276 - bitcoin/bitcoin#7976 - bitcoin/bitcoin#8118 - bitcoin/bitcoin#8149 - Only amount validation and SignatureHash commits. - bitcoin/bitcoin#8346 - bitcoin/bitcoin#8524 Part of #2074 and #2254. Closes #1408 and #2584.
💔 Test failed - pr-try |
@arielgabizon so we know that the |
The failure in the Thanks all! Any further issues raised can be addressed in subsequent PRs. @zkbot r+ |
📌 Commit 4553901 has been approved by |
Overwinter SignatureHash Implements ZIP 143. Includes code cherry-picked from the following upstream PRs: - bitcoin/bitcoin#7276 - bitcoin/bitcoin#7976 - bitcoin/bitcoin#8118 - bitcoin/bitcoin#8149 - Only amount validation and SignatureHash commits. - bitcoin/bitcoin#8346 - bitcoin/bitcoin#8524 Part of #2074 and #2254. Closes #1408 and #2584.
Implements ZIP 143.
Includes code cherry-picked from the following upstream PRs:
Part of #2074 and #2254. Closes #1408 and #2584.