diff --git a/docs/architecture/adr-020-protobuf-transaction-encoding.md b/docs/architecture/adr-020-protobuf-transaction-encoding.md index be68187180..c3588aa05e 100644 --- a/docs/architecture/adr-020-protobuf-transaction-encoding.md +++ b/docs/architecture/adr-020-protobuf-transaction-encoding.md @@ -338,8 +338,6 @@ type TxBuilder interface { SetFee(sdk.Fee) GetMemo() string SetMemo(string) - - CanonicalSignBytes(cid string, num, seq uint64) ([]byte, error) } ``` diff --git a/types/codec.go b/types/codec.go index c00d95b2ee..f2bd9b22c8 100644 --- a/types/codec.go +++ b/types/codec.go @@ -1,8 +1,6 @@ package types import ( - jsonc "github.com/gibson042/canonicaljson-go" - "github.com/cosmos/cosmos-sdk/codec/types" "github.com/cosmos/cosmos-sdk/codec" @@ -18,25 +16,3 @@ func RegisterCodec(cdc *codec.Codec) { func RegisterInterfaces(registry types.InterfaceRegistry) { registry.RegisterInterface("cosmos_sdk.v1.Msg", (*Msg)(nil)) } - -// CanonicalSignBytes returns a canonical JSON encoding of a Proto message that -// can be signed over. The JSON encoding ensures all field names adhere to their -// Proto definition, default values are omitted, and follows the JSON Canonical -// Form. -func CanonicalSignBytes(msg codec.ProtoMarshaler) ([]byte, error) { - // first, encode via canonical Proto3 JSON - bz, err := codec.ProtoMarshalJSON(msg) - if err != nil { - return nil, err - } - - genericJSON := make(map[string]interface{}) - - // decode canonical proto encoding into a generic map - if err := jsonc.Unmarshal(bz, &genericJSON); err != nil { - return nil, err - } - - // finally, return the canonical JSON encoding via JSON Canonical Form - return jsonc.Marshal(genericJSON) -}