vault

package
v0.1.2-beta.1 Latest Latest
Warning

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

Go to latest
Published: Jun 19, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrDone = errors.New("done")

ErrDone is the error returned by iterator when the iteration is done.

Functions

func RegisterVault

func RegisterVault(name string, newFunc newVaultFunc)

Types

type Importer

type Importer interface {
	Vault
	Import(ctx context.Context, pk cryptoutils.PrivateKey, opt utils.Options) (StoredKey, error)
}

Importer interface representing an importer backend

type ReadinessChecker

type ReadinessChecker interface {
	Ready(ctx context.Context) (bool, error)
}

ReadinessChecker is an optional interface implemented by a backend

type StoredKey

type StoredKey interface {
	PublicKey() crypto.PublicKey
	ID() string
}

StoredKey represents a public key which has a private counterpart stored on the backend side

type StoredKeysIterator

type StoredKeysIterator interface {
	Next() (StoredKey, error)
}

StoredKeysIterator is used to iterate over stored public keys

type Unlocker

type Unlocker interface {
	Vault
	Unlock(ctx context.Context) error
}

Unlocker interface representing an unlocker backend

type Vault

type Vault interface {
	GetPublicKey(ctx context.Context, id string) (StoredKey, error)
	ListPublicKeys(ctx context.Context) StoredKeysIterator
	Sign(ctx context.Context, digest []byte, key StoredKey) (cryptoutils.Signature, error)
	Name() string
}

Vault interface that represent a secure key store

func NewVault

func NewVault(ctx context.Context, name string, conf *yaml.Node) (Vault, error)

NewVault returns new vault instance

type VaultNamer

type VaultNamer interface {
	VaultName() string
}

VaultNamer might be implemented by some backends which can handle multiple vaults under single account

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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