description |
---|
Mapped Anchoring stores hashes as key / value pairs on the blockchain. |
{% hint style="success" %} The mapped anchor transaction is part of the Titanium release. {% endhint %}
{
"type": 22,
"version": 3,
"id": "Ebq8DzaxstCL3iuuh1ByAiNEEbTRZ5T4ZzFMM4KNWdh9",
"sender": "3NBcx7AQqDopBj3WfwCVARNYuZyt1L9xEVM",
"senderKeyType": "ed25519",
"senderPublicKey": "7gghhSwKRvshZwwh6sG97mzo1qoFtHEQK7iM4vGcnEt7",
"fee": 45000000,
"timestamp": 1689161703599,
"anchors": {
"8RJ5SFxLMtk3Hhewt3u43qGHt4QEjhkAQPH35VKNhuGB": "CXShAY5JEs29BKTjcq81rxAvcBJFWN966S88pr85Zgre",
"EBPWyefK6BXDmANjw4kDoy3ZhyDVT7ngU8Bo6ASf3x3a": "Grr6KUBEMdfGmj2yZ1YrTrXLiNA4qj8KnBwHYxnVheht"
},
"proofs": [
"5rtzM1JYAQd1Pi7q2oTCaR67yTCKwqgBJ3WmKjSMtHi8TLcFmoTG4t8v4z1gdmX3QBEDssy8oFaM6DJ8D3rbrC85"
],
"height": 2547600,
"effectiveFee": 37190250
}
{% hint style="info" %}
id
andheight
should be omitted when broadcasting. These fields are set by the node.- Binary strings are base58 encoded.
timestamp
is in microseconds since epoch.fee
includes 8 digits, soLTO * 10^8
{% endhint %}
Up to 100 pairs can be anchored in a single transaction. Bundling multiple pairs in 1 transaction can help reduce transaction fees.
The Mapped Anchor fee is made up of two amounts: a fixed one plus a per-anchor one. The fees are calculated as:
0.25 + 0.1 * N
where N
is the number of anchor pairs in the transaction. The total is rounded up to the nearest 100_000.
The binary data structure of the unsigned transaction.
{% tabs %} {% tab title="V3" %}
# | Field Name | Type | Length |
---|---|---|---|
1 | Transaction type | Byte (constant, value=15) | 1 |
2 | Version | Byte (constant, value=3) | 1 |
3 | Network id | Byte | 1 |
4 | Timestamp | Long | 8 |
5 | Sender's key type | KeyType (Byte) | 1 |
6 | Sender's public key | PublicKey (Array[Byte]) | 32 | 33 |
7 | Fee | Long | 8 |
8 | Number of anchors | Short | 2 |
9 | Anchor 1 key length (N) | Short | 2 |
10 | Anchor 1 key | Array[Byte] | N |
11 | Anchor 1 value length (M) | Short | 2 |
12 | Anchor 1 value | Array[Byte] | N |
... |
{% hint style="info" %}
- Anchor key length, Anchor key, Anchor value length, and Anchor value are repeated for each anchor hash.
- The maximum length of an anchor is 100 bytes.
- Network id can be obtained by taking the 2nd byte from the sender address.
- Each key type has a numeric id in addition to the reference from the JSON.
- Integers (short, int, long) have a big endian byte order. {% endhint %} {% endtab %} {% endtabs %}