package key

import "go.dedis.ch/kyber/v3/util/key"

Package key creates asymmetric key pairs.

Index

Types

type Generator

type Generator interface {
	NewKey(random cipher.Stream) kyber.Scalar
}

Generator is a type that needs to implement a special case in order to correctly choose a key.

type Pair

type Pair struct {
	Public  kyber.Point  // Public key
	Private kyber.Scalar // Private key
}

Pair represents a public/private keypair together with the ciphersuite the key was generated from.

func NewKeyPair

func NewKeyPair(suite Suite) *Pair

NewKeyPair directly creates a secret/public key pair

func (*Pair) Gen

func (p *Pair) Gen(suite Suite)

Gen creates a fresh public/private keypair with the given ciphersuite, using a given source of cryptographic randomness. If suite implements key.Generator, then suite.NewKey is called to generate the private key, otherwise the normal technique of choosing a random scalar from the group is used.

type Suite

type Suite interface {
	kyber.Group
	kyber.Random
}

Suite represents the list of functionalities needed by this package.

Source Files

key.go

Version
v3.1.0 (latest)
Published
Nov 30, 2022
Platform
linux/amd64
Imports
2 packages
Last checked
1 month ago

Tools for package owners.