Skip to content
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

Precompile: Add secp256r1 precompiles #230

Closed
puma314 opened this issue Feb 14, 2024 · 1 comment
Closed

Precompile: Add secp256r1 precompiles #230

puma314 opened this issue Feb 14, 2024 · 1 comment
Labels
precompile Add a new precompile to SP1

Comments

@puma314
Copy link
Contributor

puma314 commented Feb 14, 2024

SP1 already has support for secp256k1 precompiles used in ECDSA signature verification. It would be good to add similar precompiles for secp256r1. This would involve

  • implementing the secp256r1 parameters, similar to secp256k1 parameters
  • adding a new chip with the secp256r1 parameters
  • creating extern syscalls to utilize these new precompiles
  • writing tests for these syscalls to verify they work correctly

The precompile system of SP1 is not well documented at present, so this would require the contributor to be able to figure out how things work with minimal documentation.

@puma314 puma314 added the precompile Add a new precompile to SP1 label Feb 14, 2024
@nfurfaro
Copy link

nfurfaro commented Mar 6, 2024

I'm interested in tackling this!

nhtyy added a commit that referenced this issue Jan 15, 2025
* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix

* fix ci

---------

Co-authored-by: nhtyy <[email protected]>
umadayal pushed a commit that referenced this issue Jan 29, 2025
* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix

* fix ci

---------

Co-authored-by: nhtyy <[email protected]>
nhtyy added a commit that referenced this issue Jan 31, 2025
* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix: remove ed-consesnus patch

* fix: test mod vis

* fix: examples

* fix: docker ci (#230)

* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix

* fix ci

---------

Co-authored-by: nhtyy <[email protected]>

* doc updates

* chore: book + tracing (#1932)

* fix: book deploy workflow

* add versioned docs

* chore: don't skip deploy step

* try symlink gcc per rocksdb rec

* try add fix for ARM musl targets

* fix: need seperate musl setups arm vs x86

* combine old arm musl setup

* feat: v4.0.1 (#1941)

Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: macos-12 runners deprecated

* improve docs regarding new memory argument

* resolve comments

* fix(book): commit yarn lock file (#1960)

* feat: display the correct proof type in SP1ProofWithPublicValues::bytes() (#1964)

* fix(ci): cache paths not found in book workflow

* fix(ci): correct cache usage for book (#1965)

* fix(ci): fix big int version to avoid msrv (#1966)

* chore: include rustc --version stderr in panic (#1968)

* fix(sdk): implemented verify for EnvProver (#1963)

* perf: rm vec allocs from words conversions (#1972)

* feat(sdk): proof timeout fix (#1971)

* feat: don't checkout submodules when doing `cargo prove new --evm` (#1976)

* fix(sdk): retry network request proof (#1977)

* feat(sdk): Turn off `alloy-*` crate features by default (#1980)

* docs: add audit report for v4, fix typo (#1988)

* docs: improve precompile security docs (#1991)

* fix: Write diagnostics to stderr (vs stdout) (#1978)

* fix(examples): check next validators hash in tendermint program (#1992)

* feat(docker-build): pass additional workspace directory (#1975)

* chore: ignore generated by Intellij-based IDEs. (#1986)

* docs: add GitHub token usage example in installation guide (#1984)

* feat: remove deprecated #[clap] attribute (#1898)

* chore: rm redundant to_vec (#1970)

* chore(clippy): misc clippy fixes (#1969)

* fix: use downloadable go directive 1.22.0 (#1967)

* chore: reorder impl members to match trait definition (#1985)

* fix: deferred checkpoints optimization (#1973)

Co-authored-by: N <[email protected]>

* fix(ci): clippy + fmt (#1997)

* fix: typo in prover network docs (#1998)

* test: check syscalls are actually emitted (#1981)

* perf(prover): powers of alpha (#2000)

Co-authored-by: nhtyy <[email protected]>
Co-authored-by: Yuwen Zhang <[email protected]>
Co-authored-by: jtguibas <[email protected]>
Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: rkm0959 <[email protected]>
Co-authored-by: Aurélien <[email protected]>
Co-authored-by: Matthias Seitz <[email protected]>
Co-authored-by: srdtrk <[email protected]>
Co-authored-by: Matt Stam <[email protected]>
Co-authored-by: Ivan Mikushin <[email protected]>
Co-authored-by: Abishek Bashyal <[email protected]>
Co-authored-by: DevOrbitlabs <[email protected]>
Co-authored-by: Gengar <[email protected]>
Co-authored-by: crStiv <[email protected]>
Co-authored-by: Chris T. <[email protected]>

* nit

---------

Co-authored-by: nhtyy <[email protected]>
Co-authored-by: Yuwen Zhang <[email protected]>
Co-authored-by: jtguibas <[email protected]>
Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: rkm0959 <[email protected]>
Co-authored-by: Aurélien <[email protected]>
Co-authored-by: Matthias Seitz <[email protected]>
Co-authored-by: srdtrk <[email protected]>
Co-authored-by: Matt Stam <[email protected]>
Co-authored-by: Ivan Mikushin <[email protected]>
Co-authored-by: Abishek Bashyal <[email protected]>
Co-authored-by: DevOrbitlabs <[email protected]>
Co-authored-by: Gengar <[email protected]>
Co-authored-by: crStiv <[email protected]>
Co-authored-by: Chris T. <[email protected]>
nhtyy added a commit that referenced this issue Jan 31, 2025
* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix: remove ed-consesnus patch

* fix: test mod vis

* fix: examples

* fix: docker ci (#230)

* chore: bump docker image

* chore: bump patches

* fix: workflow docker gnark install toolchain

* fix: bump examples patch

* fix: clean up install logic

* fix

* fix ci

---------

Co-authored-by: nhtyy <[email protected]>

* doc updates

* chore: book + tracing (#1932)

* fix: book deploy workflow

* add versioned docs

* chore: don't skip deploy step

* try symlink gcc per rocksdb rec

* try add fix for ARM musl targets

* fix: need seperate musl setups arm vs x86

* combine old arm musl setup

* feat: v4.0.1 (#1941)

Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: macos-12 runners deprecated

* improve docs regarding new memory argument

* resolve comments

* fix(book): commit yarn lock file (#1960)

* feat: display the correct proof type in SP1ProofWithPublicValues::bytes() (#1964)

* fix(ci): cache paths not found in book workflow

* fix(ci): correct cache usage for book (#1965)

* fix(ci): fix big int version to avoid msrv (#1966)

* chore: include rustc --version stderr in panic (#1968)

* fix(sdk): implemented verify for EnvProver (#1963)

* perf: rm vec allocs from words conversions (#1972)

* feat(sdk): proof timeout fix (#1971)

* feat: don't checkout submodules when doing `cargo prove new --evm` (#1976)

* fix(sdk): retry network request proof (#1977)

* feat(sdk): Turn off `alloy-*` crate features by default (#1980)

* docs: add audit report for v4, fix typo (#1988)

* docs: improve precompile security docs (#1991)

* fix: Write diagnostics to stderr (vs stdout) (#1978)

* fix(examples): check next validators hash in tendermint program (#1992)

* feat(docker-build): pass additional workspace directory (#1975)

* chore: ignore generated by Intellij-based IDEs. (#1986)

* docs: add GitHub token usage example in installation guide (#1984)

* feat: remove deprecated #[clap] attribute (#1898)

* chore: rm redundant to_vec (#1970)

* chore(clippy): misc clippy fixes (#1969)

* fix: use downloadable go directive 1.22.0 (#1967)

* chore: reorder impl members to match trait definition (#1985)

* fix: deferred checkpoints optimization (#1973)

Co-authored-by: N <[email protected]>

* fix(ci): clippy + fmt (#1997)

* fix: typo in prover network docs (#1998)

* test: check syscalls are actually emitted (#1981)

* perf(prover): powers of alpha (#2000)

Co-authored-by: nhtyy <[email protected]>
Co-authored-by: Yuwen Zhang <[email protected]>
Co-authored-by: jtguibas <[email protected]>
Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: rkm0959 <[email protected]>
Co-authored-by: Aurélien <[email protected]>
Co-authored-by: Matthias Seitz <[email protected]>
Co-authored-by: srdtrk <[email protected]>
Co-authored-by: Matt Stam <[email protected]>
Co-authored-by: Ivan Mikushin <[email protected]>
Co-authored-by: Abishek Bashyal <[email protected]>
Co-authored-by: DevOrbitlabs <[email protected]>
Co-authored-by: Gengar <[email protected]>
Co-authored-by: crStiv <[email protected]>
Co-authored-by: Chris T. <[email protected]>

* fix: counts and small shape fixing (#2007)

* patch lock

---------

Co-authored-by: nhtyy <[email protected]>
Co-authored-by: Yuwen Zhang <[email protected]>
Co-authored-by: jtguibas <[email protected]>
Co-authored-by: Ratan Kaliani <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: rkm0959 <[email protected]>
Co-authored-by: Aurélien <[email protected]>
Co-authored-by: Matthias Seitz <[email protected]>
Co-authored-by: srdtrk <[email protected]>
Co-authored-by: Matt Stam <[email protected]>
Co-authored-by: Ivan Mikushin <[email protected]>
Co-authored-by: Abishek Bashyal <[email protected]>
Co-authored-by: DevOrbitlabs <[email protected]>
Co-authored-by: Gengar <[email protected]>
Co-authored-by: crStiv <[email protected]>
Co-authored-by: Chris T. <[email protected]>
Co-authored-by: umadayal <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
precompile Add a new precompile to SP1
Projects
None yet
Development

No branches or pull requests

3 participants