Help us shape the future of Go! Take the 2026 Go Developer Survey

vrf

package
v1.10.2 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2021 License: MIT, Apache-2.0 Imports: 1 Imported by: 0

Documentation

Overview

Package vrf defines the interface to a verifiable random function.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PrivateKey

type PrivateKey interface {
	// Evaluate returns the output of H(f_k(m)) and its proof.
	Evaluate(m []byte) (index [32]byte, proof []byte)
	// Public returns the corresponding public key.
	Public() crypto.PublicKey
}

PrivateKey supports evaluating the VRF function.

type PublicKey

type PublicKey interface {
	// ProofToHash verifies the NP-proof supplied by Proof and outputs Index.
	ProofToHash(m, proof []byte) (index [32]byte, err error)
	// Serialize serialize the public key into bytes
	Serialize() []byte
	// Deserialize de-serialize bytes into public key
	Deserialize([]byte)
}

PublicKey supports verifying output from the VRF function.

Directories

Path Synopsis
Package p256 implements a verifiable random function using curve p256.
Package p256 implements a verifiable random function using curve p256.

Jump to

Keyboard shortcuts

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