Skip to content

Conversation

@hero78119
Copy link
Collaborator

@hero78119 hero78119 commented Dec 29, 2025

Resolve emulator panic when proving few L1 blocks on ethproofs, which is some left-over.
Implement secp256r1_verify_signature by pure riscv and patch with precompile later

benchmark & verification

verified by proving with ethereum L1 block number 24030900 with e2e pass. Per secp256r1_verify_signature around 11.9M cycle

raw log

program executed 464286924 instructions in 1857147700 cycles

^[[1;34mDEBUG   ^[[0m    │  ┝━ 🐛 [debug]: PHANTOM_SYSCALL_LOG_PC_CYCLE: label=secp256r1_verify_signature start,pc=807e72c,cycle=1073390924
^[[1;34mDEBUG   ^[[0m    │  ┝━ 🐛 [debug]: PHANTOM_SYSCALL_LOG_PC_CYCLE: label=secp256r1_verify_signature end,pc=80822c8,cycle=1120958380

#[inline]
pub fn secp256r1_verify_signature(_msg: &[u8; 32], _sig: &[u8; 64], _pk: &[u8; 64]) -> bool {
unimplemented!()
pub fn secp256r1_verify_signature(msg: &[u8; 32], sig: &[u8; 64], pk: &[u8; 64]) -> Option<()> {
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hero78119 hero78119 force-pushed the feat/investigate_bug branch from 8d340bc to 86f6038 Compare December 29, 2025 08:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants