-
Notifications
You must be signed in to change notification settings - Fork 32
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
Enable verifying proofs based on the fork #1011
Conversation
00c76bb
to
b646105
Compare
a27a641
to
add64e0
Compare
crates/sovereign-sdk/rollup-interface/src/state_machine/zk/mod.rs
Outdated
Show resolved
Hide resolved
crates/sovereign-sdk/rollup-interface/src/state_machine/zk/mod.rs
Outdated
Show resolved
Hide resolved
crates/sovereign-sdk/rollup-interface/src/state_machine/zk/mod.rs
Outdated
Show resolved
Hide resolved
ea238c1
to
af90bb8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
left a few nits
crates/sovereign-sdk/rollup-interface/src/state_machine/zk/mod.rs
Outdated
Show resolved
Hide resolved
) -> Result<Vec<u8>, Self::Error> { | ||
let receipt: Receipt = bincode::deserialize(serialized_proof)?; | ||
|
||
#[allow(clippy::clone_on_copy)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CodeCommitment type is copyable (inner is [u32;8]), but we are calling clone on it. Hence it is unnecessary and can be just dereferenced with *. It was like that previously hence didn't give much attention just copy-pasted.
Description
This PR adds a mapping from the fork spec id to risc0 code commitment. This will enable full-nodes to verify the proofs retrospectively.
Also, this PR clears up the ForkManager implementation a bit.
There exists couple of concerns and potential future issues:
Linked Issues