tezos-bls12-381-polynomial

Polynomials over BLS12-381 finite field
README

This repository contains aPlonK, the SNARK proving system that powers Epoxy, Tezos' validity rollup.

This repository is developed and maintained by the cryptography team of Nomadic Labs.

Structure of the repository

aplonk

aPlonK is a PlonK-inspired proving system which focuses on proof-aggregation and distributed proof generation.

plonk

PlonK is a modular implementation of the PlonK proving system which serves as a basis for APlonK.

plompiler

Plompiler is a monadic Domain Specific Language embedded in OCaml that can be used to build circuits for PlonK or aPlonK.
It contains a library of gadgets including optimized implementation of the Anemoi and Poseidon hash functions as well as Schnorr signatures on JubJub.

epoxy-tx

epoxy-tx is a transactional rollup for Epoxy which allows the transfer of Tezos' tickets.
The statements are written using plompiler.

bls12-381-polynomial

bls12-381-polynomial contains C libraries and bindings to optimized implementations of various algorithms related to the bls12-381 curve, and polynomials based on it's scalar field. It is based on the blst library.

Compiling

To setup correctly your local environment run the script
./scripts/install_build_deps.sh which will take care of creating a
local opam directory _opam.

Install
Published
29 Nov 2022
Sources
privacy-team-v1.0.1.tar.gz
md5=03d6ca5fb1c6865b6628e0dd49575895
sha512=20494d1d00ded43f3625e06e037d3bad04f0a7320914b542b882d3d0293c9b02845b7ca9ee4ff0eb8ea495eff5633016861c39370cca92c12aacae0e84483ca4
Dependencies
odoc
with-doc
bisect_ppx
with-test
polynomial
with-test & >= "0.4.0" & < "0.5.0"
alcotest
with-test & >= "1.1.0"
bigstringaf
>= "0.5.0"
ppx_repr
>= "0.6.0"
bls12-381
>= "4.0.0"
ocaml
>= "4.12.0"
dune
>= "2.8"
Reverse Dependencies
tezos-plonk
>= "1.0.1"