tendermint/keys/types.go

29 lines
796 B
Go
Raw Normal View History

package keys
import (
"sort"
crypto "github.com/tendermint/go-crypto"
2017-04-19 17:14:19 +02:00
data "github.com/tendermint/go-wire/data"
)
2017-02-28 18:52:52 +01:00
// Info is the public information about a key
type Info struct {
2017-11-01 16:38:11 -05:00
Name string `json:"name"`
PubKey crypto.PubKey `json:"pubkey"`
}
2017-11-01 16:38:11 -05:00
// Keybase allows simple CRUD on a keystore, as an aid to signing
type Keybase interface {
// Sign some bytes
Sign(name, passphrase string, msg []byte) (crypto.Signature, error)
// Create a new keypair
Create(name, passphrase, algo string) (_ Info, seedphrase string, _ error)
// Recover takes a seedphrase and loads in the key
Recover(name, passphrase, seedphrase string) (Info, error)
2017-02-28 18:52:52 +01:00
List() (Infos, error)
Get(name string) (Info, error)
Update(name, oldpass, newpass string) error
Delete(name, passphrase string) error
}