Transaction (Tx) has header and set of items. Header has version, create timestamp and items section size.
Every item is prepended with one byte item type id, so on start we have not more than 255 types of items. Here are some that already present in code:
Item input, point to previous output in ledger's tree. Has next fields:
- tx_prev_hash: Previous transaction hash
- tx_out_prev_idx: Previous transaction output index
Conditioned input fields:
- tx_prev_hash: Previous transaction hash
- tx_out_prev_idx: Previous transaction output index)
- condition: Condition type
Output fields:
- value: Transfered value amount
Conditioned output fields:
- value: Transfered value amount
- pub_key_size: Condition public key size
- cond_size: Condition parameters size
- pub_key_type: Public key type
- сonditions: Conditions
Public key fields:
- sig_type: Signature type
- sig_size: Signature size
- seq_no: Key sequence number (need for Zk)
Signature fields:
- sig_type: Signature type
- sig_size: Signature size
For base transaction in subchain we need to proof it with emission from another chains.
- ticker: Ticker name
- token_emission_chain_id: Emission chain id
- token_emission_hash: Emission hash