# Functions
ExportKeys copies a key from the store to the io.Writer.
ExportKeysByGUN exports all keys filtered to a GUN.
ExportKeysByID exports all keys matching the given ID.
GetPasswdDecryptBytes gets the password to decrypt the given pem bytes.
ImportKeys expects an io.Reader containing one or more PEM blocks.
KeyInfoFromPEM attempts to get a keyID and KeyInfo from the filename and PEM bytes of a key.
NewGenericKeyStore creates a GenericKeyStore wrapping the provided Storage instance, using the PassRetriever to enc/decrypt keys.
NewKeyFileStore returns a new KeyFileStore creating a private directory to hold the keys.
NewKeyMemoryStore returns a new KeyMemoryStore which holds keys in memory.
# Structs
ErrAttemptsExceeded is returned when too many attempts have been made to decrypt a key.
ErrKeyNotFound is returned when the keystore fails to retrieve a specific key.
ErrPasswordInvalid is returned when signing fails.
GenericKeyStore is a wrapper for Storage instances that provides translation between the []byte form and Public/PrivateKey objects.
KeyInfo stores the role and gun for a corresponding private key ID It is assumed that each private key ID is unique.
# Interfaces
Exporter is a simple interface for the two functions we need from the Storage interface.
Importer is a simple interface for the one function we need from the Storage interface.
KeyStore is a generic interface for private key storage.
Storage implements the bare bones primitives (no hierarchy).