Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Developerが陥りやすい3つの罠
Search
nakajo2011
April 14, 2018
Programming
4.4k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Developerが陥りやすい3つの罠
Hi-Ether #2 LT発表資料
nakajo2011
April 14, 2018
More Decks by nakajo2011
See All by nakajo2011
Plasma_Overview_gbec20180928.pdf
nakajo2011
0
110
What is Ethereum about tech layer
nakajo2011
0
430
The Ethereum design direction.
nakajo2011
0
100
Report of Devcon5 2019.10.17
nakajo2011
0
680
Compare of Libra and Ethereum
nakajo2011
1
480
What is Move language
nakajo2011
1
1.3k
blockchain-changing-and-issues
nakajo2011
4
590
Thinking Scalability from DEX
nakajo2011
0
130
Truffleの紹介_in_hicon2018.pdf
nakajo2011
3
340
Other Decks in Programming
See All in Programming
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.2k
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
290
スマート反転とウェブアクセシビリティ
camiha
0
220
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
540
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
18
18k
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
170
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
390
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
350
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
140
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
8.8k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
860
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
170
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
240
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Deep Space Network (abreviated)
tonyrice
0
320
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
It's Worth the Effort
3n
188
29k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Transcript
Copyright © 2018 HAW International Inc. All rights reserved. Developerが陥りやすい3つの罠
SmartContract以外のセキュリティーにも気をつけてい ますか?
Copyright © 2018 HAW International Inc. All rights reserved. 自己紹介
中城 元臣(Yukishige Nakajo) twitter: @nakajo github: nakajo2011 ・福岡の飯塚市でBlockchainの研究開発やってます。 ・HAW International所属 ・ethereumは2017/11から始めました。
Copyright © 2018 HAW International Inc. All rights reserved. 今日話すこと
SmartContract以外のセキュリティーにも気をつけてい ますか? 1. checksum利用してますか? 2. リプレイアタック意識してますか? 3. truffle-hdwallet-providerに潜む罠
checksum利用してますか?
Copyright © 2018 HAW International Inc. All rights reserved. 1.checksum利用してますか?
Copyright © 2018 HAW International Inc. All rights reserved. 1.checksum利用してますか?
• EIP-55で定義 • addressのhashをとる • hash値が8 >= 0を大文字にする
Copyright © 2018 HAW International Inc. All rights reserved. 1.checksum利用してますか?
Copyright © 2018 HAW International Inc. All rights reserved. 1.checksum利用してますか?
・Walletではchecksumを利用してる。 ・Dappsでは?利用してない人が実は多いのでは? ・ethereum-util.jsなどを使えば簡単にチェック可能 ・Dappsでもaddressを各必要のある場所は(たとえ静的なデータ だとしても)checksumを活用しよう。 ・ICAPというフォーマットも提案されているけどまだ主流じゃな い。。。
リプレイアタック意識していますか?
Copyright © 2018 HAW International Inc. All rights reserved. 2.リプレイアタック意識していますか?
・EIP-155以前では同一のaddresから生成されたtransactionは mainnetとtestnetなど区別なく利用可能
Copyright © 2018 HAW International Inc. All rights reserved. 2.リプレイアタック意識していますか?
・EIP-155でsignature生成時にchain idを含めるようにしてリプレ イアタックをできなくした。 ・でも下位互換を持たせるためchain id = 0のtransactionは相変 わらずリプレイアタックの対象となる
Copyright © 2018 HAW International Inc. All rights reserved. 2.リプレイアタック意識していますか?
Geth
Copyright © 2018 HAW International Inc. All rights reserved. 2.リプレイアタック意識していますか?
• EIP-155で解決された。でも下位互換として残ってる。 • nodeにsignを依頼する場合は多分大丈夫。ethereumjs-txや ganache-cliなどで生成されたtransactionは確認した方がよ い。 • meta-transactionなど、代替支払いの仕組みを作る場合は特 に注意が必要になると思う。
truffle-hdwallet-providerに 潜む罠
Copyright © 2018 HAW International Inc. All rights reserved. 3.truffle-hdwallet-providerに潜む罠
infura.io利用する時はtruffle-hdwallet-provider使うことが多い
Copyright © 2018 HAW International Inc. All rights reserved. 3.truffle-hdwallet-providerに潜む罠
Copyright © 2018 HAW International Inc. All rights reserved. 3.truffle-hdwallet-providerに潜む罠
https://ropsten.etherscan.io/address/0x959fd7ef9089b7142b6b908dc3a8af7aa8ff0fa1
Copyright © 2018 HAW International Inc. All rights reserved. 3.truffle-hdwallet-providerに潜む罠
・mnemonicのvalidationをしていない ・空文字でも動いちゃう ・PR #10を出してるのでそっちを使ってね https://github.com/trufflesuite/truffle-hdwallet-provider/pull/10
Copyright © 2018 HAW International Inc. All rights reserved. おわり
ブログも宜しく http://y-nakajo.hatenablog.com/