SlideShare a Scribd company logo
Submit Search
Upload
Login
Signup
Optimistic Rollupとは何か
Report
Syuhei Hiya
Follow
Blockchain Layer2 Researcher at Cryptoeconomics Lab
May. 27, 2020
•
0 likes
•
1,159 views
1
of
38
Optimistic Rollupとは何か
May. 27, 2020
•
0 likes
•
1,159 views
Download Now
Download to read offline
Report
Engineering
Ethereumのスケーリング技術である、Optimistic Rollupについての解説です。
Syuhei Hiya
Follow
Blockchain Layer2 Researcher at Cryptoeconomics Lab
Recommended
暗号技術の実装と数学
MITSUNARI Shigeo
9.4K views
•
35 slides
暗認本読書会7
MITSUNARI Shigeo
2.5K views
•
31 slides
普通の人でもわかる Paxos
tyonekura
12K views
•
64 slides
katagaitai CTF勉強会 #5 Crypto
trmr
6.3K views
•
149 slides
RSA暗号運用でやってはいけない n のこと #ssmjp
sonickun
57.4K views
•
32 slides
暗号化したまま計算できる暗号技術とOSS開発による広がり
MITSUNARI Shigeo
2.9K views
•
15 slides
More Related Content
What's hot
トランザクションの並行実行制御 rev.2
Takashi Hoshino
6.2K views
•
50 slides
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
Tokoroten Nakayama
121.4K views
•
99 slides
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
7K views
•
1 slide
暗認本読書会6
MITSUNARI Shigeo
463 views
•
22 slides
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
14.1K views
•
66 slides
新分野に飛び入って半年で業績を作るには
Asai Masataro
9.4K views
•
31 slides
What's hot
(20)
トランザクションの並行実行制御 rev.2
Takashi Hoshino
•
6.2K views
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
Tokoroten Nakayama
•
121.4K views
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
•
7K views
暗認本読書会6
MITSUNARI Shigeo
•
463 views
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
•
14.1K views
新分野に飛び入って半年で業績を作るには
Asai Masataro
•
9.4K views
5分でわかるブロックチェーンの基本的な仕組み
Ryo Shimamura
•
306.9K views
トランザクションの設計と進化
Kumazaki Hiroki
•
71.3K views
深層学習による自然言語処理入門: word2vecからBERT, GPT-3まで
Yahoo!デベロッパーネットワーク
•
25.3K views
今話題のいろいろなコンテナランタイムを比較してみた
Kohei Tokunaga
•
61.6K views
マイクロにしすぎた結果がこれだよ!
mosa siru
•
132K views
暗号文のままで計算しよう - 準同型暗号入門 -
MITSUNARI Shigeo
•
43.4K views
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
•
42K views
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
Takuya Akiba
•
57.1K views
Pythonではじめる OpenAI Gymトレーニング
Takahiro Kubo
•
36.2K views
CyberChefの使い方(HamaCTF2019 WriteUp編)
Shota Shinogi
•
23.7K views
SAT/SMTソルバの仕組み
Masahiro Sakai
•
36.4K views
テストコードの DRY と DAMP
Yusuke Kagata
•
1.5K views
分散システムについて語らせてくれ
Kumazaki Hiroki
•
119K views
冬のLock free祭り safe
Kumazaki Hiroki
•
26.9K views
Similar to Optimistic Rollupとは何か
The· trend of Plasma research and develepment
wei-li
1.1K views
•
91 slides
HTTP/2, QUIC入門
shigeki_ohtsu
47K views
•
71 slides
Intel TSX について x86opti
Takashi Hoshino
8.7K views
•
43 slides
zkRollup Introduction.pdf
ssuser7f9132
400 views
•
62 slides
l12l2-NFT-Bridge.pdf
wei-li
715 views
•
72 slides
Intel TSX HLE を触ってみた x86opti
Takashi Hoshino
7.3K views
•
39 slides
Similar to Optimistic Rollupとは何か
(12)
The· trend of Plasma research and develepment
wei-li
•
1.1K views
HTTP/2, QUIC入門
shigeki_ohtsu
•
47K views
Intel TSX について x86opti
Takashi Hoshino
•
8.7K views
zkRollup Introduction.pdf
ssuser7f9132
•
400 views
l12l2-NFT-Bridge.pdf
wei-li
•
715 views
Intel TSX HLE を触ってみた x86opti
Takashi Hoshino
•
7.3K views
Hokkaido.cap #osc11do Wiresharkを使いこなそう!
Panda Yamaki
•
33.2K views
Packetbeatの基礎から、IoTデバイス異常検知への応用まで
Satoyuki Tsukano
•
5.3K views
Orb oracle
Masa Nakatsu
•
2.5K views
分散型台帳技術Orb DLTの紹介
Orb, Inc.
•
6.8K views
Azure Fabric Service Reliable Collection
Takekazu Omi
•
3.9K views
RouterBOARD with OpenFlow
Toshiki Tsuboi
•
12.6K views
More from Syuhei Hiya
Cassandraの話
Syuhei Hiya
335 views
•
16 slides
Distributed Pub Subについて
Syuhei Hiya
195 views
•
9 slides
さくらのIoTプラットフォームをはじめよう
Syuhei Hiya
828 views
•
16 slides
福岡IoTLT vol.1 ARで電球を操作する。
Syuhei Hiya
607 views
•
13 slides
Intoroduce milkcocoa for english
Syuhei Hiya
1.8K views
•
43 slides
2015 6-14-raspberry pi×milkcocoa 玄関の明かりを監視!
Syuhei Hiya
3.1K views
•
12 slides
More from Syuhei Hiya
(11)
Cassandraの話
Syuhei Hiya
•
335 views
Distributed Pub Subについて
Syuhei Hiya
•
195 views
さくらのIoTプラットフォームをはじめよう
Syuhei Hiya
•
828 views
福岡IoTLT vol.1 ARで電球を操作する。
Syuhei Hiya
•
607 views
Intoroduce milkcocoa for english
Syuhei Hiya
•
1.8K views
2015 6-14-raspberry pi×milkcocoa 玄関の明かりを監視!
Syuhei Hiya
•
3.1K views
2015 5-7-slide
Syuhei Hiya
•
690 views
milkcocoa入門@milkcocoa meetup#1
Syuhei Hiya
•
5.7K views
月刊LT10月:Raspberry Pi×Milkcocoa
Syuhei Hiya
•
3K views
milkcocoa 〜アプリ開発をもっと簡単に高速に〜
Syuhei Hiya
•
1.4K views
What is clooca
Syuhei Hiya
•
1.6K views
Optimistic Rollupとは何か
1.
Optimistic Rollupとは何か? 2020/05/28 Shuhei Hiya@Cryptoeconomics
Lab L2 Meetup
2.
Why Scaling Increase Ethereum
Capacity Ethereum today About 15 tps
3.
Agenda Rollupとは何か? Optimistic Rollupとは何か? Optimistic Rollupの仕組み Gazelleの紹介
4.
Scaling Research ● Sharding ●
Optimistic Rollup ● zkRollup ● Plasma ● Channel
5.
EthereumのLayer 2 スケーリング トランザクション圧縮かトランザクションを送信するタイミングを減らす tx1
tx2 tx3 tx4 H 0-0 H 0-1 H 1-0 H 1-1 H 0 H 1 Merkle Root
6.
What’s Rollup? Data Availabilityを保ちながらスケーリングする技術 トランザクションデータをブロックチェーンにCalldataとして投げるが、Stateとして保存す るのはMerkleRootだけ tx1
tx2 tx3 tx4 Hash(txs) Plasmaはここだけブロックチェー ンに投げる Rollupはこれ全体を Calldataとして投げる
7.
Data Availabilityがない状態とは? h =
Hash(tx) txの中身がわからない状態 もとのtxを知るために特別な仕組みが必要になってしまい、実現できる ことも少なるなる。これを汎用的に解決できるのがRollup。 ? txが正しいのか不正 なのかがわからない 例)PlasmaのExit Game
8.
What’s Rollup Data Availabilityを保ちながらスケーリングする技術 Optimistic
Rollup 問題が起こった場合のみブロックチェーンでトランザクションの検証を行う ZK Rollup zk-SNARKsにより毎回ブロックチェーンでトランザクションの検証を行う
9.
トランザクションのCalldataとStateの違い ● 現在のEthereumのStateのサイズは、~45GB ● トランザクションとは異なり、Stateはフルノードで切り落とすことができない。 ●
トランザクションを検証するためには、Stateへの多くのランダムアクセスを実行しな ければならないため、StateをRAMに保持する必要がある 要するにStateは高い、トランザクションのCalldataは安い
10.
ERC20の例 ERC20のトランザクションとstate ● トランザクション: 受け取り手のアドレスと金額(=64bytes) ●
ステート: アドレスごとの残高(=32bytes) ● 100アカウントあるとする L1の場合 両方が人数分あるので、100人だと640 bytesのCalldataと320 bytesのState 例えばOptimistic Rollupの場合 トランザクションのみが人数分あるので、100人だと640 bytesのCalldataと32 bytesのState
11.
Gasコスト削減の観点での比較 Ethereum Transaction cost =
State+コンピューテーョン+CallData ZK Rollup Transaction cost = State+コンピューテーョン+CallData Optimistic Rollup Transaction cost = State+コンピューテーョン+CallData Plasma Transaction cost = State+コンピューテーョン+CallData 下線の部分を削減できる
12.
トランザクションあたりのGas cost比較(概算) 10 txs
per block 100 txs per block 1000 txs per block Ethereum 26000 26000 26000 ORU 10642 4664 4000 Plasma 6642 664 66 トランザクションのサイズは、シンプルな送金のケースを想定。 単位 gas
13.
ZK Rollup &
Optimistic Rollup 両方データはオンチェーン zkSnarkによるverification vs optimistic verification
14.
zkRollup & Optimistic
Rollup 両方データはオンチェーン zk-SNARKsによるverification vs optimistic verification トランザクションをethereumに投げる時に全て検証する (pessimistic)か、しない(optimistic)か。
15.
Why Rollup Data Availabilityを保ちながら、スケールさせ ることで色々なメリットがある。
16.
Why Optimistic Rollup ethereumに対して ●
20x scalingする Plasmaに対して ● トランザクションアグリゲータがパーミッションレスである ○ 誰でもトランザクションのバリデーションができる ● General Smart Contract ○ unipig ● L1の混雑耐性 ○ non-interactive fraud proof
17.
Fisherman's dilemma from https://vitalik.ca/general/2019/08/28/hybrid_layer_2.html
18.
Optimistic RollupはPlasmaの研究から生まれた https://plasma.build/t/rollup-plasma-for-mass-exits-complex-disputes/90
19.
Optimistic RollupはPlasmaの研究から生まれた Plasmaの研究から、その欠点を補うように生まれた
20.
How Optimistic Rollup
works
21.
How Optimistic Rollup
works Aggregator Deposit 10 ETH to Rollup Contract Alice Collateral 10 ETH
22.
Deposit Aggregator deposit 1 ETH Alice Alice Collateral 10 ETH
23.
Sending Transaction Aggregator1 OETH
to Bob 1.5 OETH to Alice 1 OETH Bob 1.5 OETH Alice Alice Bob Collateral 10 ETH
24.
Sending Transaction Aggregator 1 OETH
Bob 1.5 OETH Alice Alice Bob Collateral 10 ETH
25.
Invalid Transaction Aggregator 1 OETH
Bob 1.5 OETH Alice 2 OETH Aggregator ... Alice Bob Collateral 10 ETH
26.
Invalid Transaction Aggregator 1 OETH
Bob 1.5 OETH Alice 2 OETH Aggregator ... Alice Bob Collateral 10 ETH
27.
Invalid Transaction Aggregator 1 OETH
Bob 1.5 OETH Alice 2 OETH Aggregator ... Alice Bob Full node Collateral 10 ETH Infra ethscan 誰でも検証が可能
28.
3 challenge rules Skipped
valid block Invalid block Invalid parent
29.
Products of ORU 名前
特徴 Optimism アカウント型、SolidityでSmart Contractが書 ける FuelCore UTXO型 Interstate Network EVM Optimistic Rollup Arbtrum AVMという独自のVM。二分法的な紛争解決 モデル SKALE BLS signatureを使ったGas cost削減の研究 を行っている
30.
ORU & OVMをsynthetixに適応した推計値 記事より抜粋 https://medium.com/ethereum-optimism/synthetix-exchange-meets-the-ovm-2de3a572d6df Oracle
update latency: - Mainchain Ethereum: >15 seconds - Optimistic Ethereum: ~400ms Oracle update gas costs: - Mainchain Ethereum: 394.2k gas - Optimistic Ethereum: 14.5k gas (calldata usage can be optimized to < 3.5k gas) Exchange gas costs - Mainchain Ethereum: 472.2k gas - Optimistic Ethereum: 3.3k gas Exchange latency - Mainchain Ethereum: >15 seconds - Optimistic Ethereum: ~200ms
31.
日本語であまり説明がない難しい単語の説明 OVM ● ORUのためのVirtual Machine ●
SolidityでORUのアプリケーションが書ける ● Optimismがtranspilerを提供している OGS ● Fraud Proofによる紛争ゲームの抽象化 ● Layer 2やCross Chain Atomic Swapなどを表現できる
32.
まとめ Ethereumのスケーリング技術である、Optimistic Rollupについてお話ししました。 ● Optimistic
RollupはEthereumに対して、約20倍のスケーリングが期待できます ● 誰でもブロックバリデーションができます ● 汎用的なスマートコントラクトの実行ができます
33.
Gazelleというプロダクトのα versionをリ リースしました。 https://gzle.io/
35.
Gazelleとは? ● OGS理論に従ったクライアントとスマートコントラクトの実装 ● その基盤の上にPlasmaを実装 ●
Plasma ClientはAPIが生えている ● 先日α versionとして公開しました ただのPlasma実装ではなく、開発フレームワーク!!
36.
Why Plasma? ORUに対して Plasmaベースでトランザクションあたりのコストが安い Channelに対して 参加者を限定しない コンソーシアムチェーンに対して 独自コンセンサスアルゴリズムを持たない Ethereumとのネイティブインターオペラビリティがある
37.
Gazelleの今後 ● α versionのテストネットとウォレットの公開 ●
マルチシグやSwapなどのAPIの公開 Gazelleは幅広くL2の仕組みを実装できるポテンシャルを持っています。α versionでは Plasmaを利用することができます。
38.
Why Gazelle? OGSという抽象化理論の上にPlasmaプロトコルが実装されている。 第1にPlasmaのアプリケーションを汎用言語で状態遷移を記述して表現するのは難しい、しかし fraud proofの合成であればかなり的確にPlasmaでできることを表すことができる。 第2に、この表現方法はfraud
proofのmodulabilityがある。例えば「There exists a signature which alice signed for the message」という記述がon-chainでもoff-chainでも、同じ記述で同じ意 味を持って評価できる。そしてこの述語はPlasmaの述語と組み合わせて使うことができるし、将来的 にはOptimistic RollupやChannelなど他のprotocolとも組み合わせられるだろう。 def MultisigPredicate(alice, bob) := OwnershipPredicate(alice) and OwnershipPredicate(bob)