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
DEXのデータを分析してインサイトを掘り出す / DEX Analysis
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Nao Hanamura
July 25, 2019
Technology
1.1k
1
Share
DEXのデータを分析してインサイトを掘り出す / DEX Analysis
7/25 Ethereum Hack Tokyo 登壇資料
EthereumブロックチェーンからDEXのデータを分析してインサイトを掘り出します。
Nao Hanamura
July 25, 2019
More Decks by Nao Hanamura
See All by Nao Hanamura
PMFを生み続ける意志力 #pmconf2022
naomasabit
6
12k
寄り道禁止!LayerX インボイスの爆速開発を支えるロードマップ作り / how-to-create-layerx-invoice-roadmap
naomasabit
7
28k
デジタル空間でのブロックチェーン応用事例 / Blockchain use cases in digital space
naomasabit
0
770
SHIEDLにおけるGKE, CircleCIを活用したサービス、フルノードの基盤開発 / SHIEDL-blockchain-full-node-infrastructure
naomasabit
1
810
セキュリティインシデント事例とブロックチェーンモニタリング・分析サービスcatabiraのご紹介 / Case of security incidents of cryptocurreny and introduction of blockchain monitoring and analysis service "catabira"
naomasabit
0
870
Yellow Paper から読み解くEthereumブロックチェーンの詳細仕様 / Reading out specifications from Ethereum Yellow Paper
naomasabit
10
11k
有名なスマートコントラクト脆弱性・ハックについての復習 / Widely known vulnerability of smart contract
naomasabit
2
1.4k
ブロックチェーンサービスのセキュリティを考える
naomasabit
12
8.3k
Other Decks in Technology
See All in Technology
レガシーシステムをどう次世代に受け継ぐか
tachiiri
0
300
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
4
13k
自己組織化を試される緑茶ハイを求めて、今日も全力であそんで学ぼう / Self-Organization and Shochu Green Tea
naitosatoshi
0
270
ふりかえりがなかった職能横断チームにふりかえりを導入してみて学んだこと 〜チームのふりかえりを「みんなで未来を考える場」にするプロローグ設計〜
masahiro1214shimokawa
0
220
Data Enabling Team立ち上げました
sansantech
PRO
0
290
「できない」のアウトプット 同人誌『精神を壊してからの』シリーズ出版を 通して得られたこと
comi190327
3
600
3つのボトルネックを解消し、リリースエンジニアリングを再定義した話
nealle
0
160
ストライクウィッチーズ2期6話のエイラの行動が許せないのでPjMの観点から何をすべきだったのかを考える
ichimichi
1
280
Strands Agents × Amazon Bedrock AgentCoreで パーソナルAIエージェントを作ろう
yokomachi
2
250
試されDATA SAPPORO [LT]Claude Codeで「ゆっくりデータ分析」
ishikawa_satoru
0
300
ADOTで始めるサーバレスアーキテクチャのオブザーバビリティ
alchemy1115
2
250
MCPゲートウェイ MCPass の設計と実装 エンタープライズで AI を「運用できる」状態にする
mtpooh
1
160
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
280
Chasing Engaging Ingredients in Design
codingconduct
0
160
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
700
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How STYLIGHT went responsive
nonsquared
100
6k
Six Lessons from altMBA
skipperchong
29
4.2k
A better future with KSS
kneath
240
18k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
KATA
mclloyd
PRO
35
15k
Transcript
1 DEXのデータを分析してインサイトを掘り出す 2019/7/25 Ethereum Hack Tokyo Nao Hanamura
2 これまでやってきたこと 自己紹介:ブロックチェーンのエンジニアをしており、データアナリストの 仕事も過去やってきました(2017/5〜) 開発・コンサ ル • ブロックチェーンデータの分析基盤構築 • ブロックチェーン領域のモニタリングSaaS開発
(Go, Python, CI/CD, Kubernetes etc.) • 会計、財務データのデータアナリティクス コミュニティ活 動 • 技術ブログ「Neutrinoで働くブロックチェーンエンジニアのブロ グ」(www.blockchainengineer.tokyo/) • CGTF「暗号資産カストディアンのセキュリティについての考え 方」 暗号通貨 監査 • 暗号通貨監査の技術アドバイザリー ✓ 特に取引所の監査手続開発 ✓ ブロックチェーンデータの分析 ✓ 特定通貨の監査手法などのリサーチ 花村直親(Naochika Hanamura) @naomasabit
noteでブロックチェーンの分析レポートの試みを始めています 3 https://note.mu/naohanamura
4 DEXはどれくらい使われているのか?
5 EtherscanのDEX trackerによると、過去7日間で65,000件ほどトランザ クションが生まれています
6 EtherscanのDEX trackerによると、IDEXが約6割のトランザクションを 占めており、こちらを掘り下げます https://etherscan.io/stat/dextracker
7 IDEXのトランザクション数のほとんどはETHとの交換です
8 IDEXのトランザクション数のほとんどはETHとの相対取引です
ETHとの相対取引については取引高をETHの時価を使えば USD建てで取引高を算出できます 9
1 取引高推移を見ると、概ね日に20,000ETH(6,000,000USD)程度取引 されています
6月時取引高は140,000,000USD(150億円程度)で、CEX含めた 月間取引高ランキングでは100位程度です 11
6月度人気取引トークンランキング(ETHで購入されているトーク ン) 12
ETHと相対取引されているトークン割合はQuantというコインが多 くを占めています 13
参考:Quantチャート 14
15 https://note.mu/naohanamura/m/md88688a3936b 「ブロックチェーンをデータから見るマガジン」で今年の1月〜など より長期間のIDEX取引分析を書きます。(宣伝)
IDEX分析の方法 16
IDEXのコントラクトを見てみます https://etherscan.io/address/0x2a0c0dbecc7e4d658f48e01e3 fa353f44050c208#code 17
IDEXのコントラクトは基本的にデポジット型のDEXです 18 デポジット型のDEXの流れ
IDEXのスマートコントラクトではfunction tradeで取引が実行され ています // ユーザーの残高台帳 mapping (address => mapping (address
=> uint256)) public tokens; //mapping of token addresses to mapping of account balances /* tradeAddressses [0] tokenBuy [1] tokenSell [2] maker [3] taker */ // 交換部分。引いてから足している tokens[tradeAddresses[1]][tradeAddresses[2]] = safeSub(tokens[tradeAddresses[1]][tradeAddresses[2]], safeMul(tradeValues[1], tradeValues[4]) / tradeValues[0]); tokens[tradeAddresses[1]][tradeAddresses[3]] = safeAdd(tokens[tradeAddresses[1]][tradeAddresses[3]], safeMul(safeMul(((1 ether) - tradeValues[7]), tradeValues[1]), tradeValues[4]) / tradeValues[0] / (1 ether)); function tradeの交換部 19
Ethereum transaction には”data”項目として呼び出す関数と引 数がバイト配列でのっており、これを解析します 20
Ethereum transactionに乗っているデータ解析例 input function amountBuy amountSell expires nonce amount trade_nonce
fee_make fee_take ef343588 000000000000 000000000000 000000000000 000000000000 05e6caf7b5556 158 000000000000 000000000000 000000000000 000000000039 b4407e159583 a3e0 000000000000 000000000000 000000000000 000000000000 000000000000 2710 000000000000 000000000000 000000000000 000000000000 000000000c0e5 fdb 000000000000 000000000000 000000000000 000000000000 05e6caf7b5556 158 000000000000 000000000000 000000000000 000000000000 0000000334b7 4b7e 000000000000 000000000000 000000000000 000000000000 00038d7ea4c68 000 000000000000 000000000000 000000000000 000000000000 000cc952fa7e8 d41 function amountBuy amountSell expires_decimal nonce_decimal amount_decimal trade_nonce_deci mal fee_make_decim al fee_take_decimal trade(uint256[8], address[4],uint8[ 2],bytes32[4]) 425,250,380,08 1,095,000.00 106445293215 7948797920 10000 202268635 425,250,380,08 1,095,000 13769329534 100000000000 0000 359905794762 6817 0xef34358800000000000000000000000000000000000000000000000005e6caf7b5556158000000000000000000000000000000000000000000000039b4407e 159583a3e0000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000 0000c0e5fdb00000000000000000000000000000000000000000000000005e6caf7b555615800000000000000000000000000000000000000000000000000000 00334b74b7e00000000000000000000000000000000000000000000000000038d7ea4c68000000000000000000000000000000000000000000000000000000c c952fa7e8d410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000543ff227f64aa17ea132bf9886cab 5db55dcaddf0000000000000000000000007f37b7cc0c8b9dd50a337c412486acf3a7de81930000000000000000000000007059010320d07a47d2ad54db88bb89 ea644c3e6f000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000 0000000001bbb26985aa4111d7028f569be09b88476735a22747109b673c917976c7ed4f31424d2af8ba4439954a479aa6a07e6ba41e61fd0fff9846bc94fa7972f 0a85d6e6bb0c02f1a093f0ec95f6876726288b98db80700439455d4585c1fb0276b65aa63511e05be8b5d173d4efbd4e554c930188fd80e8a3f17db2ef5a16c203c bedbe 21
トランザクションを一つずつ解析した結果がこのようになります input 0xef34358800000000000000000000000000000000000000000000000005e6caf7b5556158000000000000000000000000000000000000000000000039b4407e 159583a3e0000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000 0000c0e5fdb00000000000000000000000000000000000000000000000005e6caf7b555615800000000000000000000000000000000000000000000000000000 00334b74b7e00000000000000000000000000000000000000000000000000038d7ea4c68000000000000000000000000000000000000000000000000000000c c952fa7e8d410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000543ff227f64aa17ea132bf9886cab 5db55dcaddf0000000000000000000000007f37b7cc0c8b9dd50a337c412486acf3a7de81930000000000000000000000007059010320d07a47d2ad54db88bb89 ea644c3e6f000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000 0000000001bbb26985aa4111d7028f569be09b88476735a22747109b673c917976c7ed4f31424d2af8ba4439954a479aa6a07e6ba41e61fd0fff9846bc94fa7972f
0a85d6e6bb0c02f1a093f0ec95f6876726288b98db80700439455d4585c1fb0276b65aa63511e05be8b5d173d4efbd4e554c930188fd80e8a3f17db2ef5a16c203c bedbe 22
• IDEXがDEX全体のトランザクションの6割を占めている(etherscan調べ) • IDEXのトランザクションを解析したところ、月間取引高はおよそ 140,000,000USD(150億円程度)で、CEX含めた月間取引高ランキングでは100位 程度 • データはスマートコントラクトの呼び出しトランザクション解析に基づいている まとめ 23