OpenViSTAI · Agents · Blockchain · Crypto
Menu
ZK & Privacy

Gnark Crypto

Gnark Crypto is an open-source Go library of cryptographic primitives and algorithms, including elliptic-curve and pairing operations, finite-field arithmetic, hashes, signatures, commitments and protocol components for zero-knowledge software.

Independent OpenViST project profile, based on linked sources.

Gnark Crypto — OpenViST project profile in ZK & Privacy.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Gnark Crypto when implementing cryptographic components in Go and its supported curves, fields or algorithms fit the project’s requirements.

Who it is for

  • Go developers building zero-knowledge proof software who need cryptographic building blocks.
  • Teams selecting curve, pairing or finite-field packages for proof-system components.

Documented uses

  • Add supported elliptic-curve operations to a Go proof-system project.
  • Perform pairing-based computations using supported curve families.
  • Use finite-field, hashing, signature, commitment or protocol packages as components in zero-knowledge software.
Before you choose

Requirements & limits

The repository is public and licensed under Apache-2.0. Go 1.26 or newer is required.

  • The library supports pairing-friendly BN, BLS12, BLS24 and BW6 curves, along with several non-pairing-friendly curves.
  • Small-field packages include components for STARK-style provers; KoalaBear and MamaBear also list an experimental Vortex commitment scheme.
  • The README warns that the library is not fully audited and makes no security guarantees, including for constant-time implementation or side-channel resistance.
  • Packages are optimized for 64-bit amd64 and arm64 architectures; pure-Go fallbacks are provided for other platforms.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Add Gnark Crypto to a Go module

Install the library as a dependency in a Go project.

Before you start

  • Go 1.26 or newer
  • A Go module

Steps

  1. Run the command below in the project.

    Documented command
    go get github.com/consensys/gnark-crypto
  2. In go.mod, use the case-sensitive module path containing consensys, not ConsenSys.

Expected outcome

The Go module declares Gnark Crypto as a project dependency.

Guide limitations

  • This covers dependency installation only; it does not describe implementing or running a proof system.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
14 October 2026
Original website title
Consensys-Incorporated/gnark-crypto · Official homepage title · retained in its source language