13 uint64 vm_version = 1;
17 // This message type duplicates Hash, above. One alternative is to
18 // embed a Hash inside an AssetID. But it's useful for AssetID to be
19 // plain old data (without pointers). Another alternative is use Hash
20 // in any protobuf types where an AssetID is called for, but it's
21 // preferable to have type safety.
34 message AssetDefinition {
35 Program issuance_program = 1;
41 AssetAmount value = 2;
45 message ValueDestination {
47 AssetAmount value = 2;
53 bytes controlProgram = 2;
57 message BytomBlockHeader {
60 Hash previous_block_id = 3;
62 Hash transactions_root = 5;
63 Hash transaction_status_hash = 6;
66 TransactionStatus transaction_status = 9;
72 Hash previous_block_id = 3;
74 Hash transactions_root = 5;
75 Hash transaction_status_hash = 6;
78 TransactionStatus transaction_status = 9;
83 uint64 serialized_size = 2;
85 uint64 time_range = 4;
86 repeated Hash result_ids = 5;
90 message TxVerifyResult {
94 message TransactionStatus {
96 repeated TxVerifyResult verify_status = 2;
100 repeated ValueSource sources = 1; // issuances, spends, and muxes
102 repeated ValueDestination witness_destinations = 3; // outputs, retirements, and muxes
103 repeated bytes witness_arguments = 4;
107 ValueDestination witness_destination = 1;
112 ValueSource source = 1;
113 Program control_program = 2;
118 ValueSource source = 1;
124 AssetAmount value = 2;
125 ValueDestination witness_destination = 3;
126 AssetDefinition witness_asset_definition = 4;
127 repeated bytes witness_arguments = 5;
132 Hash spent_output_id = 1;
133 ValueDestination witness_destination = 2;
134 repeated bytes witness_arguments = 3;
139 Hash spent_output_id = 1;
140 ValueDestination witness_destination = 2;
141 repeated bytes witness_arguments = 3;
143 repeated bytes Peginwitness = 5;