Minimal encoding for the libp2p-crypto PublicKey protobuf message.
PublicKey
Schema (legacy libp2p):
Type
Data
@type key_type() :: :rsa | :ed25519 | :secp256k1 | :ecdsa
@spec decode_public_key(binary()) :: {key_type(), binary()}
@spec encode_public_key(key_type(), binary()) :: binary()