token

package
Version: v7.2.1+incompatible Latest Latest
Warning

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

Go to latest
Published: Jul 31, 2019 License: Apache-2.0 Imports: 8 Imported by: 35

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Openers = make(map[string]OpenFunc)
	Listers = make(map[string]ListFunc)
)

Functions

func Login

func Login(tokenConf *config.TokenConfig, pinProvider passprompt.PasswordGetter, loginFunc passprompt.LoginFunc, keyringUser, initialPrompt string) error

Types

type Key

type Key interface {
	crypto.Signer
	// Return the key config object used to instantiate this key
	Config() *config.KeyConfig
	// Get the CKK_ID or equivalent for the key
	GetID() []byte
	// Import a leaf certificate for this key
	ImportCertificate(cert *x509.Certificate) error
}

type KeyType

type KeyType uint
const (
	// Values match CKK_RSA etc.
	KeyTypeRsa   KeyType = 0
	KeyTypeEcdsa KeyType = 3
)

type ListFunc

type ListFunc func(provider string, dest io.Writer) error

type ListOptions

type ListOptions struct {
	// Destination stream
	Output io.Writer
	// Filter by attributes
	Label string
	ID    string
	// Print key and certificate contents
	Values bool
}

type OpenFunc

type OpenFunc func(cfg *config.Config, tokenName string, prompt passprompt.PasswordGetter) (Token, error)

type Token

type Token interface {
	io.Closer
	// Check that the token is still alive
	Ping() error
	// Return the token config object used to instantiate this token
	Config() *config.TokenConfig
	// Get a key from the token by its config alias
	GetKey(keyName string) (Key, error)
	// Import a public+private keypair into the token
	Import(keyName string, privKey crypto.PrivateKey) (Key, error)
	// Import an issuer certificate into the token. The new object label will
	// be labelBase plus the fingerprint of the certificate.
	ImportCertificate(cert *x509.Certificate, labelBase string) error
	// Generate a new key in the token
	Generate(keyName string, keyType KeyType, bits uint) (Key, error)
	// Print key info
	ListKeys(opts ListOptions) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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