When reading operations from a block, implicit accounts and contracts are returned with a key bytes
and in hexadecimal format.
"parameters": {
"entrypoint": "transfer",
"value": {
"prim": "Pair",
"args": [
{
"bytes": "0000861299624c9a3b52be10762c64bac282b1c02316"
},
{
"prim": "Pair",
"args": [
{
"bytes": "0139c8ade2617663981fa2b87592c9ad92714d14c200"
},
{
"int": "11446"
}
]
}
]
}
}
There are few details here:
007-PsDELPH1.contract_id (22 bytes, 8-bit tag)
**********************************************
Implicit (tag 0)
================
+---------------------------+----------+------------------------+
| Name | Size | Contents |
+===========================+==========+========================+
| Tag | 1 byte | unsigned 8-bit integer |
+---------------------------+----------+------------------------+
| Signature.Public_key_hash | 21 bytes | $public_key_hash |
+---------------------------+----------+------------------------+
Originated (tag 1)
==================
+---------------+----------+------------------------+
| Name | Size | Contents |
+===============+==========+========================+
| Tag | 1 byte | unsigned 8-bit integer |
+---------------+----------+------------------------+
| Contract_hash | 20 bytes | bytes |
+---------------+----------+------------------------+
| padding | 1 byte | padding |
+---------------+----------+------------------------+
public_key_hash (21 bytes, 8-bit tag)
*************************************
public_key_hash (21 bytes, 8-bit tag)
*************************************
Ed25519 (tag 0)
===============
+-------------------------+----------+------------------------+
| Name | Size | Contents |
+=========================+==========+========================+
| Tag | 1 byte | unsigned 8-bit integer |
+-------------------------+----------+------------------------+
| Ed25519.Public_key_hash | 20 bytes | bytes |
+-------------------------+----------+------------------------+
Secp256k1 (tag 1)
=================
+---------------------------+----------+------------------------+
| Name | Size | Contents |
+===========================+==========+========================+
| Tag | 1 byte | unsigned 8-bit integer |
+---------------------------+----------+------------------------+
| Secp256k1.Public_key_hash | 20 bytes | bytes |
+---------------------------+----------+------------------------+
P256 (tag 2)
============
+----------------------+----------+------------------------+
| Name | Size | Contents |
+======================+==========+========================+
| Tag | 1 byte | unsigned 8-bit integer |
+----------------------+----------+------------------------+
| P256.Public_key_hash | 20 bytes | bytes |
+----------------------+----------+------------------------+
But I am still unclear what these bytes are (b58?) and what the next steps are to convert them to KT1 or tz1.