Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a rollup in blockchain?
A rollup is a technology that bundles many transactions together off the main blockchain to make processing faster and cheaper, then submits a summary back to the main chain.
Click to reveal answer
intermediate
How do Optimistic Rollups verify transactions?
Optimistic Rollups assume transactions are valid by default and only check them if someone challenges with proof of fraud.
Click to reveal answer
intermediate
What is the main difference between Optimistic and ZK Rollups?
Optimistic Rollups trust transactions unless challenged, while ZK Rollups use cryptographic proofs to verify transactions instantly.
Click to reveal answer
beginner
What does ZK stand for in ZK Rollups?
ZK stands for Zero-Knowledge, which means the rollup uses zero-knowledge proofs to prove transactions are correct without revealing all details.
Click to reveal answer
advanced
Why might someone choose Optimistic Rollups over ZK Rollups?
Optimistic Rollups are often easier to build and support more complex smart contracts, but they have longer withdrawal times due to challenge periods.
Click to reveal answer
What do Optimistic Rollups assume about transactions?
AThey are valid unless proven otherwise
BThey are invalid until verified
CThey require zero-knowledge proofs
DThey are processed only on the main chain
✗ Incorrect
Optimistic Rollups assume transactions are valid by default and only check if challenged.
What technology do ZK Rollups use to verify transactions?
AFraud proofs
BZero-knowledge proofs
CProof of work
DProof of stake
✗ Incorrect
ZK Rollups use zero-knowledge proofs to instantly verify transactions.
Which rollup type usually has faster withdrawal times?
AZK Rollups
BOptimistic Rollups
CBoth are the same
DNeither supports withdrawals
✗ Incorrect
ZK Rollups verify transactions instantly, so withdrawals are faster than Optimistic Rollups which have challenge periods.
Why might Optimistic Rollups be preferred for complex smart contracts?
AThey run only on Layer 1
BThey use zero-knowledge proofs
CThey have no challenge periods
DThey are easier to build and support more complex logic
✗ Incorrect
Optimistic Rollups are often easier to develop for complex contracts compared to ZK Rollups.
What is a key risk with Optimistic Rollups?
AThey require heavy computation on Layer 1
BThey cannot bundle transactions
CFraud proofs might be missed causing invalid transactions
DThey do not support smart contracts
✗ Incorrect
If no one challenges a fraudulent transaction in Optimistic Rollups, it may remain accepted.
Explain how Optimistic Rollups and ZK Rollups differ in verifying transactions.
Think about trust assumptions and proof methods.
You got /4 concepts.
Describe the advantages and disadvantages of using Optimistic Rollups.
Consider speed, security, and complexity.
You got /4 concepts.
Practice
(1/5)
1.
What is the main difference between Optimistic Rollups and ZK Rollups?
easy
A. Optimistic Rollups assume transactions are valid until challenged; ZK Rollups use proofs to verify immediately.
B. Optimistic Rollups use zero-knowledge proofs; ZK Rollups wait for challenges.
C. Both rollups require a waiting period before finalizing transactions.
D. ZK Rollups do not move any work off the main blockchain.
Solution
Step 1: Understand Optimistic Rollups behavior
Optimistic Rollups trust transactions are valid initially and allow a challenge period to dispute invalid ones.
Step 2: Understand ZK Rollups behavior
ZK Rollups generate cryptographic proofs that transactions are valid immediately, so no waiting period is needed.
Final Answer:
Optimistic Rollups assume transactions are valid until challenged; ZK Rollups use proofs to verify immediately. -> Option A
Quick Check:
Trust first vs proof first [OK]
Hint: Optimistic trusts first, ZK proves first instantly [OK]
Common Mistakes:
Confusing which rollup uses proofs immediately
Thinking both rollups have the same waiting period
Assuming ZK Rollups do not move work off-chain
2.
Which of the following is the correct syntax to describe a ZK Rollup in a blockchain smart contract comment?
// This rollup uses ______ to verify transactions instantly
easy
A. manual challenges
B. a waiting period
C. optimistic assumptions
D. zero-knowledge proofs
Solution
Step 1: Identify ZK Rollup verification method
ZK Rollups use zero-knowledge proofs to verify transactions instantly.
Step 2: Match the correct phrase in the comment
The comment should mention "zero-knowledge proofs" to describe ZK Rollups.
Final Answer:
zero-knowledge proofs -> Option D
Quick Check:
ZK Rollups = zero-knowledge proofs [OK]
Hint: ZK means zero-knowledge proofs, not waiting [OK]
Common Mistakes:
Choosing 'waiting period' which applies to Optimistic Rollups
Confusing optimistic assumptions with ZK proofs
Selecting manual challenges which are for Optimistic Rollups
3.
Consider this pseudocode for an Optimistic Rollup transaction verification:
function verifyTransaction(tx) {
assume tx is valid
wait 7 days for challenge
if no challenge then finalize tx
else revert tx
}
What will happen if a fraudulent transaction is submitted and no one challenges it?
medium
A. The system will generate a zero-knowledge proof to verify it.
B. The transaction will be rejected immediately.
C. The fraudulent transaction will be finalized after 7 days.
D. The transaction will be finalized instantly without waiting.
Solution
Step 1: Analyze the verification logic
The function assumes transactions are valid and waits 7 days for any challenge.
Step 2: Consider no challenge scenario
If no challenge occurs within 7 days, the transaction is finalized regardless of validity.
Final Answer:
The fraudulent transaction will be finalized after 7 days. -> Option C
Quick Check:
Optimistic waits then finalizes if no challenge [OK]
Hint: No challenge means finalize after wait in Optimistic Rollups [OK]
Common Mistakes:
Thinking fraudulent tx is rejected immediately
Assuming zero-knowledge proofs are used here
Believing finalization is instant without waiting
4.
Identify the bug in this ZK Rollup pseudocode snippet:
function verifyZKProof(proof) {
if (proof.isValid) {
finalizeTransaction()
} else {
wait 7 days for challenge
}
}
What is the main issue?
medium
A. finalizeTransaction() should be called only after waiting.
B. ZK Rollups should not wait for challenges; proof validity is immediate.
C. The proof.isValid check is missing a negation operator.
D. The function should always wait 7 days regardless of proof validity.
Solution
Step 1: Understand ZK Rollup verification
ZK Rollups use immediate proof verification and do not require waiting periods.
Step 2: Analyze the code logic
The code incorrectly waits 7 days if proof is invalid, which contradicts ZK Rollup design.
Final Answer:
ZK Rollups should not wait for challenges; proof validity is immediate. -> Option B
Quick Check:
ZK Rollups = instant proof, no wait [OK]
Hint: ZK proofs mean no waiting, immediate finalize [OK]
Common Mistakes:
Thinking waiting is needed for ZK Rollups
Misreading proof validity condition
Assuming finalizeTransaction requires delay
5.
You want to design a rollup system that minimizes user waiting time but can handle complex computations off-chain. Which rollup type should you choose and why?
hard
A. ZK Rollup, because it provides immediate proof and faster finality.
B. Optimistic Rollup, because it finalizes instantly without proofs.
C. Optimistic Rollup, because it uses zero-knowledge proofs for speed.
D. ZK Rollup, because it waits for challenges before finalizing.
Solution
Step 1: Identify rollup goals
The goal is to minimize waiting time and handle complex off-chain computations.
Step 2: Compare rollup features
ZK Rollups provide immediate validity proofs, enabling faster finality without waiting periods, suitable for complex computations.
Final Answer:
ZK Rollup, because it provides immediate proof and faster finality. -> Option A
Quick Check:
Minimize wait + complex work = ZK Rollup [OK]
Hint: ZK Rollups = fast finality with proofs, best for complex tasks [OK]
Common Mistakes:
Choosing Optimistic Rollup for instant finality incorrectly