Skip to content
This repository has been archived by the owner on Oct 12, 2024. It is now read-only.
/ noble-bls12-381 Public archive

DEPRECATED: use noble-curves instead. Fastest JS implementation of BLS12-381.

License

Notifications You must be signed in to change notification settings

paulmillr/noble-bls12-381

Repository files navigation

noble-bls12-381

Warning

The repository has been merged into noble-curves. Please head to the new repo for updates:

// npm install @noble/curves
import { bls12_381 } from '@noble/curves/bls12-381';

Fastest JS implementation of BLS12-381. Auditable, secure, 0-dependency aggregated signatures & pairings.

The pairing-friendly Barreto-Lynn-Scott elliptic curve construction allows to:

  • Construct zk-SNARKs at the 128-bit security
  • Use threshold signatures, which allows a user to sign lots of messages with one signature and verify them swiftly in a batch, using Boneh-Lynn-Shacham signature scheme.

Compatible with Algorand, Chia, Dfinity, ETH, FIL, ZEC. Matches specs pairing-curves-10, bls-sigs-04, hash-to-curve-12. To learn more about internals, navigate to utilities section.

This library belongs to noble cryptography

noble cryptography — high-security, easily auditable set of contained cryptographic libraries and tools.

Usage

Use NPM in node.js / browser, or include single file from GitHub's releases page:

npm install @noble/bls12-381

License

MIT (c) 2019 Paul Miller (https://paulmillr.com), see LICENSE file.