signer

package module
v4.0.1 Latest Latest
Warning

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

Go to latest
Published: Feb 13, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

README

request-signer

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidSignature       = errors.New("signature is invalid")
	ErrKeysAlreadyExist       = errors.New("public and private keys already exist")
	ErrInvalidBase64Signature = errors.New("signature is not base64url encoded")
)

Functions

This section is empty.

Types

type Ed25519KeyGenerator

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

func NewKeyGenerator

func NewKeyGenerator(privateKeyPath, publicKeyPath string) (*Ed25519KeyGenerator, error)

func (Ed25519KeyGenerator) Generate

func (r Ed25519KeyGenerator) Generate() error

type KeyGenerator

type KeyGenerator interface {
	Generate() error
}

type RequestSigner

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

func NewSigner

func NewSigner(keys fs.FS) (*RequestSigner, error)

func NewSignerWithNameAndOrder

func NewSignerWithNameAndOrder(keys fs.FS, privateKeyName string, order binary.ByteOrder) (*RequestSigner, error)

func (RequestSigner) Sign

func (r RequestSigner) Sign(payload []byte, timestamp uint64) []byte

func (RequestSigner) SignString

func (r RequestSigner) SignString(payload []byte, timestamp uint64) string

type RequestVerifier

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

func NewVerifier

func NewVerifier(keys fs.FS) (*RequestVerifier, error)

func NewVerifierWithNameAndOrder

func NewVerifierWithNameAndOrder(keys fs.FS, publicKeyName string, order binary.ByteOrder) (*RequestVerifier, error)

func (RequestVerifier) Verify

func (r RequestVerifier) Verify(timestamp uint64, payload []byte, signature []byte) error

func (RequestVerifier) VerifyStringSignature

func (r RequestVerifier) VerifyStringSignature(timestamp uint64, payload []byte, signature string) error

type Signer

type Signer interface {
	Sign([]byte, uint64) []byte
	SignString([]byte, uint64) string
}

type Verifier

type Verifier interface {
	Verify(uint64, []byte, []byte) error
	VerifyStringSignature(uint64, []byte, string) error
}

Jump to

Keyboard shortcuts

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