diff --git a/CHANGELOG_PENDING.md b/CHANGELOG_PENDING.md index 9028185f0..512863c41 100644 --- a/CHANGELOG_PENDING.md +++ b/CHANGELOG_PENDING.md @@ -29,4 +29,4 @@ Friendly reminder, we have a [bug bounty program](https://hackerone.com/tendermi ### BUG FIXES - [privval] \#5441 Fix faulty ping message encoding causing nil message errors in logs (@erikgrinaker) - +- [rpc] \#5459 Register the interface of public keys for json encoding (@marbar3778) diff --git a/crypto/encoding/codec.go b/crypto/encoding/codec.go index 56f33f4c7..7438cb5fb 100644 --- a/crypto/encoding/codec.go +++ b/crypto/encoding/codec.go @@ -5,9 +5,15 @@ import ( "github.com/tendermint/tendermint/crypto" "github.com/tendermint/tendermint/crypto/ed25519" + "github.com/tendermint/tendermint/libs/json" pc "github.com/tendermint/tendermint/proto/tendermint/crypto" ) +func init() { + json.RegisterType((*pc.PublicKey)(nil), "tendermint.crypto.PublicKey") + json.RegisterType((*pc.PublicKey_Ed25519)(nil), "tendermint.crypto.PublicKey_Ed25519") +} + // PubKeyToProto takes crypto.PubKey and transforms it to a protobuf Pubkey func PubKeyToProto(k crypto.PubKey) (pc.PublicKey, error) { var kp pc.PublicKey