gurvy

package module
v0.3.3 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2020 License: Apache-2.0 Imports: 0 Imported by: 0

README

gurvy

License Go Report Card GoDoc

Pairing Library implemented in Go

gurvy implements Elliptic Curve Cryptography (+Pairing) for BLS381, BLS377 and BN256. Originally developed (and used) by gnark.

Curves supported
  • BLS12-381 (Zcash)
  • BN256 (Ethereum)
  • BLS377 (ZEXE)
  • BW6-761 (EC supporting pairing on BLS377 field of definition)
Benchmarks

TODO

Documentation

Overview

Package gurvy is an elliptic curve (+pairing) library. It currently expose efficient implementations for bls381, bls377, bn256 and bw761

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ID

type ID uint16

ID represent a unique ID for a curve

const (
	UNKNOWN ID = iota
	BLS377
	BLS381
	BN256
	BW761
)

do not modify the order of this enum

func (ID) String

func (id ID) String() string

Directories

Path Synopsis
Package bls377 provides efficient elliptic curve and pairing implementation for bls377
Package bls377 provides efficient elliptic curve and pairing implementation for bls377
fp
Package fp contains field arithmetic operations for modulus 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177
Package fp contains field arithmetic operations for modulus 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177
fr
Package fr contains field arithmetic operations for modulus 8444461749428370424248824938781546531375899335154063827935233455917409239041
Package fr contains field arithmetic operations for modulus 8444461749428370424248824938781546531375899335154063827935233455917409239041
Package bls381 provides efficient elliptic curve and pairing implementation for bls381
Package bls381 provides efficient elliptic curve and pairing implementation for bls381
fp
Package fp contains field arithmetic operations for modulus 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787
Package fp contains field arithmetic operations for modulus 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787
fr
Package fr contains field arithmetic operations for modulus 52435875175126190479447740508185965837690552500527637822603658699938581184513
Package fr contains field arithmetic operations for modulus 52435875175126190479447740508185965837690552500527637822603658699938581184513
Package bn256 provides efficient elliptic curve and pairing implementation for bn256
Package bn256 provides efficient elliptic curve and pairing implementation for bn256
fp
Package fp contains field arithmetic operations for modulus 21888242871839275222246405745257275088696311157297823662689037894645226208583
Package fp contains field arithmetic operations for modulus 21888242871839275222246405745257275088696311157297823662689037894645226208583
fr
Package fr contains field arithmetic operations for modulus 21888242871839275222246405745257275088548364400416034343698204186575808495617
Package fr contains field arithmetic operations for modulus 21888242871839275222246405745257275088548364400416034343698204186575808495617
Package bw761 provides efficient elliptic curve and pairing implementation for bw761
Package bw761 provides efficient elliptic curve and pairing implementation for bw761
fp
Package fp contains field arithmetic operations for modulus 6891450384315732539396789682275657542479668912536150109513790160209623422243491736087683183289411687640864567753786613451161759120554247759349511699125301598951605099378508850372543631423596795951899700429969112842764913119068299
Package fp contains field arithmetic operations for modulus 6891450384315732539396789682275657542479668912536150109513790160209623422243491736087683183289411687640864567753786613451161759120554247759349511699125301598951605099378508850372543631423596795951899700429969112842764913119068299
fr
Package fr contains field arithmetic operations for modulus 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177
Package fr contains field arithmetic operations for modulus 258664426012969094010652733694893533536393512754914660539884262666720468348340822774968888139573360124440321458177

Jump to

Keyboard shortcuts

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