Directories ¶
Path | Synopsis |
---|---|
Package kyber provides a toolbox of advanced cryptographic primitives, for applications that need more than straightforward signing and encryption.
|
Package kyber provides a toolbox of advanced cryptographic primitives, for applications that need more than straightforward signing and encryption. |
encrypt/ecies
Package ecies implements the Elliptic Curve Integrated Encryption Scheme (ECIES).
|
Package ecies implements the Elliptic Curve Integrated Encryption Scheme (ECIES). |
examples
Package examples provides a suite of tests showing how to use the different abstraction and protocols provided by the kyber library.
|
Package examples provides a suite of tests showing how to use the different abstraction and protocols provided by the kyber library. |
group/edwards25519
Package edwards25519 provides an optimized Go implementation of a Twisted Edwards curve that is isomorphic to Curve25519.
|
Package edwards25519 provides an optimized Go implementation of a Twisted Edwards curve that is isomorphic to Curve25519. |
group/internal/marshalling
Package marshalling provides a common implementation of (un)marshalling method using Writer and Reader.
|
Package marshalling provides a common implementation of (un)marshalling method using Writer and Reader. |
group/mod
Package mod contains a generic implementation of finite field arithmetic on integer fields with a constant modulus.
|
Package mod contains a generic implementation of finite field arithmetic on integer fields with a constant modulus. |
group/nist
Package nist implements cryptographic groups and ciphersuites based on the NIST standards, using Go's built-in crypto library.
|
Package nist implements cryptographic groups and ciphersuites based on the NIST standards, using Go's built-in crypto library. |
proof
Package proof implements generic support for Sigma-protocols and discrete logarithm proofs in the Camenisch/Stadler framework.
|
Package proof implements generic support for Sigma-protocols and discrete logarithm proofs in the Camenisch/Stadler framework. |
proof/dleq
Package dleq provides functionality to create and verify non-interactive zero-knowledge (NIZK) proofs for the equality (EQ) of discrete logarithms (DL).
|
Package dleq provides functionality to create and verify non-interactive zero-knowledge (NIZK) proofs for the equality (EQ) of discrete logarithms (DL). |
share
Package share implements Shamir secret sharing and polynomial commitments.
|
Package share implements Shamir secret sharing and polynomial commitments. |
share/dkg/pedersen
Package dkg implements the protocol described in "A threshold cryptosystem without a trusted party" by Torben Pryds Pedersen.
|
Package dkg implements the protocol described in "A threshold cryptosystem without a trusted party" by Torben Pryds Pedersen. |
share/dkg/rabin
Package dkg implements the protocol described in "Secure Distributed Key Generation for Discrete-Log Based Cryptosystems" by R. Gennaro, S. Jarecki, H. Krawczyk, and T. Rabin.
|
Package dkg implements the protocol described in "Secure Distributed Key Generation for Discrete-Log Based Cryptosystems" by R. Gennaro, S. Jarecki, H. Krawczyk, and T. Rabin. |
share/pvss
Package pvss implements public verifiable secret sharing as introduced in "A Simple Publicly Verifiable Secret Sharing Scheme and its Application to Electronic Voting" by Berry Schoenmakers.
|
Package pvss implements public verifiable secret sharing as introduced in "A Simple Publicly Verifiable Secret Sharing Scheme and its Application to Electronic Voting" by Berry Schoenmakers. |
share/vss/pedersen
Package vss implements the verifiable secret sharing scheme from "Non-Interactive and Information-Theoretic Secure Verifiable Secret Sharing" by Torben Pryds Pedersen.
|
Package vss implements the verifiable secret sharing scheme from "Non-Interactive and Information-Theoretic Secure Verifiable Secret Sharing" by Torben Pryds Pedersen. |
share/vss/rabin
Package vss implements the verifiable secret sharing scheme from the paper "Provably Secure Distributed Schnorr Signatures and a (t, n) Threshold Scheme for Implicit Certificates".
|
Package vss implements the verifiable secret sharing scheme from the paper "Provably Secure Distributed Schnorr Signatures and a (t, n) Threshold Scheme for Implicit Certificates". |
shuffle
Package shuffle implements Andrew Neff's verifiable shuffle proof scheme.
|
Package shuffle implements Andrew Neff's verifiable shuffle proof scheme. |
sign/anon
Package anon implements cryptographic primitives for anonymous communication.
|
Package anon implements cryptographic primitives for anonymous communication. |
sign/bls
Package bls implements the Boneh-Lynn-Shacham (BLS) signature scheme which was introduced in the paper "Short Signatures from the Weil Pairing".
|
Package bls implements the Boneh-Lynn-Shacham (BLS) signature scheme which was introduced in the paper "Short Signatures from the Weil Pairing". |
sign/cosi
Package cosi implements the collective signing (CoSi) algorithm as presented in the paper "Keeping Authorities 'Honest or Bust' with Decentralized Witness Cosigning" by Ewa Syta et al.
|
Package cosi implements the collective signing (CoSi) algorithm as presented in the paper "Keeping Authorities 'Honest or Bust' with Decentralized Witness Cosigning" by Ewa Syta et al. |
sign/dss
Package dss implements the Distributed Schnorr Signature protocol from the paper "Provably Secure Distributed Schnorr Signatures and a (t, n) Threshold Scheme for Implicit Certificates".
|
Package dss implements the Distributed Schnorr Signature protocol from the paper "Provably Secure Distributed Schnorr Signatures and a (t, n) Threshold Scheme for Implicit Certificates". |
sign/eddsa
Package eddsa implements the EdDSA signature algorithm according to RFC8032.
|
Package eddsa implements the EdDSA signature algorithm according to RFC8032. |
sign/schnorr
Package schnorr implements the vanilla Schnorr signature scheme.
|
Package schnorr implements the vanilla Schnorr signature scheme. |
sign/tbls
Package tbls implements the (t,n)-threshold Boneh-Lynn-Shacham signature scheme.
|
Package tbls implements the (t,n)-threshold Boneh-Lynn-Shacham signature scheme. |
suites
Package suites allows callers to look up Kyber suites by name.
|
Package suites allows callers to look up Kyber suites by name. |
util/encoding
Package encoding package provides helper functions to encode/decode a Point/Scalar in hexadecimal.
|
Package encoding package provides helper functions to encode/decode a Point/Scalar in hexadecimal. |
util/key
Package key creates asymmetric key pairs.
|
Package key creates asymmetric key pairs. |
util/random
Package random provides facilities for generating random or pseudorandom cryptographic objects.
|
Package random provides facilities for generating random or pseudorandom cryptographic objects. |
util/test
Package test contains generic testing and benchmarking infrastructure for cryptographic groups and ciphersuites.
|
Package test contains generic testing and benchmarking infrastructure for cryptographic groups and ciphersuites. |
xof
Package xof holds implementations and testing code for the various extendable output functions.
|
Package xof holds implementations and testing code for the various extendable output functions. |
xof/blake2xb
Package blake2xb provides an implementation of kyber.XOF based on the Blake2xb construction.
|
Package blake2xb provides an implementation of kyber.XOF based on the Blake2xb construction. |
xof/keccak
Package keccak provides an implementation of kyber.XOF based on the Shake256 hash.
|
Package keccak provides an implementation of kyber.XOF based on the Shake256 hash. |
Package protobuf implements Protocol Buffers reflectively using Go types to define message formats.
|
Package protobuf implements Protocol Buffers reflectively using Go types to define message formats. |
Click to show internal directories.
Click to hide internal directories.