backend

package
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 11, 2023 License: Apache-2.0 Imports: 3 Imported by: 93

Documentation

Overview

Package backend implements Zero Knowledge Proof systems: it consumes circuit compiled with gnark/frontend.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ID added in v0.4.0

type ID uint16

ID represent a unique ID for a proving scheme

const (
	UNKNOWN ID = iota
	GROTH16
	PLONK
	PLONKFRI
)

func Implemented added in v0.5.0

func Implemented() []ID

Implemented return the list of proof systems implemented in gnark

func (ID) String added in v0.5.0

func (id ID) String() string

String returns the string representation of a proof system

type ProverConfig added in v0.6.1

type ProverConfig struct {
	Force         bool                      // defaults to false
	HintFunctions map[hint.ID]hint.Function // defaults to all built-in hint functions
	CircuitLogger zerolog.Logger            // defaults to gnark.Logger
}

ProverConfig is the configuration for the prover with the options applied.

func NewProverConfig added in v0.6.1

func NewProverConfig(opts ...ProverOption) (ProverConfig, error)

NewProverConfig returns a default ProverConfig with given prover options opts applied.

type ProverOption added in v0.5.1

type ProverOption func(*ProverConfig) error

ProverOption defines option for altering the behaviour of the prover in Prove, ReadAndProve and IsSolved methods. See the descriptions of functions returning instances of this type for implemented options.

func IgnoreSolverError added in v0.5.1

func IgnoreSolverError() ProverOption

IgnoreSolverError is a prover option that indicates that the Prove algorithm should complete even if constraint system is not solved. In that case, Prove will output an invalid Proof, but will execute all algorithms which is useful for test and benchmarking purposes.

func WithCircuitLogger added in v0.7.0

func WithCircuitLogger(l zerolog.Logger) ProverOption

WithCircuitLogger is a prover option that specifies zerolog.Logger as a destination for the logs printed by api.Println(). By default, uses gnark/logger. zerolog.Nop() will disable logging

func WithHints added in v0.5.1

func WithHints(hintFunctions ...hint.Function) ProverOption

WithHints is a prover option that specifies additional hint functions to be used by the constraint solver.

Directories

Path Synopsis
Package groth16 implements Groth16 Zero Knowledge Proof system (aka zkSNARK).
Package groth16 implements Groth16 Zero Knowledge Proof system (aka zkSNARK).
Package hint allows to define computations outside of a circuit.
Package hint allows to define computations outside of a circuit.
Package plonk implements PLONK Zero Knowledge Proof system.
Package plonk implements PLONK Zero Knowledge Proof system.
Package witness provides serialization helpers to encode a witness into a []byte.
Package witness provides serialization helpers to encode a witness into a []byte.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL