CBCP Ethereum 2 — Questions and Answers
Question 1: What is the purpose of the Ethereum Virtual Machine (EVM) opcode SLOAD?
- Load a value from contract storage into the stack (Correct answer)
- Load a value from memory into the stack
- Load calldata into the stack
- Load bytecode from an address
Correct answer: Load a value from contract storage into the stack
SLOAD reads a 32-byte word from the contract's persistent storage slot into the execution stack.
Question 2: Which Ethereum upgrade introduced the concept of 'difficulty bomb' to encourage migration to Proof of Stake?
- Byzantium (Correct answer)
- Spurious Dragon
- Homestead
- Istanbul
Correct answer: Byzantium
Byzantium (2017) included EIP-649, which delayed the difficulty bomb and reduced block rewards from 5 to 3 ETH.
Question 3: In Ethereum's account model, what differentiates an Externally Owned Account (EOA) from a contract account?
- EOAs have no associated code and are controlled by private keys (Correct answer)
- EOAs store ERC-20 tokens while contracts store ETH
- EOAs can only send ETH, not interact with contracts
- EOAs have a nonce of zero permanently
Correct answer: EOAs have no associated code and are controlled by private keys
EOAs have no code field and are controlled exclusively by whoever holds the corresponding private key.
Question 4: What does the Ethereum Yellow Paper define as the 'world state'?
- A mapping of addresses to account states including balance, nonce, storage, and code (Correct answer)
- The global transaction mempool across all nodes
- The aggregate ETH supply at a given block
- The canonical list of deployed smart contracts
Correct answer: A mapping of addresses to account states including balance, nonce, storage, and code
The world state is a Merkle Patricia Trie that maps 20-byte addresses to account state objects.
Question 5: Which EIP introduced the 'BASEFEE' opcode, allowing contracts to read the base fee of the current block?
- EIP-3198 (Correct answer)
- EIP-1559
- EIP-2929
- EIP-2718
Correct answer: EIP-3198
EIP-3198 added the BASEFEE opcode so smart contracts can access the current block's base fee directly.
Question 6: In a Merkle Patricia Trie used by Ethereum, what node type stores a single key-value pair with a non-shared path?
- Leaf node (Correct answer)
- Extension node
- Branch node
- Root node
Correct answer: Leaf node
Leaf nodes encode the remaining path and the terminal value, representing the end of a unique trie path.
Question 7: What is 'uncle rate' in pre-Merge Ethereum and why was it significant?
- The fraction of valid blocks not included in the main chain, indicating network latency and miner competition (Correct answer)
- The ratio of failed transactions to successful ones
- The percentage of ETH issuance going to staking validators
- The proportion of gas used by internal calls
Correct answer: The fraction of valid blocks not included in the main chain, indicating network latency and miner competition
High uncle rates indicated propagation delays; uncle blocks received partial rewards to reduce wasted PoW work.
What is the purpose of the Ethereum Virtual Machine (EVM) opcode SLOAD?