$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to OVM
Search
Takamichi Tsutsumi
August 27, 2019
Programming
4
1.3k
Introduction to OVM
Introduction to OVM concept
Takamichi Tsutsumi
August 27, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
AIコーディングエージェント(Gemini)
kondai24
0
240
Github Copilotのチャット履歴ビューワーを作りました~WPF、dotnet10もあるよ~ #clrh111
katsuyuzu
0
110
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
380
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
120
俺流レスポンシブコーディング 2025
tak_dcxi
14
8.9k
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
260
Cell-Based Architecture
larchanjo
0
130
GISエンジニアから見たLINKSデータ
nokonoko1203
0
150
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
350
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
9
5.8k
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
160
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Unsuck your backbone
ammeep
671
58k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Bash Introduction
62gerente
615
210k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Building Applications with DynamoDB
mza
96
6.8k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Into the Great Unknown - MozCon
thekraken
40
2.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Thoughts on Productivity
jonyablonski
73
5k
Code Reviewing Like a Champion
maltzj
527
40k
Transcript
!1 *OUSPEVDUJPOUP07. (FOFSBMJ[FE0⒎DIBJO-BZFS 5BLBNJDIJ5TVUTVNJ
"HFOEB എܠ •L1ͱL2 •PlasmaͱStateChannel •Fraud ProofͱValidity Proof ՝ •L2ͰΞϓϦέʔγϣϯΛ࡞Δ՝ײ OVM
◦ίϯηϓτ ◦ه๏ ◦Ұ֊ड़ޠཧ ◦StateChannelͷྫ ◦ΞʔΩςΫνϟ • CryptoeconomicsLab • References !2
*OUSPEVDUJPO •ఆର L2ͷઐՈͰ͋Δඞཁͳ͠ɻEthereumؔ࿈ͷ։ൃΛͬͨ͜ͱ͕͋Δɻ Scalingͷೝ͍ࣝͯ͠Δ͕ɺ໌֬ͳղܾ๏ͱͯ͠ͷL2Λೝ͍ࣝͯ͠ΔΘ͚Ͱͳ͍ɻ Plasma, StateChannelͦ͠͏ͱײ͍ͯ͡Δɻ •ΰʔϧ L2ͰDAppΛ࡞Δͱ͍͏͜ͱ͕Ͳ͏͍͏͜ͱ͔ͳΜͱͳ͘Θ͔Δɻ OVMͷ֓೦Λܰ͘ཧղ͢ΔɻOVMͰL2DAppΛ࡞ͬͯΈ͍ͨͱࢥ͏ɻ •ԿΛ͔͢ɾԿΛ͞ͳ͍͔
͢͜ͱ: Plasma, StateChannelͳͲͷLayer2 SolutionΛҰൠԽ͢Δ֓೦Ͱ͋ΔOVMʹ͍ͭͯ, L2 Application։ൃ͕͜Ε͔ΒͲ͏ͳ͍͔ͬͯ͘ɻ ͞ͳ͍͜ͱ: ࣮ࡍʹApplicationΛ࡞ΔνϡʔτϦΞϧతͳ͜ͱ, ۩ମతͳ࣮ͷͳ͠, ϓϩάϥϛϯάͷ !3
!4 07.ͱɺ-ΛநԽͨ֓͠೦Ͱ͋Δɻ1MBTNB4UBUF$IBOOFMѻ͑Δɻ
#BDLHSPVOE !5
-ͱ- • -ͱɺ&UIFSFVNͷ4DBMBCJMJUZʹରͯ͠ɺUY TUBUFVQEBUF Λ-ͷ֎Ͱߦ͍ɺ͋ͱ͔Β -ʹөͤ͞Δͱ͍͏ΞϓϩʔνɻSFG<> • 1MBTNB 4UBUF$IBOOFMͳͲͷσβΠϯ͕͋Δɻ !6
4UBUF$IBOOFM • ͋ΔϢʔβʔͷू߹͕DPJOΛMPDLͯ͠ɺ ͦͷϢʔβʔؒͰͷ4UBUF6QEBUFΛ ΦϑνΣʔϯͷϝοηʔδަʹΑͬͯߦ͏ɻ ϢʔβʔؒͰ߹ҙͨ͠࠷৽ͷ4UBUF͕&YJUͰ͖Δɻ SFG< > !7
1MBTNB • 4UBUF6QEBUFΛߦ͏$IJME$IBJO͕0QFSBUPSͱ͍͏ׂͷਓʹΑͬͯӡ༻͞ΕΔɻ0QFSBUPS ͕1MBTNB্ͰͷUYΛूΊͯ·ͱΊ-ʹఏग़͓ͯ͘͜͠ͱͰɺ֤$MJFOU͕ਖ਼͘͠&YJUͰ͖Δ ػ ձଛࣦΛআ͘ଛΛ͠ͳ͍ Α͏ͳΈ͕͋ΔɻSFG< > !8
%JTQVUF ฆ૪ • -ͷιϦϡʔγϣϯͰɺෆਖ਼ͳ&YJUʹରͯͦ͠Εෆͳ&YJUͰ͋Δͱ͍͏ҟٞਃཱ͠ ͯ %JTQVUF ͕Ͱ͖ͳ͚ΕͳΒͳ͍ɻ • ྫ͑ɺ1MBTNBͷ0QFSBUPS͕ෆʹଠͷ͓ۚΛ&YJU͠Α͏ͱͨ͠ΒɺଠͦΕʹର ͯ͠ҟٞਃཱͯ͠Ͱ͖Δɻ
!9 ֆ
'SBVE1SPPGͱ7BMJEJUZ1SPPG • 'SBVE1SPPGෆਖ਼ͳ4UBUFʹରͯͦ͠Ε͕ෆਖ਼Ͱ͋Δͱ͍͏ূڌΛఏग़͢Δɻෆਖ਼ͳ4UBUF͕ FYJU͞Εͨͱ͖ʹͷΈߦ͑Α͍ɻ*OUFSBDUJWFͳΓऔΓ͕ඞཁͱͳΔɻ • 7BMJEJUZ1SPPGਖ਼͍͠4UBUFʹ͍ͨͯͦ͠Ε͕ਖ਼͍͠ͱ͍͏ূڌΛఏग़͢Δɻ4UBUFVEQBUF ͷͨͼߦ͏ඞཁ͕͋Δɻఏग़͢ΕPLɻSFG<> • 4UBUF$IBOOFM 1MBTNB&YJU࣌ʹฆ૪ظؒ
%JTQVUFQFSJPE Λઃ͚ͯɺ'SBVE1SPPGʹΑΔ ݕূΛߦ͏ɻ%JTQVUFQFSJPE͕͗͢Εɺਖ਼͘͠ͳ͘ͳ͍͜ͱ͕ূ໌͞Εͨ͜ͱʹͳΔɻ !10
1SPCMFN !11
-ͰΞϓϦέʔγϣϯΛ࡞Δʁ • 1MBTNB 4UBUF$IBOOFMͳͲͷσβΠϯ4QFDJpDͳ࣮͕ඞཁ • &YJUHBNFͷઃܭɾ࣮ • 4FDVSFͳઃܭɾ࣮ͷ͠͞ • 4NBSU$POUSBDU
$MJFOU 'SPOUFOE FUD !12
07. !13
$PODFQU • 0QUJNJTUJD7JSUVBM.BDIJOF 07. ݄ʹ1MBTNB(SPVQʹΑͬͯఏএ͞ΕͨɻSFG< > • -ͷ'SBVE1SPPGʹΑΔ%JTQVUFΛநԽ͍ͯ͠Δ֓೦ɻ • ͋Δ໋
1SPQFSUZ ͕ਖ਼͍͜͠ͱ͕ϩʔΧϧ P⒎DIBJO ใʹΑͬͯอূͰ͖Δ͜ͱ͕-ͷຊ ࣭Ͱ͋Δͱ͍͏ߟ͑ํɻ • -ͷ%JTQVUFΛநԽ͢ΔͨΊͷه๏ ड़ޠཧͰͷهड़ Λఏএ !14
Ұ֊ड़ޠཧ • Α͋͘Δ໋ཧ ଠਓؒͩ ʹྔͷ֓೦ΛՃ͑ͨͷɻ • 07.ͰҰ֊ड़ޠཧͰ1SPQFSUZΛهड़͢Δɻ • Ұ֊ड़ޠཧͰʮͯ͢ͷYʹ͍ͭͯZͰ͋Δʯɺʮ͋ΔYʹରͯ͠ZͰ͋ΔʯͷΑ͏ͳ໋͕ ѻ͑ΔɻSFG<>
!15
Ұ֊ड़ޠཧ • શশྔԽه߸ VOJWFSTBMRVBOUJpFS • ྫͯ͢ͷೣՄѪ͍ • ՄѪ͘ͳ͍ೣΛূڌͱͯ͠ఏग़͢Ε൱ఆ Ͱ͖Δ
!16 • ଘࡏྔԽه߸ FYJTUFOUJBMRVBOUJpFS • ྫ͋Δೣʹཌྷ͕ੜ͍͑ͯΔ • ཌྷͷੜ͑ͨೣΛূڌͱͯ͠ఏग़͢Εূ໌ Ͱ͖Δ ՄѪ͘ͳ͍ೣ ཌྷͷੜ͑ͨೣ
1SPQFSUZͷهड़ྫ4UBUF$IBOOFMͷ&YJU 1.ଠͱՖࢠ͕ͦΕͧΕ10ETHΛϩοΫͨ͠channelΛ։͍ͨɻ 2.ଠ͕2ETHΛՖࢠʹૹΔϝοηʔδΛ࡞Γɺॺ໊ͯ͠Ֆࢠʹ ૹͬͨɻ 3.Ֆࢠଠ͔ΒૹΒΕ͖ͯͨϝοηʔδΛ֬ೝ͠ɺͦΕʹॺ໊͠ ͯೋਓͷॺ໊͖ͷϝοηʔδΛૹΓฦͨ͠ɻՖࢠೋਓͷॺ໊ ͖ͷϝοηʔδΛࣗͷखݩʹίϐʔͯ͠ͱ͓ͬͯ͘ɻ 4.྆ऀ2, 3Λ܁Γฦͯ͠channel্ͰࢿۚͷҠಈΛؾ͕ࡁΉ·Ͱ ܁Γฦͨ͠ɻ
5.ΓऔΓ͕ऴΘͬͨΒɺ࠷ޙʹΓऔΓͨ͠ͷ྆ऀͷॺ໊͖ ϝοηʔδΛͬͯchannel͔Βexit͢Δɻ 6.͠exit͠Α͏ͱͨ͠ϝοηʔδ͕࠷৽ͷͷͰͳ͍߹ɺ ͏ยํຊͷ࠷৽ͷϝοηʔδΛఏग़͢Δ͜ͱʹΑͬͯͦͷ exitΛΩϟϯηϧͰ͖Δɻ •ϝοηʔδʹnonce(࿈൪)Λ;͓ͬͯ͘͜ͱʹΑͬͯ৽͠͞Λ දݱ͢Δͱ͢Δ !17
1SPQFSUZͷهड़ྫ4UBUF$IBOOFMͷ&YJU • ͜ͷͱ͖ɺ͋ΔϝοηʔδͰFYJU͢Δͱ͖ʹඞཁͳQSPQFSUZΛҎԼͷΑ͏ʹఆٛ͢Δɻ !18 FYJU͍ͨ͠ϝοηʔδͷOPODF͕OͰ͋Δͱ͖ɺ O͕྆ऀͷॺ໊Λ͍࣋ͬͯΔϝοηʔδͷOPODFͷ͏ͪ࠷େͷͰ͋Δ͜ͱɻ • ͜ΕɺଘࡏྔԽࢠΛ༻͍ΔҎԼͷ໋ͷ൱ఆͱͯ͠هड़Ͱ͖Δɻ • ·ͨɺશশྔԽࢠΛ༻͍ΔͱҎԼͷΑ͏ʹهड़Ͱ͖Δɻ
FYJU͍ͨ͠ϝοηʔδͷOPODF͕OͰ͋Δͱ͖ɺ OΑΓେ͖͍OPODFΛ࣋ͭɺ྆ऀͷॺ໊Λͭϝοηʔδ͕ଘࡏ͢Δɻ FYJU͍ͨ͠ϝοηʔδͷOPODF͕OͰ͋Δͱ͖ɺ ͯ͢ͷOΑΓେ͖͍OPODFΛ࣋ͭϝοηʔδ྆ऀͷॺ໊Λ͍ͬͯͳ͍ɻ
1SPQFSUZͷهड़ྫ4UBUF$IBOOFMͷ&YJU !19 FYJU͍ͨ͠ϝοηʔδͷOPODF͕OͰ͋Δͱ͖ɺ ͯ͢ͷOΑΓେ͖͍OPODFΛ࣋ͭϝοηʔδ྆ऀͷॺ໊Λ͍ͬͯͳ͍ɻ • ͜ͷ1SPQFSUZ͕ਖ਼͍͠ͱೝΊΒΕͨΒOPODFOͷTUBUFΛFYJU͢Δ͜ͱ͕Ͱ͖Δɻ • ଠɾՖࢠͷ྆ऀO Ҏ্ͷOPODFΛ࣋ͭ྆ऀͷॺ໊͖ͭͷϝοηʔδΛఏग़͢Δ͜ͱͰ͜ ͷ1SPQFSUZΛغ٫͢Δ͜ͱ͕Ͱ͖Δɻ
• ಉ༷ʹɺ1MBTNBͷ&YJU1SPQFSUZҰ֊ड़ޠཧͰͷهड़͕Մೳɻ ׂѪ <> • ͜ΕʹΑΓ-ͷ౷Ұతͳهड़͕Ͱ͖ΔΑ͏ʹͳͬͨ
07.Ͱ"QQMJDBUJPOΛ࡞ΔͱͲ͏͍͏͜ͱ͔ • 07.ʹ͓͍ͯ1SPQFSUZΛઃܭ͢Δ͜ͱ͕ͦ͜"QQMJDBUJPO%FWFMPQFSͷॏཁͳׂͱͳ Δɻ • -ͷ$MJFOUɺ͋Δ1SPQFSUZ͕ਖ਼͍͠ͱ͍͏͜ͱΛূ໌͢ΔͨΊͷσʔλΛΓऔΓͨ͠Γ ͢Δͷɻ • ͜ͷεΩʔϜʹैͬͯ1SPQFSUZ$MJFOUΛઃܭɺ࣮͢Ε-্ͰΞϓϦέʔγϣϯ։ൃ͕ Ͱ͖ΔΑ͏ʹͳΔɻ
!20
ΞʔΩςΫνϟ • -ͱͷͭͳ͗நԽ͞ΕΔ Ͳ͏ͬͯ -PDL͞ΕΔ͔ɺͲ͏ͬͯQSPQFSUZ͕ਖ਼͠ ͍ਖ਼͘͠ͳ͍ͱܾΊΒΕΔ͔ • -͔Β-ͲΜͳTUBUF͕FYJUͰ͖ΔΑ͏ʹ ͢Δ͔։ൃऀ͕ߟ͑ΒΕΔ
• -ͰͷDMJFOUؒͷΓͱΓҰൠతͳϢʔε έʔεͷͷ 4UBUFDIBOOFM1MBTNBͳͲ ڞ௨Ͱ͑Δͷ͕Ͱ͖Δ • ։ൃऀ͕'SPOUFOE։ൃʹूதͰ͖ΔͨΊͷ TEL͕Ͱ͖ΔSFG<> !21
ࢲୡ͕͍ͬͯΔ͜ͱ 07.ʹଇͬͯ-ͰΞϓϦέʔγϣϯΛ؆ ୯ʹ͔ͭॊೈʹ։ൃͰ͖ΔͨΊʹఏڙ͞Ε Δ͖ͷɾ͜ͱͯ͢Λ४උ͢Δɻ •ΞϓϦέʔγϣϯϑϨʔϜϫʔΫ ઈࢍߏத •1SPQFSUZهड़ͷͨΊͷݴޠ ઈࢍ։ൃத
•$MJFOUGPS1MBTNBڞ௨࣮ ઈࢍ࣮த •'SPOUFOETEL ઈࢍઃܭத •FUD !22
!23 07.Λ͏ͱɺ͜Ε·Ͱ։ൃ͍ͯͨ͠4DBMBCJMJUZͷΛղܾͨ͠#MPDLDIBJO"QQMJDBUJPOΛ ؆୯ʹ։ൃ͢Δ͜ͱ͕Ͱ͖ΔΑ͏ʹͳΔɻ
$SZQUPFDPOPNJDT-BC (JUIVCIUUQTHJUIVCDPNDSZQUPFDPOPNJDTMBC 5FMFHSBNIUUQTUNFQMBTNBRBOEB .FEJVNIUUQTNFEJVNDPNDSZQUPFDPOPNJDTMBC 5XJUUFSIUUQTUXJUUFSDPNDSZQUPFDPOMBC !24
3FGFSFODFT L2 • [0] https://media.consensys.net/the-state-of-ethereum-layer-2-protocol-development-2-f22b2603abd6 Plasma • [1] https://ethresear.ch/t/minimal-viable-plasma/426 •
[2] https://www.learnplasma.org/en/ • [3] https://karl.tech/plasma-cash-simple-spec/ StateChannel • [4] https://education.district0x.io/general-topics/understanding-ethereum/basics-state-channels/ • [5] https://l4.ventures/papers/statechannels.pdf RollUp • [6] https://github.com/barryWhiteHat/roll_up FraudProofɾValidityProof • [7] https://medium.com/starkware/validity-proofs-vs-fraud-proofs-4ef8b4d3d87a OVM • [8] https://medium.com/plasma-group/introducing-the-ovm-db253287af50 • [9] https://medium.com/plasma-group/the-ovm-s-your-scaling-solution-state-channel-edition-ed13de56e249 • [10] https://medium.com/cryptoeconomics-lab/cel-development-direction-to-the-greater-abstraction-6860f87ce0eb • [11] https://github.com/plasma-group/pigi • [12] https://github.com/plasma-group/ovm • [13] https://github.com/cryptoeconomicslab/plasma-rust-framework • [14] https://github.com/cryptoeconomicslab/plasma-rust-framework/issues/162 ड़ޠཧ • [15] https://ja.wikipedia.org/wiki/Ұ֊ड़ޠཧ !25