tendermint/types/signable.go

17 lines
565 B
Go
Raw Normal View History

2015-11-01 11:34:08 -08:00
package types
// Signable is an interface for all signable things.
// It typically removes signatures before serializing.
// SignBytes returns the bytes to be signed
// NOTE: chainIDs are part of the SignBytes but not
// necessarily the object themselves.
// NOTE: Expected to panic if there is an error marshalling.
2015-11-01 11:34:08 -08:00
type Signable interface {
SignBytes(chainID string) []byte
2015-11-01 11:34:08 -08:00
}
// HashSignBytes is a convenience method for getting the hash of the bytes of a signable
func HashSignBytes(chainID string, o Signable) []byte {
2018-02-15 11:26:49 -08:00
return tmHash(o.SignBytes(chainID))
2015-11-01 11:34:08 -08:00
}