* fix: Add RegisterLegacyAminoCodec for authz/feegrant * add module name * Fix GetSignByes, add tests * removed module names from registered messages to match other modules * added interfaces and concrete types registration * unseal amino instances to allow external grant and authorization registration * fixed messages tests * allow to register external types into authz modulecdc * use legacy.Cdc instead of ModuleCdc inside x/authz * move the legacy.Cdc initialization outside init function * added serialization docs * Update docs/core/encoding.md Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com> * added the Ledger specification * fixed tests Co-authored-by: Amaury M <1293565+amaurym@users.noreply.github.com>
31 lines
896 B
Go
31 lines
896 B
Go
package legacy
|
|
|
|
import (
|
|
"github.com/cosmos/cosmos-sdk/codec"
|
|
cryptocodec "github.com/cosmos/cosmos-sdk/crypto/codec"
|
|
cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
|
|
)
|
|
|
|
// Cdc defines a global generic sealed Amino codec to be used throughout sdk. It
|
|
// has all Tendermint crypto and evidence types registered.
|
|
//
|
|
// TODO: Deprecated - remove this global.
|
|
var Cdc = codec.NewLegacyAmino()
|
|
|
|
func init() {
|
|
cryptocodec.RegisterCrypto(Cdc)
|
|
codec.RegisterEvidences(Cdc)
|
|
}
|
|
|
|
// PrivKeyFromBytes unmarshals private key bytes and returns a PrivKey
|
|
func PrivKeyFromBytes(privKeyBytes []byte) (privKey cryptotypes.PrivKey, err error) {
|
|
err = Cdc.Unmarshal(privKeyBytes, &privKey)
|
|
return
|
|
}
|
|
|
|
// PubKeyFromBytes unmarshals public key bytes and returns a PubKey
|
|
func PubKeyFromBytes(pubKeyBytes []byte) (pubKey cryptotypes.PubKey, err error) {
|
|
err = Cdc.Unmarshal(pubKeyBytes, &pubKey)
|
|
return
|
|
}
|