Directories
¶
| Path | Synopsis |
|---|---|
|
Package base provides the base package contains a set of base primitives, including but not limited to various elliptic curves, data structures, and common functions used across this library.
|
Package base provides the base package contains a set of base primitives, including but not limited to various elliptic curves, data structures, and common functions used across this library. |
|
algebra
Package algebra provides algebraic interfaces and generic helpers for groups, rings, fields, modules, and related algebraic structures.
|
Package algebra provides algebraic interfaces and generic helpers for groups, rings, fields, modules, and related algebraic structures. |
|
algebra/impl/fields
Package fields provides low-level field element traits used by generated finite field implementations.
|
Package fields provides low-level field element traits used by generated finite field implementations. |
|
base58
Package base58 implements base58 encoding and decoding.
|
Package base58 implements base58 encoding and decoding. |
|
binaryfields/bf128
Package bf128 implements arithmetic over the binary field GF(2^128).
|
Package bf128 implements arithmetic over the binary field GF(2^128). |
|
bitvec
Package bitvec implements a mutable bit vector with insertion, deletion, and indexing operations.
|
Package bitvec implements a mutable bit vector with insertion, deletion, and indexing operations. |
|
cgo/boring
Package boring wraps a small subset of BoringSSL BigNum APIs for internal use.
|
Package boring wraps a small subset of BoringSSL BigNum APIs for internal use. |
|
ct
Package ct provides constant-time operations for cryptographic implementations, helping to prevent timing-based side-channel attacks.
|
Package ct provides constant-time operations for cryptographic implementations, helping to prevent timing-based side-channel attacks. |
|
curves
Package curves provides implementation of various elliptic curves.
|
Package curves provides implementation of various elliptic curves. |
|
curves/curve25519
Package curve25519 implements Curve25519 group operations, field elements, scalars, and encoding helpers.
|
Package curve25519 implements Curve25519 group operations, field elements, scalars, and encoding helpers. |
|
curves/edwards25519
Package edwards25519 implements the Edwards25519 curve, its scalar and base fields, and point encoding.
|
Package edwards25519 implements the Edwards25519 curve, its scalar and base fields, and point encoding. |
|
curves/edwards25519/impl
Package impl contains low-level Edwards25519 field and point implementations plus hash-to-curve parameters.
|
Package impl contains low-level Edwards25519 field and point implementations plus hash-to-curve parameters. |
|
curves/impl/points
Package points provides point arithmetic implementations for short Weierstrass and twisted Edwards curves.
|
Package points provides point arithmetic implementations for short Weierstrass and twisted Edwards curves. |
|
curves/impl/rfc9380
Package rfc9380 implements hash-to-curve helpers from RFC 9380.
|
Package rfc9380 implements hash-to-curve helpers from RFC 9380. |
|
curves/impl/rfc9380/expanders
Package expanders implements XMD and XOF expanders for RFC 9380.
|
Package expanders implements XMD and XOF expanders for RFC 9380. |
|
curves/impl/rfc9380/mappers/elligator2
Package elligator2 implements Elligator 2 mappings for Curve25519 and Edwards25519.
|
Package elligator2 implements Elligator 2 mappings for Curve25519 and Edwards25519. |
|
curves/impl/rfc9380/mappers/sswu
Package sswu implements simplified SWU mapping and related helpers for RFC 9380.
|
Package sswu implements simplified SWU mapping and related helpers for RFC 9380. |
|
curves/impl/traits
Package traits provides reusable traits for field and curve wrappers.
|
Package traits provides reusable traits for field and curve wrappers. |
|
curves/k256
Package k256 implements the secp256k1 curve, field, scalar, and point types.
|
Package k256 implements the secp256k1 curve, field, scalar, and point types. |
|
curves/k256/impl
Package impl contains low-level secp256k1 field arithmetic and point operations.
|
Package impl contains low-level secp256k1 field arithmetic and point operations. |
|
curves/p256
Package p256 implements the NIST P-256 curve, field, scalar, and point types.
|
Package p256 implements the NIST P-256 curve, field, scalar, and point types. |
|
curves/p256/impl
Package impl contains low-level P-256 field arithmetic and point operations.
|
Package impl contains low-level P-256 field arithmetic and point operations. |
|
curves/pairable
Package pairable provides exposes pairing-friendly curve families and shared interfaces.
|
Package pairable provides exposes pairing-friendly curve families and shared interfaces. |
|
curves/pairable/bls12381
Package bls12381 implements the BLS12-381 curve groups, fields, and pairing interfaces.
|
Package bls12381 implements the BLS12-381 curve groups, fields, and pairing interfaces. |
|
curves/pairable/bls12381/impl
Package impl contains low-level BLS12-381 field arithmetic, points, and pairing engine code.
|
Package impl contains low-level BLS12-381 field arithmetic, points, and pairing engine code. |
|
curves/pasta
Package pasta implements the Pallas and Vesta curves and their field types.
|
Package pasta implements the Pallas and Vesta curves and their field types. |
|
curves/pasta/impl
Package impl contains low-level Pallas and Vesta field arithmetic and point operations.
|
Package impl contains low-level Pallas and Vesta field arithmetic and point operations. |
|
datastructures
Package datastructures provides generic data structure interfaces and implementations for Go.
|
Package datastructures provides generic data structure interfaces and implementations for Go. |
|
datastructures/bimap
Package bimap provides bidirectional map implementations for the datastructures interfaces.
|
Package bimap provides bidirectional map implementations for the datastructures interfaces. |
|
datastructures/hashmap
Package hashmap provides hash-based map implementations for the datastructures interfaces.
|
Package hashmap provides hash-based map implementations for the datastructures interfaces. |
|
datastructures/hashset
Package hashset provides hash-based set implementations for the datastructures interfaces.
|
Package hashset provides hash-based set implementations for the datastructures interfaces. |
|
nt
Package nt provides foundational number theory primitives for cryptographic applications.
|
Package nt provides foundational number theory primitives for cryptographic applications. |
|
nt/cardinal
Package cardinal provides representations for cardinal numbers (cardinalities) used to express the size of algebraic structures such as groups, rings, and fields.
|
Package cardinal provides representations for cardinal numbers (cardinalities) used to express the size of algebraic structures such as groups, rings, and fields. |
|
nt/crt
Package crt provides Chinese Remainder Theorem (CRT) reconstruction and decomposition for cryptographic applications.
|
Package crt provides Chinese Remainder Theorem (CRT) reconstruction and decomposition for cryptographic applications. |
|
nt/modular
Package modular provides CRT-accelerated modular arithmetic for cryptographic applications such as RSA and Paillier.
|
Package modular provides CRT-accelerated modular arithmetic for cryptographic applications such as RSA and Paillier. |
|
nt/num
Package num provides arbitrary-precision arithmetic for cryptographic applications.
|
Package num provides arbitrary-precision arithmetic for cryptographic applications. |
|
nt/numct
Package numct provides constant-time arbitrary-precision arithmetic for cryptographic applications.
|
Package numct provides constant-time arbitrary-precision arithmetic for cryptographic applications. |
|
nt/znstar
Package znstar provides multiplicative groups of units modulo n, denoted (Z/nZ)*, for cryptographic applications such as RSA and Paillier encryption.
|
Package znstar provides multiplicative groups of units modulo n, denoted (Z/nZ)*, for cryptographic applications such as RSA and Paillier encryption. |
|
polynomials
Package polynomials provides polynomial rings and modules over algebraic structures with helpers for sampling, evaluation, and serialisation.
|
Package polynomials provides polynomial rings and modules over algebraic structures with helpers for sampling, evaluation, and serialisation. |
|
polynomials/interpolation/lagrange
Package lagrange provides Lagrange interpolation utilities over finite fields and modules.
|
Package lagrange provides Lagrange interpolation utilities over finite fields and modules. |
|
prng/csprng
Package csprng defines interfaces and helpers for cryptographically secure PRNGs, including a threadsafe wrapper.
|
Package csprng defines interfaces and helpers for cryptographically secure PRNGs, including a threadsafe wrapper. |
|
prng/csprng/fkechacha20
Package fkechacha20 implements a cryptographically-secure pseudo-random number generator based on a fork of the ChaCha20 with fast key erasure.
|
Package fkechacha20 implements a cryptographically-secure pseudo-random number generator based on a fork of the ChaCha20 with fast key erasure. |
|
prng/csprng/nist
Package nist implements a cryptographically-secure pseudo-random number generator i.e Deterministic Random Bit Generator (DRBG) definition of NIST spec, based on AES (AES128 or AES256) as block cipher in counter mode.
|
Package nist implements a cryptographically-secure pseudo-random number generator i.e Deterministic Random Bit Generator (DRBG) definition of NIST spec, based on AES (AES128 or AES256) as block cipher in counter mode. |
|
prng/csprng/rfc8937
Package rfc8937 provides a randomness wrapper that ties the security of the CSPRNG to a deterministic signing key.
|
Package rfc8937 provides a randomness wrapper that ties the security of the CSPRNG to a deterministic signing key. |
|
prng/pcg
Package pcg provides a seedable PCG-based PRNG for tests and non-cryptographic randomness.
|
Package pcg provides a seedable PCG-based PRNG for tests and non-cryptographic randomness. |
|
serde
Package serde provides serialisation and deserialization utilities using CBOR (Concise Binary Object Representation) format.
|
Package serde provides serialisation and deserialization utilities using CBOR (Concise Binary Object Representation) format. |
|
utils
Package utils provides common utility functions and helpers for working with Go primitives and data structures.
|
Package utils provides common utility functions and helpers for working with Go primitives and data structures. |
|
utils/algebrautils
Package algebrautils provides utilities for working with algebraic structures such as monoids, groups, rings, and fields.
|
Package algebrautils provides utilities for working with algebraic structures such as monoids, groups, rings, and fields. |
|
utils/ioutils
Package ioutils provides I/O helpers for Readers and Writers.
|
Package ioutils provides I/O helpers for Readers and Writers. |
|
utils/iterutils
Package iterutils provides functional utilities for working with Go 1.23+ iterators (iter.Seq and iter.Seq2), enabling lazy evaluation and efficient data processing.
|
Package iterutils provides functional utilities for working with Go 1.23+ iterators (iter.Seq and iter.Seq2), enabling lazy evaluation and efficient data processing. |
|
utils/maputils
Package maputils provides utilities for working with Go maps, providing functional transformations and map operations.
|
Package maputils provides utilities for working with Go maps, providing functional transformations and map operations. |
|
utils/mathutils
Package mathutils provides mathematical utility functions for cryptographic and numerical operations.
|
Package mathutils provides mathematical utility functions for cryptographic and numerical operations. |
|
utils/nocopy
Package nocopy provides types to prevent copying of structs after first use, useful for ensuring proper handling of sensitive data structures.
|
Package nocopy provides types to prevent copying of structs after first use, useful for ensuring proper handling of sensitive data structures. |
|
utils/sliceutils
Package sliceutils provides functional utilities for working with slices in Go, providing a rich set of operations for transforming, filtering, and manipulating slice data.
|
Package sliceutils provides functional utilities for working with slices in Go, providing a rich set of operations for transforming, filtering, and manipulating slice data. |
|
Package commitments provides interfaces and utilities for commitment schemes plus concrete hash-based and Pedersen implementations.
|
Package commitments provides interfaces and utilities for commitment schemes plus concrete hash-based and Pedersen implementations. |
|
hash
Package hash_comm provides a simple, non-homomorphic commitment scheme built from a keyed BLAKE2b-256 hash (HMAC-style).
|
Package hash_comm provides a simple, non-homomorphic commitment scheme built from a keyed BLAKE2b-256 hash (HMAC-style). |
|
indcpacom
Package indcpacom implements a commitment scheme based on IND-CPA secure encryption.
|
Package indcpacom implements a commitment scheme based on IND-CPA secure encryption. |
|
pedersen
Package pedersen provides pedersen commitments are perfectly hiding and computationally binding.
|
Package pedersen provides pedersen commitments are perfectly hiding and computationally binding. |
|
Package encryption defines generic interfaces for encryption schemes, including key generation, encryption/decryption, and homomorphic variants.
|
Package encryption defines generic interfaces for encryption schemes, including key generation, encryption/decryption, and homomorphic variants. |
|
hpke
Package hpke implements Hybrid Public Key Encryption as specified in RFC 9180.
|
Package hpke implements Hybrid Public Key Encryption as specified in RFC 9180. |
|
paillier
Package paillier implements the Paillier cryptosystem, an additive homomorphic public-key encryption scheme.
|
Package paillier implements the Paillier cryptosystem, an additive homomorphic public-key encryption scheme. |
|
Package hashing provides core hashing utilities providing generic hash, HMAC, and KMAC operations with support for length-prefixed encoding.
|
Package hashing provides core hashing utilities providing generic hash, HMAC, and KMAC operations with support for length-prefixed encoding. |
|
bip340
Package bip340 provides bIP-340 tagged hash implementation for Schnorr signatures.
|
Package bip340 provides bIP-340 tagged hash implementation for Schnorr signatures. |
|
kmac
Package kmac provides kMAC (Keccak Message Authentication Code) implementation per NIST SP 800-185.
|
Package kmac provides kMAC (Keccak Message Authentication Code) implementation per NIST SP 800-185. |
|
poseidon
Package poseidon provides poseidon hash function over the Pallas base field, designed for efficient use in zero-knowledge proof systems.
|
Package poseidon provides poseidon hash function over the Pallas base field, designed for efficient use in zero-knowledge proof systems. |
|
Package key_agreement provides each of the subpackages implement a different key agreement algorithm.
|
Package key_agreement provides each of the subpackages implement a different key agreement algorithm. |
|
dh
Package dh implements ECSVDP (Elliptic Curve Secret Value Derivation Primitive) as specified in IEEE 1363-2000.
|
Package dh implements ECSVDP (Elliptic Curve Secret Value Derivation Primitive) as specified in IEEE 1363-2000. |
|
dh/dhc
Package dhc implements ECSVDP-DHC, as per section 7.2.2 of IEEE 1363-2000.
|
Package dhc implements ECSVDP-DHC, as per section 7.2.2 of IEEE 1363-2000. |
|
Package network provides utilities for coordinating multi-party protocols: session identifiers, message routing, and simple exchange patterns.
|
Package network provides utilities for coordinating multi-party protocols: session identifiers, message routing, and simple exchange patterns. |
|
echo
Package echo provides three-round echo broadcast primitive that ensures all honest parties deliver the same payload.
|
Package echo provides three-round echo broadcast primitive that ensures all honest parties deliver the same payload. |
|
exchange
Package exchange provides convenience functions that orchestrate broadcast and unicast communication patterns over a network.Router using correlation IDs and CBOR encoding.
|
Package exchange provides convenience functions that orchestrate broadcast and unicast communication patterns over a network.Router using correlation IDs and CBOR encoding. |
|
testutils
Package ntu provides helpers for exercising network protocols in-memory without real transports.
|
Package ntu provides helpers for exercising network protocols in-memory without real transports. |
|
Package ot provides generalises a common interface for 1-out-of-2 Oblivious Transfer protocols.
|
Package ot provides generalises a common interface for 1-out-of-2 Oblivious Transfer protocols. |
|
base/ecbbot
Package ecbbot implements the "Batched Simplest OT", an OT protocol with endemic security defined in Figure 3 of MRR21, to run Random OTs (ROT) for a batch of choice bits in parallel.
|
Package ecbbot implements the "Batched Simplest OT", an OT protocol with endemic security defined in Figure 3 of MRR21, to run Random OTs (ROT) for a batch of choice bits in parallel. |
|
base/vsot
Package vsot implements the "Verified Simplest OT", as defined in "protocol 7" of DKLs18.
|
Package vsot implements the "Verified Simplest OT", as defined in "protocol 7" of DKLs18. |
|
extension/softspoken
Package softspoken implements of maliciously secure 1-out-of-2 Correlated Oblivious Transfer extension (COTe) protocol.
|
Package softspoken implements of maliciously secure 1-out-of-2 Correlated Oblivious Transfer extension (COTe) protocol. |
|
proofs
|
|
|
dlog
Package dlog provides helpers for sigma proofs related to discrete logarithms.
|
Package dlog provides helpers for sigma proofs related to discrete logarithms. |
|
dlog/batch_schnorr
Package batch_schnorr provides batch Schnorr protocol.
|
Package batch_schnorr provides batch Schnorr protocol. |
|
dlog/schnorr
Package schnorr implements the regular Schnorr proof of knowledge of dlog.
|
Package schnorr implements the regular Schnorr proof of knowledge of dlog. |
|
paillier/lp
Package lp provides implementation of zero knowledge proof of valid Paillier public key.
|
Package lp provides implementation of zero knowledge proof of valid Paillier public key. |
|
paillier/lpdl
Package lpdl provides zero-knowledge proof that a value encrypted in a given Paillier ciphertext is the discrete log of a given Elliptic curve point.
|
Package lpdl provides zero-knowledge proof that a value encrypted in a given Paillier ciphertext is the discrete log of a given Elliptic curve point. |
|
paillier/nthroot
Package nthroot provides implementation of zero-knowledge proof of knowledge of Nth root.
|
Package nthroot provides implementation of zero-knowledge proof of knowledge of Nth root. |
|
paillier/pailliern
Package pailliern provides implementation of zero knowledge proof of valid Paillier public key.
|
Package pailliern provides implementation of zero knowledge proof of valid Paillier public key. |
|
paillier/range
Package paillierrange provides a range proof.
|
Package paillierrange provides a range proof. |
|
sigma
Package sigma defines a generic interface for sigma protocols and interactive compiler for running it in round-based setup where:.
|
Package sigma defines a generic interface for sigma protocols and interactive compiler for running it in round-based setup where:. |
|
sigma/compiler
Package compiler provides compilers that transform interactive sigma protocols into non-interactive zero-knowledge proofs of knowledge (NIZKPoK).
|
Package compiler provides compilers that transform interactive sigma protocols into non-interactive zero-knowledge proofs of knowledge (NIZKPoK). |
|
sigma/compiler/fiatshamir
Package fiatshamir implements the Fiat-Shamir transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs.
|
Package fiatshamir implements the Fiat-Shamir transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs. |
|
sigma/compiler/fischlin
Package fischlin implements the Fischlin transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs with UC security.
|
Package fischlin implements the Fischlin transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs with UC security. |
|
sigma/compiler/internal
Package internal defines the core interfaces for non-interactive zero-knowledge proof compilers.
|
Package internal defines the core interfaces for non-interactive zero-knowledge proof compilers. |
|
sigma/compiler/randfischlin
Package randfischlin implements a randomised variant of Fischlin's transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs.
|
Package randfischlin implements a randomised variant of Fischlin's transform for compiling interactive sigma protocols into non-interactive zero-knowledge proofs. |
|
sigma/compiler/zk
Package zk implements a zero-knowledge compiler that transforms honest-verifier zero-knowledge (HVZK) sigma protocols into fully zero-knowledge interactive protocols using commitment schemes.
|
Package zk implements a zero-knowledge compiler that transforms honest-verifier zero-knowledge (HVZK) sigma protocols into fully zero-knowledge interactive protocols using commitment schemes. |
|
sigma/compose/sigand
Package sigand implements AND composition of sigma protocols.
|
Package sigand implements AND composition of sigma protocols. |
|
sigma/compose/sigor
Package sigor implements OR composition of sigma protocols.
|
Package sigor implements OR composition of sigma protocols. |
|
bls
Package bls implements BLS (Boneh-Lynn-Shacham) digital signatures as specified in draft-irtf-cfrg-bls-signature-06.
|
Package bls implements BLS (Boneh-Lynn-Shacham) digital signatures as specified in draft-irtf-cfrg-bls-signature-06. |
|
ecdsa
Package ecdsa implements the Elliptic Curve Digital Signature Algorithm (ECDSA) as specified in FIPS 186-5 and SEC 1, Version 2.0.
|
Package ecdsa implements the Elliptic Curve Digital Signature Algorithm (ECDSA) as specified in FIPS 186-5 and SEC 1, Version 2.0. |
|
schnorrlike
Package schnorrlike provides a generic framework for Schnorr-like signature schemes.
|
Package schnorrlike provides a generic framework for Schnorr-like signature schemes. |
|
schnorrlike/bip340
Package bip340 implements BIP-340 Schnorr signatures for Bitcoin.
|
Package bip340 implements BIP-340 Schnorr signatures for Bitcoin. |
|
schnorrlike/mina
Package mina implements Schnorr signatures for the Mina Protocol.
|
Package mina implements Schnorr signatures for the Mina Protocol. |
|
schnorrlike/schnorr
Package vanilla provides a configurable generic Schnorr signature implementation.
|
Package vanilla provides a configurable generic Schnorr signature implementation. |
|
threshold
|
|
|
aor
Package aor provides protocol for distributively sampling a random value: all parties contribute randomness, and everyone outputs the XOR if and only if all openings verify.
|
Package aor provides protocol for distributively sampling a random value: all parties contribute randomness, and everyone outputs the XOR if and only if all openings verify. |
|
dkg/gennaro
Package gennaro provides distributed key generation for threshold signatures following the Gennaro et al.
|
Package gennaro provides distributed key generation for threshold signatures following the Gennaro et al. |
|
recovery
Package recovery provides protocol for reconstructing a missing party’s Feldman share as described in “Proactive Secret Sharing”.
|
Package recovery provides protocol for reconstructing a missing party’s Feldman share as described in “Proactive Secret Sharing”. |
|
refresh
Package refresh provides proactive share refresh protocol following “Proactive Secret Sharing”.
|
Package refresh provides proactive share refresh protocol following “Proactive Secret Sharing”. |
|
rvole/bbot
Package rvole_bbot implements the RVole protocol using BBOT-based multiplication.
|
Package rvole_bbot implements the RVole protocol using BBOT-based multiplication. |
|
rvole/softspoken
Package rvole_softspoken implements the RVole protocol using SoftSpoken-based multiplication.
|
Package rvole_softspoken implements the RVole protocol using SoftSpoken-based multiplication. |
|
sharing
Package sharing defines interfaces and types for secret sharing schemes.
|
Package sharing defines interfaces and types for secret sharing schemes. |
|
sharing/additive
Package additive implements additive secret sharing over arbitrary groups.
|
Package additive implements additive secret sharing over arbitrary groups. |
|
sharing/feldman
Package feldman implements Feldman's verifiable secret sharing (VSS) scheme.
|
Package feldman implements Feldman's verifiable secret sharing (VSS) scheme. |
|
sharing/pedersen
Package pedersen implements Pedersen's verifiable secret sharing (VSS) scheme.
|
Package pedersen implements Pedersen's verifiable secret sharing (VSS) scheme. |
|
sharing/shamir
Package shamir implements Shamir's (t,n) threshold secret sharing scheme.
|
Package shamir implements Shamir's (t,n) threshold secret sharing scheme. |
|
sharing/zero/hjky
Package hjky provides zero-sum sharing protocol.
|
Package hjky provides zero-sum sharing protocol. |
|
sharing/zero/przs
Package przs provides pseudorandom (non-interactive) zero sharing.
|
Package przs provides pseudorandom (non-interactive) zero sharing. |
|
sharing/zero/przs/setup
Package przssetup provides commit-and-reveal setup for pairwise seeds used by the PRZS sampler.
|
Package przssetup provides commit-and-reveal setup for pairwise seeds used by the PRZS sampler. |
|
tsig
Package tsig defines common types for threshold signature schemes.
|
Package tsig defines common types for threshold signature schemes. |
|
tsig/tbls
Package tbls provides threshold BLS signature scheme implementation for pairing-friendly curves.
|
Package tbls provides threshold BLS signature scheme implementation for pairing-friendly curves. |
|
tsig/tbls/boldyreva02
Package boldyreva02 provides implementation of the Boldyreva threshold BLS signature scheme.
|
Package boldyreva02 provides implementation of the Boldyreva threshold BLS signature scheme. |
|
tsig/tbls/boldyreva02/keygen
Package keygen provides shard creation for Boldyreva threshold BLS signatures.
|
Package keygen provides shard creation for Boldyreva threshold BLS signatures. |
|
tsig/tbls/boldyreva02/signing
Package signing provides threshold BLS signing protocol for Boldyreva scheme.
|
Package signing provides threshold BLS signing protocol for Boldyreva scheme. |
|
tsig/tecdsa
Package tecdsa defines shared types and helpers for threshold ECDSA schemes.
|
Package tecdsa defines shared types and helpers for threshold ECDSA schemes. |
|
tsig/tecdsa/dkls23
Package dkls23 implements DKLs23 threshold ECDSA signing protocol.
|
Package dkls23 implements DKLs23 threshold ECDSA signing protocol. |
|
tsig/tecdsa/dkls23/keygen/dkg
Package dkg implements the DKLS23 distributed key generation protocol.
|
Package dkg implements the DKLS23 distributed key generation protocol. |
|
tsig/tecdsa/dkls23/keygen/trusted_dealer
Package trusted_dealer implements DKLS23 key generation with a trusted dealer.
|
Package trusted_dealer implements DKLS23 key generation with a trusted dealer. |
|
tsig/tecdsa/dkls23/signing/interactive/sign
Package sign implements interactive DKLS23 signing.
|
Package sign implements interactive DKLS23 signing. |
|
tsig/tecdsa/dkls23/signing/interactive/sign_bbot
Package sign_bbot implements interactive DKLS23 signing using BBOT multiplication.
|
Package sign_bbot implements interactive DKLS23 signing using BBOT multiplication. |
|
tsig/tecdsa/dkls23/signing/interactive/sign_softspoken
Package sign_softspoken implements interactive DKLS23 signing using SoftSpoken multiplication.
|
Package sign_softspoken implements interactive DKLS23 signing using SoftSpoken multiplication. |
|
tsig/tecdsa/lindell17
Package lindell17 implements the Lindell 2017 threshold ECDSA protocol.
|
Package lindell17 implements the Lindell 2017 threshold ECDSA protocol. |
|
tsig/tecdsa/lindell17/keygen/dkg
Package dkg implements Lindell17 distributed key generation.
|
Package dkg implements Lindell17 distributed key generation. |
|
tsig/tecdsa/lindell17/keygen/trusted_dealer
Package trusted_dealer implements Lindell17 key generation with a trusted dealer.
|
Package trusted_dealer implements Lindell17 key generation with a trusted dealer. |
|
tsig/tecdsa/lindell17/signing
Package signing implements Lindell17 threshold ECDSA signing rounds.
|
Package signing implements Lindell17 threshold ECDSA signing rounds. |
|
tsig/tschnorr
Package tschnorr provides threshold Schnorr signature implementation supporting multiple MPC-friendly Schnorr variants.
|
Package tschnorr provides threshold Schnorr signature implementation supporting multiple MPC-friendly Schnorr variants. |
|
tsig/tschnorr/lindell22
Package lindell22 provides implementation of the Lindell 2022 threshold Schnorr signing protocol.
|
Package lindell22 provides implementation of the Lindell 2022 threshold Schnorr signing protocol. |
|
tsig/tschnorr/lindell22/keygen
Package keygen provides key generation for Lindell22 threshold Schnorr signing.
|
Package keygen provides key generation for Lindell22 threshold Schnorr signing. |
|
tsig/tschnorr/lindell22/signing
Package signing provides interactive signing protocol for Lindell22 threshold Schnorr.
|
Package signing provides interactive signing protocol for Lindell22 threshold Schnorr. |
|
Package transcripts provides transcript abstractions and helpers for protocols.
|
Package transcripts provides transcript abstractions and helpers for protocols. |
|
hagrid
Package hagrid provides a transcript implementation based on cSHAKE256 with domain separation and labelled message binding.
|
Package hagrid provides a transcript implementation based on cSHAKE256 with domain separation and labelled message binding. |
Click to show internal directories.
Click to hide internal directories.