Slide 1

Slide 1 text

暗号通貨にまつわる課題の データサイエンス的解決へ向けて

Slide 2

Slide 2 text

今日の話 ● 10年前の2009年1月、暗号通貨の元祖ビットコインのネットワークが始動しました。 ● このネットワークを構成する技術として公開鍵暗号をベースに構築されたブロック チェーンがあります。 ● 暗号通貨及びブロックチェーンは、その登場からまだ日が浅く様々な課題を抱えて います。 本講演では、山積された課題のうち、データサイエンス的なアプローチでの解決が有効 と思われるものを紹介します。

Slide 3

Slide 3 text

リアルな課題を解決しよう!

Slide 4

Slide 4 text

株式会社AndGo代表取締役 原 利英,博士(理学)  2010年3月 東京理科大学理工学研究科情報科学専攻博士後期課程卒業  2010年4月 - 2015年3月 東京理科大学理工学部情報科学科助教  2015年4月 - 2017年4月 アクテイブ株式会社 IT研究所主任研究員  2017年4月 株式会社AndGo創業 著書:数理物理と数理情報の基礎 , 近代科学社, 2016. SNS: 専門: 電子工作 天空の城ラピュタ ドラゴンボール 東芝J3100 (白黒液晶) QBasic, Delphi Doom, Quake, Unreal 小学生 中学生・高校生 ゲノム解析手法 塾教師/がん研究会 アーチェリー github/toshihr @ToshihideHara 大学生 Genome Analysis / Drug Delivery System / Chaos / Crypto 研究職 暗号と出会う ゲノムは暗号! ・高精度アライメント法 ・AESより速い暗号化法 ・暗号化したまま比べる技術 About me Pythonで解析!

Slide 5

Slide 5 text

AndGoとは    AndGo 社名の由来 暗号技術を持つ会社、秘匿暗号の研究開発をする会社 だからAndGo (アンゴー = 暗号) Excite The World with Technology 技術で世界をワクワクさせる 技術が好きでたまらない 技術開発が楽しくて仕方がないエンジニアが創った会社 3期

Slide 6

Slide 6 text

フィンテック系アクセラレータ 第3期プログラム採択

Slide 7

Slide 7 text

暗号通貨、ブロックチェーン、ウォレット

Slide 8

Slide 8 text

Reference: https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses Bitcoin Address Private Key 18e14a7b6a307f426a94f8114701e7c8e774e7f 9a47e2c2035db29a206321725 Public Key Bitcoin Address ECDSA Base52Check Encode 0250863ad64a87ae8a2fe83c1af1a8403cb53f5 3e486d8511dad8a04887e5b2352 1PMycacnJaSqwwJqjawXBErnLsZ7RkXUAs Double Hash SHA256 RIPEMD-160

Slide 9

Slide 9 text

Alice Bob Blockchain Blockchain and Keys Private Keys Private Keys Public Keys Public Keys 参照: 「堅牢なスマートコントラクト開発のためのブロックチェーン[技術]入門」 インターネット上に公開されている

Slide 10

Slide 10 text

Alice Bitcoin Ownership Transfer Bob Blockchain ① Unlock Public Key with Private Key

Slide 11

Slide 11 text

Alice Bob Blockchain ② Lock with Bob’s Public Key Bitcoin Ownership Transfer

Slide 12

Slide 12 text

Alice Bob Blockchain Only Bob can Unlock Bob is the New Owner Bitcoin Ownership Transfer

Slide 13

Slide 13 text

Bitcoin Transactions Bob Alice Transaction A 0.3 BTC Transaction B 0.1 BTC Transaction A Input FROM Previous Transaction: #0 Alice 1.0 BTC Output Output #0: Bob 0.3 BTC Output #1: Alice 0.6995 BTC Fee: 0.0005 BTC 1.0 BTC Transaction B Input FROM Transaction A: #0: Bob 0.3 BTC Output Output #0: Carol 0.1 BTC Output #1: Bob 0.1995 BTC Fee: 0.0005 BTC Miner 0.0005 BTC 0.6995 BTC 0.0005 BTC 0.1995 BTC Carol 0.3 BTC Miner

Slide 14

Slide 14 text

Bloc Block Block Transactions and Blockchain Transaction A Input FROM Previous Transaction: #0 Alice 1.0 BTC Output Output #0: Bob 0.3 BTC Output #1: Alice 0.6995 BTC Fee: 0.0005 BTC Transaction B Transaction C Transaction Transaction Transac Transac Prev Hash Nonce Prev Hash Nonce Prev Hash

Slide 15

Slide 15 text

Private Key is a Proof of Ownership Wallet

Slide 16

Slide 16 text

Key Takeaways So Far Holds Private Keys NOT Bitcoin Wallet Stores Transaction History Bitcoin Blockchain Proves Bitcoin Ownership and allows its transfer Private Key

Slide 17

Slide 17 text

“Your keys, your bitcoin” “Not your keys? Not your bitcoin” Andreas Antonopoulos

Slide 18

Slide 18 text

Why a Cryptocurrency Wallet? Why Now? 1990年代にインターネットが情報を民主化したように 今、暗号通貨とブロックチェーンが価値の民主化を実現しようとしています ブロックチェーンにとってウォレットとは インターネットにとってのブラウザのようなもの

Slide 19

Slide 19 text

暗号通貨、ブロックチェーン、ウォレット まとめ 不正に改ざんができない形で記録(お金の流れ)が公開されている! 誰でも解析できる 例えば アンチマネーロンダリング技術 データサイエンス!

Slide 20

Slide 20 text

ウォレット周りの課題

Slide 21

Slide 21 text

Types of Wallets Log-in Wallets Client Wallets Hardware Wallets

Slide 22

Slide 22 text

Q1. Who Owns Private Keys? Log-in Wallets Client Wallets Hardware Wallets Wallet Providers YOU YOU

Slide 23

Slide 23 text

Q2. Private Keys Stored ONLINE or OFFLINE? Log-in Wallets Client Wallets Hardware Wallets

Slide 24

Slide 24 text

HACKED “4 million BTC are lost and 2 million BTC are stolen” ccn.com, JULY 04, 2018

Slide 25

Slide 25 text

Q2. Private Keys Stored ONLINE or OFFLINE? Log-in Wallets Client Wallets Hardware Wallets Wallet Providers YOU YOU Partially ONLINE ONLINE OFFLINE

Slide 26

Slide 26 text

既存のハードウェアウォレット スマホとBluetooth接続 PCとUSBケーブル接続

Slide 27

Slide 27 text

アプリ 全体像 ウォレット事業者サーバー インターネット バックアップ ウォレット APIサーバー REST API / JSON-RPC Stratum protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン USBケーブル/Bluetooth

Slide 28

Slide 28 text

アプリ トランザクションの流れ ウォレット事業者サーバー インターネット バックアップ ウォレット APIサーバー REST API / JSON-RPC Stratum protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン ①トランザクション  データ作成 ②トランザクション  データ送信 ③電子署名 ④署名済み  トランザクション  データ送信 ⑤署名済みトランザクション  ブロードキャスト

Slide 29

Slide 29 text

アプリ 全体像 ウォレット事業者サーバー インターネット バックアップ ウォレット APIサーバー REST API / JSON-RPC Stratum protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン USBケーブル/Bluetooth 1 2 3

Slide 30

Slide 30 text

1.ハードウェア 1

Slide 31

Slide 31 text

1.ハードウェア - 構成 主な機能 秘密鍵の保管 + 秘密鍵による電子署名 メモリ(無揮発性) ・秘密鍵を保管する CPU ・秘密鍵をつくる ・秘密鍵の束を管理する(ウォレット機能) ・秘密鍵を使って電子署名する

Slide 32

Slide 32 text

1.ハードウェア - Hierarchy Deterministic Wallet Master Seedから階層的に、決定的に鍵を生成 Hardware Wallet PC / Smartphone インデックスにより 署名用の鍵を特定できる

Slide 33

Slide 33 text

1.ハードウェア - TREZOR メモリとCPUが一緒になったマイコンを利用 仕様 [6] ・マイコン STM32F205RET6  ARM Cortex-M3 (32bit)  Flash 512kb  SRAM 128kb  Random Number Generator 特徴 ・OSが動かないほどコンパクトだ からハックされにくい ・マイコンの中で秘密鍵の管理、 電子署名を完結する

Slide 34

Slide 34 text

1.ハードウェア - Ledger Nano S セキュアマイコンを利用 仕様 [6] ・マイコン STM32F042K ・セキュアマイコン ST31H320 特徴 ・デュアルチップ構成 ・耐タンパー性がある [https://hodlitbro.com.au/2017/12/28/ledger-nano-s-protect-your-coins-with-a-hardware-wallet/]

Slide 35

Slide 35 text

1.ハードウェア - Common Criteria (CC) セキュアマイコンはCommon Criteria基準で評価されている ・コンピュータセキュリティのための国際規格 ISO/IEC 15408 ・セキュリティ評価の枠組みが提供されている ・CCは要求仕様を示し、開発、評価のプロセスが厳格な方式で行われたという保証を提 供する ST31 (Ledger Nano Sの採用するチップ) について ・評価保証レベル (EAL, Evaluation Assurance Level) 5+ ・EALはCCのうち、製品の開発過程全般をカバーする保証要件のパッケージ ・Ledgerによるファームウェア実装部のセキュリティが評価されているわけではない [https://www.st.com/en/secure-mcus/secure-hardware-platforms.html]

Slide 36

Slide 36 text

ハードウェア - 信じて良いのか問題 - 1

Slide 37

Slide 37 text

1.ハードウェア - 信じて良いのか問題 差し込むだけのお手軽ハック技術が存在 BadUSB ・Black Hat USA 2014にて発表された ・差し込むだけでキーログを回収できる ・ワクチンソフトで検出できない USBdriveby ・DNSを書き換える機能 ・アプリケーションにアクセスする機能 [BadUSBをやってみた, 7]

Slide 38

Slide 38 text

1.ハードウェア - 信じて良いのか問題 スパイチップ問題 2018/10/14

Slide 39

Slide 39 text

1.ハードウェア - 信じて良いのか問題 物理的ハック耐性はある? [https://medium.com/@Zero404Cool/frozen-trezor-data-remanence-attacks-de4d70c9ee8c] 2017/8/18 Frozen Trezor — Data Remanence Attacks! ・SRAMは冷やすと意外なほど長時間記憶が保持される ・18.6秒でファームウェアを書き換え、秘密鍵を取り出せた

Slide 40

Slide 40 text

1.ハードウェア - 信じて良いのか問題 サプライチェーン・ロジスティクス周辺問題 2018年11月19日 SatoshiLabsによる報告 [8] 偽物 データサイエンス!

Slide 41

Slide 41 text

1.ハードウェア - 信じて良いのか問題 Amazonで購入したら偽物が届いた!

Slide 42

Slide 42 text

バックアップ 2

Slide 43

Slide 43 text

2.バックアップ 主な機能 紙と鉛筆で秘密鍵のバックアップができる ・標準規格: BIP39 (2013年策定) ・2048ワードから12 / 24個選ばれる ・SatoshiLabsがTREZORを作る際に仕 様化を進めた ・元々のアイデアはElectrumの実装 ・TREZOR版とElectrum版には互換性が ない

Slide 44

Slide 44 text

バックアップ - 運用が辛いよ問題 - 2

Slide 45

Slide 45 text

2.バックアップ - 運用がつらいよ問題 感想「使える気がしない」 ・実際に操作、体感して頂くイベントを 実施 ・セットアップ、ニモニックをメモるだけ で一時間以上経過 データサイエンス! 秘密分散技術など

Slide 46

Slide 46 text

アプリ 3

Slide 47

Slide 47 text

3.アプリ 主な機能 UTXOを集め残高を計算する、Txの作成、検証をする 各アドレスの残高を合算する Transaction A Input FROM Previous Transaction: #0 Alice 1.0 BTC Output Output #0: Bob 0.3 BTC Output #1: Alice 0.6995 BTC Fee: 0.0005 BTC トランザクションを検証する

Slide 48

Slide 48 text

アプリ - 偽アプリ、OSS版サプライチェーン問題 - 3

Slide 49

Slide 49 text

3.アプリ - 偽アプリ問題 偽アプリは意外と存在する

Slide 50

Slide 50 text

3.アプリ - OSS版サプライチェーン問題 OSSでもサプライチェーン問題が顕在化 ・マルチシグウォレットの Copay (BitPay製, Insightを作っているところ)が狙われた ・依存しているOSSライブラリ”event-stream”がハックされた ・開発者のコンピュータでは活動せず、リリースされたアプリ上で活性化される仕組み

Slide 51

Slide 51 text

データサイエンスで解決してほしい ウォレット周辺の課題 1.サプライチェーン・ロジスティクス問題 2.鍵管理・バックアップが辛いよ問題 3.アプリ・OSS版サプライチェーン問題

Slide 52

Slide 52 text

No content

Slide 53

Slide 53 text

No content

Slide 54

Slide 54 text

No content

Slide 55

Slide 55 text

www.andgo.co.jp www.facebook.com/andgojp/ (JP) www.facebook.com/andgoinc/ (EN) @andgo_inc (JP) @AndgoInc (EN) ・新たな金融を支えるアプリをつくりたい人 ・ブロックチェーンをデータ解析したい人 ・APIバックエンドを開発したい人 Let’s Enjoy Tech-Driven Evolution

Slide 56

Slide 56 text

Appendix

Slide 57

Slide 57 text

AndGoのハードウェアウォレット 「誰でも簡単に安全に秘密鍵を管理できる」を届ける ➔ セキュリティ・ファースト ◆ 多層のセキュリティ対策 ◆ 直感的UIでミスの芽を摘む ◆ 大画面で取引詳細確認も容易 ➔ 使いたい時すぐ使える利便性 ◆ スマホにワイヤレス接続 ◆ パスワード/PIN入力も不要 ➔ 日本語UI、日本語サポート

Slide 58

Slide 58 text

ウォレットのバックアップと復元 24英単語を紙にメモ

Slide 59

Slide 59 text

暗号通貨の受け取り アドレス表示またはQRコード

Slide 60

Slide 60 text

暗号通貨の送金 アドレスを入力(コピペ)