AXM from one account to another.
Transactions, which change the state of the chain, need to be broadcast to the whole network. Any node can broadcast a request for a transaction. After the validator node receives the transaction, it executes the transaction and includes it in a block, then propagates the block to the whole network.
Only after the transaction is packed into a block by the validator node, and the block is confirmed, the transaction is finally confirmed.
The transaction includes following information:
from- Sender’s address, the address that will sign the transaction. This should be an Externally Owned Account (EOA) because a contract account cannot send transactions.recipient– Receiver’s address (If the address is an EOA, the transaction will transfer value. If the address is a contract address, the transaction will execute contract code).signature– The identify of the sender. This is generated when a sender use his private key to send the transaction.nonce- An orderly increasing counter representing the number of transactions from an account.value– The amount of AXM transferred from the sender to the receiver.data– An optional field capable of containing arbitrary data.gasLimit–The maximum quantity of gas units a transaction can consume, specifying the gas units required for each computable step.
- “raw” is the signature transaction in Recursive Length Prefix (RLP) encoding format.
- “tx” is the JSON representation of the signed transaction.
Types of Transaction
AxiomLedger has four different types of transactions:- Regular Transactions: Transactions sent from one account to another. This type of transaction involves transferring AXM from one address to another and can include an optional data field for additional information.
- System Execution Transaction: These transactions are used to interact with system contracts that are natively integrated by AxiomLedger network. In this case, the “to” address of the transaction is the address of the system contract, and the transaction data fields contain the function call and parameters to be executed within the contract.
- Contract Deployment Transactions: These transactions don’t have a “to” address; instead, they include code and initialization parameters for deploying a smart contract. In this type of transaction, the transaction data fields contain the bytecode of the contract and constructor parameters.
- Contract Execution Transactions: These transactions are used to interact with smart contracts that have already been deployed on the AxiomLedger network. In this case, the “to” address of the transaction is the address of the smart contract, and the transaction data fields contain the function call and parameters to be executed within the contract.