CCA Transactions & Verification 3 — Questions and Answers
Question 1: What does the Merkle root in a Bitcoin block header represent?
- The hash of all block headers in the chain
- A single hash summarizing all transactions in the block (Correct answer)
- The difficulty target for the next block
- The miner's reward address
Correct answer: A single hash summarizing all transactions in the block
The Merkle root is the top hash of a binary Merkle tree built from all transaction hashes in the block, enabling efficient transaction verification.
Question 2: An auditor identifies that two blockchain transactions share identical TXIDs. What does this most likely indicate?
- A normal batching optimization by the exchange
- Transaction malleability or a deliberate hash collision attack (Correct answer)
- A successful atomic swap between two chains
- Routine fee bumping via CPFP
Correct answer: Transaction malleability or a deliberate hash collision attack
Duplicate TXIDs indicate transaction malleability (pre-SegWit) or a serious protocol-level attack, either of which requires immediate investigation.
Question 3: What is a Child-Pays-for-Parent (CPFP) transaction, and how does it affect audit trail completeness?
- A transaction where the recipient creates a high-fee child to accelerate the parent's confirmation (Correct answer)
- A parent contract that reimburses child contract gas costs
- A fee-sharing mechanism between miners and validators
- A cross-chain bridge transaction linking parent and child chains
Correct answer: A transaction where the recipient creates a high-fee child to accelerate the parent's confirmation
CPFP lets a recipient spend an unconfirmed output with a high-fee transaction, incentivizing miners to confirm both; auditors must link parent and child transactions.
Question 4: In Ethereum, what is the purpose of the 'gasLimit' field set by a transaction sender?
- It caps the total ETH transferred in the transaction
- It sets the maximum amount of gas the sender authorizes to be consumed (Correct answer)
- It defines the block's capacity for this transaction type
- It specifies the priority fee paid to the validator
Correct answer: It sets the maximum amount of gas the sender authorizes to be consumed
The gasLimit is the maximum units of gas the sender permits the transaction to consume, protecting against runaway computation costs.
Question 5: Which verification method allows a lightweight (SPV) client to confirm a transaction without downloading the full blockchain?
- Zero-knowledge proofs submitted to a full node
- Merkle proofs linking the transaction to a block header (Correct answer)
- Querying a trusted third-party oracle for confirmation
- Running a subset of the consensus algorithm locally
Correct answer: Merkle proofs linking the transaction to a block header
SPV clients use Merkle branch proofs to verify that a transaction is included in a block without needing all block data.
Question 6: From a CCA audit perspective, what is the significance of a transaction's 'locktime' field?
- It permanently locks the UTXO from further spending
- It specifies the earliest block height or timestamp at which the transaction can be included (Correct answer)
- It encrypts the transaction data until a future date
- It reserves a UTXO for a specific counterparty
Correct answer: It specifies the earliest block height or timestamp at which the transaction can be included
Locktime restricts transaction inclusion to a future block height or Unix timestamp, relevant for auditing time-locked contracts and deferred payments.
Question 7: What is a coinbase transaction and what unique characteristics must an auditor note?
- A transaction initiated by the Coinbase exchange platform with special KYC flags
- The first transaction in every block that creates new coins and collects fees, with no inputs (Correct answer)
- A genesis block transaction that can only appear once per chain
- A burn transaction that permanently removes coins from circulation
Correct answer: The first transaction in every block that creates new coins and collects fees, with no inputs
The coinbase transaction is the first in every block, has no prior inputs, creates the block subsidy plus fees, and is subject to a 100-block maturity lock.
What does the Merkle root in a Bitcoin block header represent?