Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
怖いスマートコントラクト
Search
wshino
November 27, 2017
Programming
0
190
怖いスマートコントラクト
2017/11/20 DMM.com labo で発表した内容です。
The DAO事件、ParityのMulti-Sig Walletのバグによる、盗難、凍結について解説しています。
wshino
November 27, 2017
Tweet
Share
More Decks by wshino
See All by wshino
Past, Present and Future
wshino
1
450
libp2p
wshino
7
1.3k
Superiority of Rust
wshino
3
370
Try Cross Compile Then Fail
wshino
0
150
GORMOS - A high performance and scalable design for decentralized applications -
wshino
4
1.8k
DAppのデプロイ戦略 / DApp Deployment Strategy
wshino
3
1.8k
Sharding
wshino
4
1.1k
Plasma Debit
wshino
2
2k
ブロックチェーン技術の登場とスマートコントラクト化する社会
wshino
5
5.3k
Other Decks in Programming
See All in Programming
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.1k
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
130
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
650
自動テストを活かすためのテスト分析・テスト設計の進め方/JaSST25 Shikoku
goyoki
3
680
CSC509 Lecture 10
javiergs
PRO
0
180
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
1k
What’s Fair is FAIR: A Decentralised Future for WordPress Distribution
rmccue
0
180
OSS開発者の憂鬱
yusukebe
12
4.2k
Dive into Triton Internals
appleparan
0
490
Core MIDI を勉強して作曲用の電子ピアノ作ってみた!
hypebeans
0
110
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.5k
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
160
Featured
See All Featured
Navigating Team Friction
lara
190
15k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
1.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
The Invisible Side of Design
smashingmag
302
51k
Documentation Writing (for coders)
carmenintech
76
5.1k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Facilitating Awesome Meetings
lara
57
6.6k
It's Worth the Effort
3n
187
28k
Designing for Performance
lara
610
69k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
BEERBASH 2017/11/20 ා͍εϚʔτίϯτϥΫτ SHINOHARA WATARU
ࢲ Ϗοάσʔλ෦ ϨίϝϯυνʔϜ Kubernetes Spinnaker Istio Scala / Haskell /
PureScript / Golang Blockchain, Ethereum
ETHEREUM ࢄΞϓϦέʔγϣϯͷϓϥοτϑΥʔϜ ϏοτίΠϯͷ࣍ʹن͕େ͖͍ εϚʔτίϯτϥΫτΛಈ͔ͤΔ
εϚʔτίϯτϥΫτ ࣗಈܖ EthereumͰಈ࡞͢ΔϓϩάϥϜ ૹۚͦΕҎ֎ͳΜͰͰ͖Δ
࡞Γํ ϓϩάϥϜΛॻ͘ ϒϩοΫνΣʔϯʹσϓϩΠ͢Δ ☺
ར νϡʔϦϯάશ ঢ়ଶΛ࣋ͭ͜ͱ͕Ͱ͖Δ ࣗ༝͕ߴ͍
ࢭΊΔΈΛೖΕͳ͍ͱࢭΊΒΕͳ͍ ফ͢Α͏ʹ࡞Βͳ͍ͱফͤͳ͍ σϓϩΠͨ͠ΒมߋͰ͖ͳ͍ ͦͷίʔυɺਖ਼͘͠ಈ͖·͔͢
τϨʔυΦϑ ࣗ༝⤴ όάͷةݥੑ⤴
ຊʹ͋ͬͨා͍ The DAOࣄ݅ 2017 Parityͷόά⛱ 2017 Parityͷόά⛄
THE DAO The DAO = ΫϥυϑΝϯσΟϯάΈ͍ͨͳͭ ඇதԝूݖ 20166݄17 52ԯԁͷඃ
THE DAO #1 splitDAO DAOʹࢍಉ͠ͳ͍߹ʹɺ৽͍͠DAOΛ࡞͢ΔػೳΛ ར༻ DAOͷߴ % DAOͷࣗͷߴ &
৽͍͠DAOͷߴ ' ૹۚॲཧΛߦͬͯྃͨ͠Β&ͷߴΛ0ʹ͢Δ ( % → ( → ) & → ( → '
THE DAO #2 withdrawRewardFor splitDAOͷதͰݺͼग़͞ΕΔ &ͷߴΛDAOຊମ%͔Β'ʹ1͚ͩૹۚ͢Δ લड़ͷॲཧΛ࠶ؼͰݺͼग़ͤΔόά ߴݮ͍ͬͯͳ͍ % →
( → ' ɹ% → ( → ' ίϛϡχςΟޙͰ࣏͢͜ͱʹͨ͠
THE DAO Կ͕ى͖͔ͨ % → ( → ' ɹ% →
( → ' ɹɹ% → ( → ' ɹɹɹ% → ( → ' ɹɹɹɹ% → ( → ' ɹɹɹɹɹ% → ( → ' ... % % → (&( &() * 30 → ' '
THE DAO Ͳ͏ͬͯղܾ͔ͨ͠ ৽͘͠࡞ͨ͠DAOͷࢿۚ27ؒಈ͔ͤͳ͍ ߈ܸ͞Εͨྺ࢙Λר͖ͯ͠ແ͔ͬͨ͜ͱʹͨ͠ EthereumͷίϛϡχςΟ͕྾ͨ͠ ) → Ethereum *
→ Ethereum Classic
2017 PARITYͷόά⛱ ϚϧνγάΥϨοτʹෆ۩߹ αʔυύʔςΟͷParity͕։ൃ ΥϨοτͷॳظԽϝιου͕ݺΔ Φʔφʔݖݶ͕ୣΘΕΔ ߈ܸΞΧϯτʹΥϨοτͷશֹΛૹۚ 34ԯԁͷඃ
2017 PARITYͷόά⛱ Ͳ͏ͬͯղܾ͔ͨ͠ ղܾͤͣ 80ԯԁϗϫΠτϋοΧʔ͕อޢ
2017 PARITYͷόά⛄ ϚϧνγάΥϨοτʹෆ۩߹ ར༻͍ͯ͠ΔϥΠϒϥϦ͕ॳظԽ͞Ε͍ͯͳ͍ ॳظԽ͞Ε͍ͯͳ͍ͱॳظԽϝιου͕ݺΔ ϥΠϒϥϦͷΦʔφʔݖݶ͕ୣΘΕΔ ϥΠϒϥϦͷআϝιου͕͋Δɺ͔ͭݺΔ ΥϨοτ͕ͯ͑͢ͳ͘ͳͬͨ 300ԯԁౚ݁
2017 PARITYͷόά⛄ DEVOPS199
2017 PARITYͷόά⛄ DEVOPS199
2017 PARITYͷόά⛄ Ͳ͏ͬͯղܾ͔ͨ͠ ղܾࡦࡧத ౚ݁ͨ͠ࢿۚաڈͷऔҾ͔ΒΘ͔Δ Ϣʔβʔʹฦ࣮͢ͳͲ͕ఏҊ͞Ε͍ͯΔ
·ͱΊ Ethereumѱ͘ͳ͍ ͱ͍͑ϓϩάϥϜʹόά͖ͭͷ ςετϑϨʔϜϫʔΫΛ͏
·ͱΊ ϢʔβʔརӹΛ࠷༏ઌʹߟ͑Δ ·ͩφϨοδ͕ཷ·ͬͯͳ͍ ΊͬͪΌςετ͠Α͏