You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original IPA backend was swapped with KZG for cost-effective Ethereum L1 verifiability, and comes with a Solidity verifier. Support for many additional curves and other experimental features were added, and the system was eventually re-architected by splitting the front- and backends.
PSE-Halo2 is in maintenance mode starting January 2025, which means:
Bugs reported will be fixed
PRs with non-trivial but narrow-scope additions or fixes will be reviewed
Feature-add PRs or wide-scope changes to the architecture will not be reviewed. To extend PSE-Halo2 with significant features we recommend Axiom's fork instead.
We use the main branch for development, which means it may contain
unstable/unfinished features. For end-users we recommend using the tag releases
which can be seen as curated checkpoints with some level of guarantee of
stability.
For experimental features privacy-scaling-explorations/halo2 fork adds, please refer to experimental-features.md.
Minimum Supported Rust Version
Requires Rust 1.65.0 or higher.
Minimum supported Rust version can be changed in the future, but it will be done with a
minor version bump.
Controlling parallelism
halo2 currently uses rayon for parallel computation. The RAYON_NUM_THREADS environment variable can be used to set the number of threads.
When compiling to WASM-targets, notice that since version 1.7, rayon will fallback automatically (with no need to handle features) to require getrandom in order to be able to work. For more info related to WASM-compilation.
Unless you explicitly state otherwise, any contribution intentionally
submitted for inclusion in the work by you, as defined in the Apache-2.0
license, shall be dual licensed as above, without any additional terms or
conditions.