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

88ee00f254d3c4ba8b2bcac469ee155a?s=47 Toshihide Hara
February 13, 2019
51

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

88ee00f254d3c4ba8b2bcac469ee155a?s=128

Toshihide Hara

February 13, 2019
Tweet

Transcript

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

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

    と思われるものを紹介します。
  3. リアルな課題を解決しよう!

  4. 株式会社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で解析!
  5. AndGoとは    AndGo 社名の由来 暗号技術を持つ会社、秘匿暗号の研究開発をする会社 だからAndGo (アンゴー = 暗号) Excite The

    World with Technology 技術で世界をワクワクさせる 技術が好きでたまらない 技術開発が楽しくて仕方がないエンジニアが創った会社 3期
  6. フィンテック系アクセラレータ 第3期プログラム採択

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

  8. 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
  9. Alice Bob Blockchain Blockchain and Keys Private Keys Private Keys

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

    with Private Key
  11. Alice Bob Blockchain ② Lock with Bob’s Public Key Bitcoin

    Ownership Transfer
  12. Alice Bob Blockchain Only Bob can Unlock Bob is the

    New Owner Bitcoin Ownership Transfer
  13. 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
  14. 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
  15. Private Key is a Proof of Ownership Wallet

  16. Key Takeaways So Far Holds Private Keys NOT Bitcoin Wallet

    Stores Transaction History Bitcoin Blockchain Proves Bitcoin Ownership and allows its transfer Private Key
  17. “Your keys, your bitcoin” “Not your keys? Not your bitcoin”

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

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

  20. ウォレット周りの課題

  21. Types of Wallets Log-in Wallets Client Wallets Hardware Wallets

  22. Q1. Who Owns Private Keys? Log-in Wallets Client Wallets Hardware

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

    Wallets Hardware Wallets
  24. HACKED “4 million BTC are lost and 2 million BTC

    are stolen” ccn.com, JULY 04, 2018
  25. Q2. Private Keys Stored ONLINE or OFFLINE? Log-in Wallets Client

    Wallets Hardware Wallets Wallet Providers YOU YOU Partially ONLINE ONLINE OFFLINE
  26. 既存のハードウェアウォレット スマホとBluetooth接続 PCとUSBケーブル接続

  27. アプリ 全体像 ウォレット事業者サーバー インターネット バックアップ ウォレット APIサーバー REST API /

    JSON-RPC Stratum protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン USBケーブル/Bluetooth
  28. アプリ トランザクションの流れ ウォレット事業者サーバー インターネット バックアップ ウォレット APIサーバー REST API /

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

    JSON-RPC Stratum protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン USBケーブル/Bluetooth 1 2 3
  30. 1.ハードウェア 1

  31. 1.ハードウェア - 構成 主な機能 秘密鍵の保管 + 秘密鍵による電子署名 メモリ(無揮発性) ・秘密鍵を保管する CPU

    ・秘密鍵をつくる ・秘密鍵の束を管理する(ウォレット機能) ・秘密鍵を使って電子署名する
  32. 1.ハードウェア - Hierarchy Deterministic Wallet Master Seedから階層的に、決定的に鍵を生成 Hardware Wallet PC

    / Smartphone インデックスにより 署名用の鍵を特定できる
  33. 1.ハードウェア - TREZOR メモリとCPUが一緒になったマイコンを利用 仕様 [6] ・マイコン STM32F205RET6  ARM Cortex-M3

    (32bit)  Flash 512kb  SRAM 128kb  Random Number Generator 特徴 ・OSが動かないほどコンパクトだ からハックされにくい ・マイコンの中で秘密鍵の管理、 電子署名を完結する
  34. 1.ハードウェア - Ledger Nano S セキュアマイコンを利用 仕様 [6] ・マイコン STM32F042K

    ・セキュアマイコン ST31H320 特徴 ・デュアルチップ構成 ・耐タンパー性がある [https://hodlitbro.com.au/2017/12/28/ledger-nano-s-protect-your-coins-with-a-hardware-wallet/]
  35. 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]
  36. ハードウェア - 信じて良いのか問題 - 1

  37. 1.ハードウェア - 信じて良いのか問題 差し込むだけのお手軽ハック技術が存在 BadUSB ・Black Hat USA 2014にて発表された ・差し込むだけでキーログを回収できる

    ・ワクチンソフトで検出できない USBdriveby ・DNSを書き換える機能 ・アプリケーションにアクセスする機能 [BadUSBをやってみた, 7]
  38. 1.ハードウェア - 信じて良いのか問題 スパイチップ問題 2018/10/14

  39. 1.ハードウェア - 信じて良いのか問題 物理的ハック耐性はある? [https://medium.com/@Zero404Cool/frozen-trezor-data-remanence-attacks-de4d70c9ee8c] 2017/8/18 Frozen Trezor — Data Remanence Attacks!

    ・SRAMは冷やすと意外なほど長時間記憶が保持される ・18.6秒でファームウェアを書き換え、秘密鍵を取り出せた
  40. 1.ハードウェア - 信じて良いのか問題 サプライチェーン・ロジスティクス周辺問題 2018年11月19日 SatoshiLabsによる報告 [8] 偽物 データサイエンス!

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

  42. バックアップ 2

  43. 2.バックアップ 主な機能 紙と鉛筆で秘密鍵のバックアップができる ・標準規格: BIP39 (2013年策定) ・2048ワードから12 / 24個選ばれる ・SatoshiLabsがTREZORを作る際に仕

    様化を進めた ・元々のアイデアはElectrumの実装 ・TREZOR版とElectrum版には互換性が ない
  44. バックアップ - 運用が辛いよ問題 - 2

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

  46. アプリ 3

  47. 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 トランザクションを検証する
  48. アプリ - 偽アプリ、OSS版サプライチェーン問題 - 3

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

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

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

  52. None
  53. None
  54. None
  55. 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
  56. Appendix

  57. AndGoのハードウェアウォレット 「誰でも簡単に安全に秘密鍵を管理できる」を届ける ➔ セキュリティ・ファースト ◆ 多層のセキュリティ対策 ◆ 直感的UIでミスの芽を摘む ◆ 大画面で取引詳細確認も容易

    ➔ 使いたい時すぐ使える利便性 ◆ スマホにワイヤレス接続 ◆ パスワード/PIN入力も不要 ➔ 日本語UI、日本語サポート
  58. ウォレットのバックアップと復元 24英単語を紙にメモ

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

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