# Бинарный формат транзакции установки скрипта ассета
Узнать больше о транзакции установки скрипта ассета.
# Версия 2
Бинарный формат версии 2 соответствует protobuf-схеме transaction.proto. Описание полей, общих для всех типов транзакций, представлено в разделе Бинарный формат транзакции.
Версия 2 появилась с момента активации фичи № 15 “Ride V4, VRF, Protobuf, Failed transactions”.
message SetAssetScriptTransactionData {
bytes asset_id = 1;
bytes script = 2;
};
Поле | Размер | Описание |
---|---|---|
asset_id | 32 байта | ID токена |
script | До 8192 байт | Скрипт ассета |
# Версия 1
№ | Поле | Название JSON-поля | Тип поля | Размер поля в байтах | Комментарий |
---|---|---|---|---|---|
1 | Флаг версии | Byte | 1 | Указывает, что версия транзакции является второй или выше. Значение должно быть равно 0 | |
2 | ID типа транзакции | type | Byte | 1 | Значение должно быть равно 15 |
3 | Версия транзакции | version | Byte | 1 | Значение должно быть равно 2 |
4 | Байт сети | chainId | Byte | 1 | 87 — для Mainnet 84 — для Testnet 83 — для Stagenet |
5 | Открытый ключ аккаунта отправителя транзакции | senderPublicKey | Array[Byte] | 32 | |
6 | ID токена, к которому привязывается скрипт ассета | assetId | Array[Byte] | 32 | |
7 | Комиссия за транзакцию | fee | Long | 8 | |
8 | Временная метка транзакции | timestamp | Long | 8 | |
9.1 | Флаг наличия скрипта | Byte | 1 | 0 — скрипт не установлен1 — скрипт установлен | |
9.2 | Размер скрипта в байтах | Short | S | S = 0, если значение поля 9.1 равно 0.S = 2, если значение поля 9.1 равно 1 | |
9.3 | Скрипт ассета | script | Array[Byte] | S | S = 0, если значение поля 9.1 равно 0.1 <= S <= 8192, если значение поля 9.1 равно 1 |
10 | Подтверждения транзакции | proofs | См. раздел Бинарный формат подтверждений | S | Если массив пустой, то S = 3. Если массив не пустой, то S = 3 + 2 × N + 64 × N , где N — количество подтверждений в массиве.Максимальное количество подтверждений в массиве — 8. Размер каждого подтверждения — 64 байта |
Поля, номера которых выделены жирным шрифтом, составляют байты тела транзакции.
# JSON-представление транзакции
Смотрите пример в Node API.