-
Notifications
You must be signed in to change notification settings - Fork 990
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
check Merkleproofs in one place #921
Comments
👍 Makes sense to me to simplify this and require the node and root to be passed in as args to |
housekeeping.. what's the status on this? |
Looking at verify_maturity in the current code, it has not been fixed yet... |
Believe #1203 is going to get rid of Merkle proofs altogether... |
@tromp - you need to check testnet3 branch. |
@tromp - you need to check testnet3 branch.
the questionable code is no longer present in testnet3 transaction.rs
so we can close this issue...
|
Closing. |
the verify_inputs method in transaction.rs checks whether merkle proofs of coinbase inputs verify in isolation, that is, without relating their node and root to anything outside the proof.
this is clearly necessary to make the proof relevant and AFAICT is done in method
verify_maturity
But that one also verifies the proof. Which makes verify_inputs rather redundant.
(Unless there can be a long time between the two verifies in which resources can be unjustly tied up
I would find the verify method a lot more sensible if it takes node and root as arguments,
allowing for all the above code to be replaced by
which also avoid the possibility of doing possibly bogus checks in isolation.
Not only that, but it also makes Merkle proofs significantly shorter, since they no longer need to store the node and root themselves.
The text was updated successfully, but these errors were encountered: