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
180
怖いスマートコントラクト
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
400
libp2p
wshino
7
1.2k
Superiority of Rust
wshino
3
350
Try Cross Compile Then Fail
wshino
0
140
GORMOS - A high performance and scalable design for decentralized applications -
wshino
4
1.8k
DAppのデプロイ戦略 / DApp Deployment Strategy
wshino
3
1.7k
Sharding
wshino
4
1k
Plasma Debit
wshino
2
1.9k
ブロックチェーン技術の登場とスマートコントラクト化する社会
wshino
5
5.2k
Other Decks in Programming
See All in Programming
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
280
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
Spatial Rendering for Apple Vision Pro
warrenm
0
110
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
780
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
110
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
210
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
500
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
450
クリエイティブコーディングとRuby学習 / Creative Coding and Learning Ruby
chobishiba
0
3.9k
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
140
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
140
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
130
Featured
See All Featured
RailsConf 2023
tenderlove
29
940
Speed Design
sergeychernyshev
25
670
Documentation Writing (for coders)
carmenintech
66
4.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Adopting Sorbet at Scale
ufuk
73
9.1k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
The Pragmatic Product Professional
lauravandoore
32
6.3k
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ѱ͘ͳ͍ ͱ͍͑ϓϩάϥϜʹόά͖ͭͷ ςετϑϨʔϜϫʔΫΛ͏
·ͱΊ ϢʔβʔརӹΛ࠷༏ઌʹߟ͑Δ ·ͩφϨοδ͕ཷ·ͬͯͳ͍ ΊͬͪΌςετ͠Α͏