any-sync/util/keys/signingkey.go
2022-07-13 20:52:56 +02:00

23 lines
466 B
Go

package keys
type SigningPrivKey interface {
Key
Sign([]byte) ([]byte, error)
GetPublic() SigningPubKey
}
type SigningPubKey interface {
Key
Verify(data []byte, sig []byte) (bool, error)
}
type SigningPubKeyDecoder interface {
DecodeFromBytes(bytes []byte) (SigningPubKey, error)
DecodeFromString(identity string) (SigningPubKey, error)
DecodeFromStringIntoBytes(identity string) ([]byte, error)
EncodeToString(pubkey SigningPubKey) (string, error)
}