Messages are transactions where data is passed between two accounts. It is a data packet passed between two accounts. A message can be sent via the Contract Account (CA). They can also be an Externally Owned Account (EOA) in the form of a transaction that has been digitally signed by the sender.
Messages are never stored and are similar to transactions. The key components of a message in Ethereum are:
- Sender of the message call
- Transaction originator
- Transaction recipient
- Contract account, whose code is the be executed during the message call, if there is an account for this purpose
- Maximum available gas
- Gas price
Messages are generated using CALL or DELEGATECALL methods.