0

When someone is simply sending ETH from one address to another, and assuming that person does not include a custom message in the transaction, then what exactly is the message that is sent on the network used to sign the transaction?

When reading the basis of how message signing works, I found that the following method and formula is used:

sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)))

...but if the signer does not include a message and only sends ETH, or perhaps maybe just uses MetaMask to send funds, what exactly does the message become?

(Side note: Doing a transaction decode shows that "data" field is simply "0x," but not sure if this data field is also correlated to the message itself or not).

1 Answers1

0

All Ethereum transaction contains a data field. This field can be

  • Empty

  • A payload to call a smart contract function

  • Any user given message

The payload in the data field is separate for signing a message. A signed message can be transferred offchain, like email and copy paste, and does not need to be a part of a transaction.

Mikko Ohtamaa
  • 22,269
  • 6
  • 62
  • 127