CBCP Ethereum 4 — Questions and Answers
Question 1: What is the 'Spurious Dragon' hard fork best known for introducing?
- EIP-161 state-clearing which removed empty accounts, and EIP-170 which capped contract code size at 24KB (Correct answer)
- The difficulty bomb delay
- The transition to Proof of Stake
- Introduction of ERC-20 token standard
Correct answer: EIP-161 state-clearing which removed empty accounts, and EIP-170 which capped contract code size at 24KB
Spurious Dragon (Nov 2016) followed the Shanghai DoS attacks and cleaned up empty accounts while capping bytecode size.
Question 2: Which cryptographic curve does Ethereum use for signing transactions?
- secp256k1 (Correct answer)
- ed25519
- P-256 (secp256r1)
- Curve25519
Correct answer: secp256k1
Ethereum uses the secp256k1 elliptic curve for ECDSA signatures, the same curve used by Bitcoin.
Question 3: What is a 'proxy pattern' in Ethereum smart contract upgradability?
- A contract that delegates calls to an implementation contract, allowing logic to be upgraded without changing the proxy's address (Correct answer)
- A contract that mirrors state from the mainnet to a sidechain
- A pattern where multiple contracts share a single storage layout
- A read-only contract that proxies view calls for gas savings
Correct answer: A contract that delegates calls to an implementation contract, allowing logic to be upgraded without changing the proxy's address
The proxy holds state and forwards calls via DELEGATECALL to an upgradeable logic contract, preserving the original address.
Question 4: In Ethereum's ERC-721 standard, what does the tokenURI function return?
- A URI pointing to a JSON file describing the NFT's metadata including name, image, and attributes (Correct answer)
- The IPFS hash of the token's on-chain image
- The Ethereum address of the token's current owner
- The block number when the token was minted
Correct answer: A URI pointing to a JSON file describing the NFT's metadata including name, image, and attributes
tokenURI returns a URL (often IPFS or HTTPS) to a JSON metadata file following the ERC-721 metadata standard.
Question 5: What problem does EIP-712 (Typed Structured Data Hashing and Signing) solve?
- Prevents signature replay across different contracts and chains by encoding domain-specific context into signed messages (Correct answer)
- Reduces gas costs for on-chain signature verification
- Enables hardware wallets to sign EVM bytecode
- Standardizes multi-signature wallet schemas
Correct answer: Prevents signature replay across different contracts and chains by encoding domain-specific context into signed messages
EIP-712 binds a signature to a specific contract, chain, and structured payload, making phishing and replay attacks harder.
Question 6: What is the 'SELFDESTRUCT' opcode's effect post-EIP-6780 (Cancun upgrade)?
- It only destroys the contract and sends ETH if called in the same transaction that created the contract; otherwise it only sends ETH (Correct answer)
- It permanently removes the contract and all its state unconditionally
- It is completely disabled and reverts when called
- It marks the contract for deletion in the next block
Correct answer: It only destroys the contract and sends ETH if called in the same transaction that created the contract; otherwise it only sends ETH
EIP-6780 restricts SELFDESTRUCT so it only eliminates code/storage if creation and destruction occur in one transaction.
Question 7: In Ethereum's Casper FFG finality mechanism, what is required for a checkpoint to be 'justified'?
- A supermajority (≥2/3) of the total staked ETH must attest to a link between two checkpoints (Correct answer)
- More than 50% of active validators must vote for the checkpoint
- The checkpoint block must be at least 64 slots old
- At least one epoch must pass after the checkpoint without a fork
Correct answer: A supermajority (≥2/3) of the total staked ETH must attest to a link between two checkpoints
Casper FFG requires a two-thirds supermajority vote by stake weight to justify a source-to-target checkpoint link.
What is the 'Spurious Dragon' hard fork best known for introducing?