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

crypto

package
v1.4.12 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// NonceSize is the default NonceSize
	NonceSize = 24
)

Variables

View Source
var (
	// ErrPubKeyMismatch is used by CertificatesWithSamePublicKey to indicate the two public keys mismatch
	ErrPubKeyMismatch = errors.New("public keys do not match")
)

Functions

func CertificatesWithSamePublicKey added in v1.4.9

func CertificatesWithSamePublicKey(der1, der2 []byte) error

CertificatesWithSamePublicKey returns nil if both byte slices are valid DER encoding of certificates with the same public key.

func ExpiresAt added in v1.1.0

func ExpiresAt(identityBytes []byte) time.Time

ExpiresAt returns when the given identity expires, or a zero time.Time in case we cannot determine that

func GetRandomBytes

func GetRandomBytes(len int) ([]byte, error)

GetRandomBytes returns len random looking bytes

func GetRandomNonce

func GetRandomNonce() ([]byte, error)

GetRandomNonce returns a random byte array of length NonceSize

func LogNonPubKeyMismatchErr added in v1.4.9

func LogNonPubKeyMismatchErr(log func(template string, args ...interface{}), err error, cert1DER, cert2DER []byte)

LogNonPubKeyMismatchErr logs an error which is not an ErrPubKeyMismatch error

func TrackExpiration added in v1.4.4

func TrackExpiration(tls bool, serverCert []byte, clientCertChain [][]byte, sIDBytes []byte, info MessageFunc, warn MessageFunc, now time.Time, s Scheduler)

TrackExpiration warns a week before one of the certificates expires

Types

type IdentitySerializer added in v1.2.0

type IdentitySerializer interface {
	// Serialize converts an identity to bytes
	Serialize() ([]byte, error)
}

IdentitySerializer serializes identities

type LocalSigner

type LocalSigner interface {
	SignatureHeaderMaker
	Signer
}

LocalSigner is a temporary stub interface which will be implemented by the local MSP

type MessageFunc added in v1.4.9

type MessageFunc func(format string, args ...interface{})

MessageFunc notifies a message happened with the given format, and can be replaced with Warnf or Infof of a logger.

type Scheduler added in v1.4.4

type Scheduler func(d time.Duration, f func()) *time.Timer

Scheduler invokes f after d time, and can be replaced with time.AfterFunc.

type SignatureHeaderCreator added in v1.2.0

type SignatureHeaderCreator struct {
	SignerSupport
}

SignatureHeaderCreator creates signature headers

func NewSignatureHeaderCreator added in v1.2.0

func NewSignatureHeaderCreator(ss SignerSupport) *SignatureHeaderCreator

NewSignatureHeaderCreator creates new signature headers

func (*SignatureHeaderCreator) NewSignatureHeader added in v1.2.0

func (bs *SignatureHeaderCreator) NewSignatureHeader() (*cb.SignatureHeader, error)

NewSignatureHeader creates a SignatureHeader with the correct signing identity and a valid nonce

type SignatureHeaderMaker added in v1.2.0

type SignatureHeaderMaker interface {
	// NewSignatureHeader creates a SignatureHeader with the correct signing identity and a valid nonce
	NewSignatureHeader() (*cb.SignatureHeader, error)
}

SignatureHeaderMaker creates a new SignatureHeader

type Signer added in v1.2.0

type Signer interface {
	// Sign a message and return the signature over the digest, or error on failure
	Sign(message []byte) ([]byte, error)
}

Signer signs messages

type SignerSupport added in v1.2.0

type SignerSupport interface {
	Signer
	IdentitySerializer
}

SignerSupport implements the needed support for LocalSigner

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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