Understand some of the basic mechanics behind accounts, transactions, gas, and the role miners play in setting the block size in Ethereum.
An externally controlled account
- Has an ether balance, can send transactions (ether transfer or trigger contract code), is controlled by private keys, has no associated code.
- Every time a contract account receives a transaction, its code is executed as instructed by the input parameters sent as part of the transaction.
- The term “transaction” refers to the signed data package that stores a message to be sent from an externally owned account to another account on the blockchain.
- Contracts have the ability to send “messages” to other contracts. Messages are virtual objects that are never serialized and exist only in the Ethereum execution environment.
What is gas?
- For every executed operation there is a specified cost, expressed in a number of gas units.
Gas and transaction costs
- Every transaction is required to include a gas limit (sometimes called StartGas) and a fee per gas.
Estimating transaction costs
- Total cost = gasUsed * gasPrice
- gasUsed is the sum of all the gas for all the operations executed.
What is “block gas limit”?
- Block gas limits are the maximum amount of gas allowed in a block to determine how many transactions can fit into a block.
What is a “DoS” of the Ethereum network?
- Recently there have been reports of the Ethereum network slowing down or becoming unusable.