bbs

package
v0.1.6-0...-5c25bcb Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BBS

type BBS interface {

	// Verify will verify an aggregated signature of one or more messages against a public key.
	// returns:
	// 		error in case of errors or nil if signature verification was successful
	Verify(messages [][]byte, signature, pubKey []byte) error

	// Sign will sign create signature of each message and aggregate it into a single signature using
	// provided private key in binary form.
	// returns:
	// 		signature in []byte
	//		error in case of errors
	Sign(messages [][]byte, privKey []byte) ([]byte, error)

	// VerifyProof will verify a BBS+ signature proof (generated e.g. by DeriveProof()) with a BLS12-381 public key.
	// returns:
	// 		error in case of errors or nil if signature proof verification was successful
	VerifyProof(messages [][]byte, proof, nonce, pubKey []byte) error

	// DeriveProof will create a BBS+ signature proof for a list of revealed messages using BBS signature
	// (can be build using Sign()) and a public key.
	// returns:
	// 		signature proof in []byte
	//		error in case of errors
	DeriveProof(messages [][]byte, signature, nonce, pubKey []byte, revealedIndexes []int) ([]byte, error)
}

BBS defines BBS+ signature scheme (https://eprint.iacr.org/2016/663.pdf, section 4.3).

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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