Skip to content

oksanaphmn/hyperplonk

This branch is 6 commits behind EspressoSystems/hyperplonk:main.

Folders and files

NameName
Last commit message
Last commit date
Mar 11, 2024
May 26, 2023
Oct 14, 2022
Jul 17, 2023
Jul 17, 2023
Jul 17, 2023
Feb 21, 2023
Jan 24, 2023
Apr 20, 2022
Sep 27, 2022
Oct 14, 2022
Jan 24, 2023
Jan 18, 2023
Jan 12, 2023
Jan 12, 2023
Apr 20, 2022
Jan 12, 2023

Repository files navigation

Hyperplonk library

A linear-time FFT-free SNARK proof system (https://eprint.iacr.org/2022/1355.pdf).

Disclaimer

DISCLAIMER: This software is provided "as is" and its security has not been externally audited. Use at your own risk.

Development environment setup

Install RUST

We recommend using nix for installing the correct version of rust and additional libraries:

> curl -L https://nixos.org/nix/install | sh

Compiling the project for the first time

> nix-shell
> cargo build

Direnv

We recommend the following tools:

Run direnv allow at the repo root. You should see dependencies (including Rust) being installed (the first time might take a while). Upon modification on flake.nix, run direnv reload to reflect new dependencies or environment setups.

Tests

> cargo test --release --all

Generate and read the documentation

Standard

> cargo doc --open

Code formatting

To format your code run

> cargo fmt

Updating non-cargo dependencies

Run nix flake update if you would like to pin other version edit flake.nix beforehand. Commit the lock file when happy.

To update only a single input specify it as an argument, for example

nix flake update github:oxalica/rust-overlay

Benchmarks

To obtain benchmarks, run the script file scripts/run_benchmarks.sh. We refer to Table 5 and Table 6 in https://eprint.iacr.org/2022/1355.pdf for an example benchmark.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 98.4%
  • Nix 1.1%
  • Shell 0.5%