blindschnorr

package module
v0.0.0-...-1f13b89 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2024 License: MIT Imports: 6 Imported by: 0

README

Blind Schnorr

This Go library is an implementation of Schnorr's blind signature scheme using ristretto255 (Curve25519) and SHA512. It has not been security audited and is strictly experimental. Blind Schnorr is not concurrently secure.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Verify

func Verify(pk *PublicKey, sig []byte, message []byte) bool

Types

type PrivateKey

type PrivateKey struct {
	// contains filtered or unexported fields
}

func GenerateKey

func GenerateKey(rand io.Reader) (*PrivateKey, error)

func NewPrivateKey

func NewPrivateKey(key []byte) (*PrivateKey, error)

func (*PrivateKey) Bytes

func (sk *PrivateKey) Bytes() []byte

func (*PrivateKey) Equal

func (sk *PrivateKey) Equal(op crypto.PrivateKey) bool

func (*PrivateKey) NewSignerState

func (sk *PrivateKey) NewSignerState() *SignerState

func (*PrivateKey) Public

func (sk *PrivateKey) Public() crypto.PublicKey

type PublicKey

type PublicKey struct {
	// contains filtered or unexported fields
}

func NewPublicKey

func NewPublicKey(key []byte) (*PublicKey, error)

func (*PublicKey) Bytes

func (pk *PublicKey) Bytes() []byte

func (*PublicKey) Equal

func (pk *PublicKey) Equal(op crypto.PublicKey) bool

func (*PublicKey) NewUserState

func (pk *PublicKey) NewUserState() *UserState

type SignerState

type SignerState struct {
	// contains filtered or unexported fields
}

func (*SignerState) NewCommitment

func (ss *SignerState) NewCommitment() ([]byte, error)

func (*SignerState) NewResponse

func (ss *SignerState) NewResponse(chalBytes []byte) ([]byte, error)

type UserState

type UserState struct {
	// contains filtered or unexported fields
}

func (*UserState) NewChallenge

func (us *UserState) NewChallenge(cmt []byte, hash []byte) ([]byte, error)

func (*UserState) NewSignature

func (us *UserState) NewSignature(rsp []byte) ([]byte, error)

Jump to

Keyboard shortcuts

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