Skip to content

Commit 8a399cc

Browse files
docs: update README (#4)
* update README * typos * update re feedback * fix link * Apply suggestions from code review Co-authored-by: François Garillot <[email protected]> --------- Co-authored-by: François Garillot <[email protected]>
1 parent eeea8c7 commit 8a399cc

File tree

3 files changed

+38
-44
lines changed

3 files changed

+38
-44
lines changed

Diff for: README.md

+38-44
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,43 @@
1-
# WP1
1+
# Sphinx
22

3-
![](./assets/wp1.png)
3+
![](./assets/sphinx.jpg)
4+
*[Natasha De Vere](https://www.flickr.com/photos/col_and_tasha/6060947569/in/photostream/), [Attribution (CC BY 2.0)](https://creativecommons.org/licenses/by/2.0/)*
45

5-
WP1 is a performant, 100% open-source, contributor-friendly zero-knowledge virtual machine (zkVM) that can prove the execution of arbitrary Rust (or any LLVM-compiled language) programs. WP1 democratizes access to ZKPs by allowing developers to use programmable truth with popular programming languages.
6-
7-
WP1 is inspired by the open-source software movement and takes a collaborative approach towards building the best zkVM for rollups, coprocessors and other ZKP applications. We envision a diversity of contributors integrating the latest ZK innovations, creating a zkVM that is _performant_, _customizable_ and will stand the _test of time_.
8-
9-
**[Install](https://succinctlabs.github.io/sp1/getting-started/install.html)**
10-
| [Docs](https://succinctlabs.github.io/sp1)
11-
| [Examples](https://github.com/wormhole-foundation/wp1/tree/main/examples)
12-
13-
## For Developers: Build with WP1
14-
15-
**Note that WP1 is still in alpha and is not yet ready for production use.**
16-
17-
18-
Today, developers can write programs, including complex, large programs like a ZK Tendermint light client, in Rust (with std support), generate proofs and verify them. Most Rust crates should be supported and can be used seamlessly by your program. Example programs can be found in the [examples](https://github.com/wormhole-foundation/wp1/tree/main/examples) folder.
19-
20-
To get started, make sure you have [Rust](https://www.rust-lang.org/tools/install) installed. Then follow the [installation](https://succinctlabs.github.io/sp1/getting-started/install.html) guide in the WP1 book and read the [getting started](https://succinctlabs.github.io/sp1/getting-started/quickstart.html) section.
21-
22-
For developers looking for inspiration on what to build, check out the open issues with the [showcase](https://github.com/wormhole-foundation/wp1/issues?q=is%3Aopen+is%3Aissue+label%3Ashowcase) label to see what sorts of programs that showcase the capabilities of WP1 are interesting to hack on.
23-
24-
## For Contributors
25-
26-
Open-source is a core part of WP1's ethos and key to its advantages. We wish to cultivate a vibrant community of open-source contributors that span individuals, teams and geographies. If you want to contribute, or follow along with contributor discussion, you can use our main Telegram to chat with us. Our contributor guidelines can be found in [CONTRIBUTING.md](./CONTRIBUTING.md).
27-
28-
Find a list of [good first issues](https://github.com/wormhole-foundation/wp1/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22+) in the open issues of this repo. We are always looking for contributors interested in tasks big and small, including minor chores across the codebase, optimizing performance, adding precompiles for commonly used cryptographic operations, adding documentation, creating new example programs and more. Please reach out in the Telegram chat if interested!
29-
30-
31-
## Roadmap
32-
33-
Today, WP1 can generate and verify proofs for Rust programs that have been compiled to RISC-V. WP1 supports proving of programs of arbitrary length by using a unique "shared challenges" argument that allows the prover to shard a long computation into small shards, and then generate a global proof that these shards are properly connected together.
34-
35-
The main priorities in the next few months are performance optimizations, getting the core zkVM constraint logic audited, as well as wrapping the WP1 STARK proof into a SNARK proof that is cheaply verifiable in the EVM (by adapting similar [previous work](https://github.com/succinctlabs/gnark-plonky2-verifier) done by the Succinct Team).
6+
Sphinx is an open-source zero-knowledge virtual machine (zkVM) that can prove
7+
the execution of [RISC-V](https://en.wikipedia.org/wiki/RISC-V) bytecode, with
8+
initial tooling support for programs written in
9+
[Rust](https://en.wikipedia.org/wiki/Rust_(programming_language)). Additionally,
10+
Sphinx aims to support other reduction engines, including the evaluator for the
11+
[Lurk programming language](https://www.lurk-lang.org) , which could be extended
12+
to other functional languages like JavaScript or Lean.
3613

3714
## Acknowledgements
3815

39-
We would like to acknowledge the projects below whose previous work has been instrumental in making this project a reality:
40-
41-
- [Plonky3](https://github.com/Plonky3/Plonky3): The WP1's prover is powered by the Plonky3 toolkit.
42-
- [Valida](https://github.com/valida-xyz/valida): The WP1 cross-table lookup architecture, prover, borrow macro, and chip design are inspired by Valida.
43-
- [RISC0](https://github.com/risc0/risc0): The WP1 Rust toolchain and install/build scripts for the toolchain borrow code from RISC0.
44-
- [SP1](https://github.com/succinctlabs/sp1): The SP1 ZKVM of which this repo is a fork of.
45-
46-
## Tips
47-
48-
We recommend you install the [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) extension.
49-
Note that if you use `cargo prove new` inside a monorepo, you will need to add the manifest file to `rust-analyzer.linkedProjects` to get full IDE support.
16+
Sphinx builds on the work of many organizations who have supported and
17+
contributed to open-source software. These organizations, and many others not
18+
listed, exemplify the principle that zero-knowledge cryptography is not a
19+
zero-sum game, and that when we make our work freely available for others to
20+
build on, the whole world benefits:
21+
22+
- [Wormhole Foundation](https://wormhole.foundation/) who has generously
23+
supported the project from the beginning both through awarding Lurk Lab a [contributor
24+
grant](https://wormhole.foundation/blog/wormhole-foundation-awards-contributor-grant-to-lurk-lab-to-bring-trustless-transfers-to-wormhole-with-zk-proofs),
25+
and through their broader ecosystem work.
26+
- [Succinct Labs](https://www.succinct.xyz), a fellow Wormhole ecosystem
27+
[contributor](https://wormhole.foundation/blog/wormhole-foundation-awards-contributor-grant-to-supranational-for-wormhole-zk-hardware-acceleration),
28+
whose [SP1](https://github.com/succinctlabs/sp1) zkVM developed a novel
29+
approach to integrating custom precompile acceleration and integrated this
30+
with work from Risc Zero, Valida, Polygon and others to create an excellent
31+
packaged developer experience. Sphinx is a fork of SP1
32+
- [Risc Zero](https://www.risczero.com/), who developed and maintain the
33+
[riscv32im-risc0-zkvm-elf](https://doc.rust-lang.org/nightly/rustc/platform-support/riscv32im-risc0-zkvm-elf.html)
34+
Rust toolchain and related tooling.
35+
- [Delendum](https://delendum.xyz/writings/2023-05-10-zkvm-design.html) and [Lita Foundation](https://www.lita.foundation/), whose [Valida
36+
zkVM](https://github.com/valida-xyz/valida) influenced the cross-table lookup
37+
architecture, prover, borrow macro, and chip design of SP1.
38+
- [Polygon Zero](https://polygon.technology/about) whose
39+
[Plonky3](https://github.com/Plonky3/Plonky3) STARK toolkit powers much of the
40+
above projects.
41+
42+
We sincerely thank all these teams and projects, and we are committed to
43+
upstreaming our contributions wherever possible.

Diff for: assets/sphinx.jpg

3.75 MB
Loading

Diff for: assets/wp1.png

-2.47 MB
Binary file not shown.

0 commit comments

Comments
 (0)