package tezos-plonk

  1. Overview
  2. Docs
Plonk zero-knowledge proving system

Install

Dune Dependency

Authors

Maintainers

Sources

privacy-team-v1.0.1.tar.gz
md5=03d6ca5fb1c6865b6628e0dd49575895
sha512=20494d1d00ded43f3625e06e037d3bad04f0a7320914b542b882d3d0293c9b02845b7ca9ee4ff0eb8ea495eff5633016861c39370cca92c12aacae0e84483ca4

Description

Published: 29 Nov 2022

README

README.md

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.

Dependencies (7)

  1. tezos-plompiler = version
  2. tezos-bls12-381-polynomial = version
  3. data-encoding
  4. ppx_repr >= "0.6.0"
  5. hacl-star >= "0.4.0"
  6. ocaml >= "4.12.0"
  7. dune >= "2.8"

Dev Dependencies (1)

  1. odoc with-doc

Used by (1)

  1. tezos-protocol-environment >= "15.1" & < "17.1"

Conflicts

None