オプティミスティック・ロールアップ (Optimistic Rollup)
Optimistic Rollupは、トランザクションをオフチェーンで実行し、トランザクションデータはメインチェーンに投稿するLayer-2スケーリングソリューションです。トランザクションは、異議申し立てがない限り有効であると仮定されます。
Optimistic Rollupsは、メインのEthereumチェーン(または他のベースレイヤー)外でトランザクションを処理することにより、ブロックチェーンのスケーラビリティを向上させます。複数のトランザクションを単一のバッチにまとめ、それをLayer-1チェーンに送信します。「Optimistic」という側面は、すべてのトランザクションがデフォルトで有効であるという仮定から来ています。これは、有効性証明を使用するZK-Rollupsとは対照的です。トランザクションが無効と見なされた場合、詐欺の証拠をメインチェーンに提出して異議を申し立て、紛争解決プロセスをトリガーできます。このアプローチにより、Layer-1トランザクションと比較して、トランザクション手数料が大幅に削減され、スループットが向上します。
graph LR
Center["オプティミスティック・ロールアップ (Optimistic Rollup)"]:::main
Pre_smart_contract["smart-contract"]:::pre --> Center
click Pre_smart_contract "/terms/smart-contract"
Pre_layer_2["layer-2"]:::pre --> Center
click Pre_layer_2 "/terms/layer-2"
Rel_zk_rollup["zk-rollup"]:::related -.-> Center
click Rel_zk_rollup "/terms/zk-rollup"
Rel_sidechains["sidechains"]:::related -.-> Center
click Rel_sidechains "/terms/sidechains"
Rel_fraud_proof["fraud-proof"]:::related -.-> Center
click Rel_fraud_proof "/terms/fraud-proof"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 5歳でもわかるように説明
🤥 Imagine a high-speed checkout at a store where you just shout your total and leave. The store 'optimistically' trusts you are honest to save time. However, there's a camera (the [fraud proof](/ja/terms/fraud-proof) system). If a guard checks the tape later and sees you lied, the store reverses the [transaction](/ja/terms/transaction) and punishes you. Because of this check, you have to wait 7 days before your 'receipt' is officially final.
🤓 Expert Deep Dive
Optimistic Rollups leverage fraud proofs, a mechanism rooted in game theory and computational integrity, to ensure security without requiring complex zero-knowledge proofs. The state transition function of the rollup is replicated on L1 via a verifier contract. When a sequencer posts a new state root S_new derived from S_old after executing transactions T, it is posted as (S_old, S_new, calldata_T). A verifier contract allows any party to submit a fraud proof, typically involving a computational challenge to pinpoint the exact faulty computation. This often requires a mechanism like 'state-rent' or 'challenge-specific computation' on L1 to verify the disputed step. The challenge period duration is a critical trade-off, balancing security against user experience (withdrawal times). Vulnerabilities include the 'data availability problem' (if L1 data is unavailable, L2 state cannot be reconstructed), sequencer censorship, and the potential for a single malicious sequencer to halt the network (though economic incentives mitigate this). Advanced designs explore multi-sequencer setups and validity proofs as a fallback or complementary mechanism.