-
Notifications
You must be signed in to change notification settings - Fork 6
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
feat: info endpoint in evm prover #140
Conversation
if err != nil { | ||
return nil, nil, fmt.Errorf("failed to decode verifier key %w", err) | ||
} | ||
// Q: Do we still need the fixed size of 32 bytes considering the verifier key is of type []byte? |
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.
@rootulp you'd probably know
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.
If this code can pass a []byte
to groth16.NewClientState
then no need to copy the byte slice into a fixed 32 byte array. In other words, let's do what makes Go compiler happy.
If we need to modify types exposed by the groth16 library then I'm fine with both []byte
or [32]byte for the verifier key.
[32]byte` verifier key is more explicit and probably a better practice but not blocking on it if we're not already changing the type.
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 :) thanks
use sp1_sdk::{include_elf, ProverClient, SP1ProvingKey}; | ||
|
||
// The ELF file for the Succinct RISC-V zkVM. | ||
const BLEVM_ELF: &[u8] = include_elf!("blevm-mock"); |
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.
[no change needed] I'm surprised this works b/c blevm-mock
is defined in a different directory
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.
it works because i compiled it in the build.rs
if err != nil { | ||
return nil, nil, fmt.Errorf("failed to decode verifier key %w", err) | ||
} | ||
// Q: Do we still need the fixed size of 32 bytes considering the verifier key is of type []byte? |
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.
If this code can pass a []byte
to groth16.NewClientState
then no need to copy the byte slice into a fixed 32 byte array. In other words, let's do what makes Go compiler happy.
If we need to modify types exposed by the groth16 library then I'm fine with both []byte
or [32]byte for the verifier key.
[32]byte` verifier key is more explicit and probably a better practice but not blocking on it if we're not already changing the type.
Overview
Fixes #141
Fixes #79