ハードウェアウォレットのしくみ - ブロックチェーンサービスのセキュリティを考える -

ハードウェアウォレットのしくみ - ブロックチェーンサービスのセキュリティを考える -

88ee00f254d3c4ba8b2bcac469ee155a?s=128

Toshihide Hara

November 28, 2018
Tweet

Transcript

  1. ブロックチェーンサービスのセキュリティを考える part 3【ウォレット編】 ハードウェアウォレットのしくみ

  2. 株式会社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より速い暗号化法 ・暗号化したまま比べる技術 Who is me
  3. AndGoとは    AndGo 社名の由来 暗号技術を持つ会社、秘匿暗号の研究開発をする会社 だからAndGo (アンゴー = 暗号) Excite The

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

  5. “Your keys, your bitcoin” “Not your keys? Not your bitcoin”

    - Andreas Antonopoulos -
  6. 暗号通貨を所有し安全に管理するには 1. 秘密鍵を自分で管理すること 2. 秘密鍵をオフラインで管理すること ログイン型 クライアント型 ハードウェア 高リスク 中リスク

    低リスク 秘密鍵管理 秘密鍵所有者 一部オンライン オンライン オフライン 事業者 ユーザー ユーザー ※リモートでのハッキングリスク
  7. 利用者の割合 ハードウェア ログイン型 350 万人 23万人 ※仮想通貨交換業等に関する研究会 [4]、博報堂金融マーケティングプロジェクト [5]調べを元に算出 クライアント型

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    ・SRAMは冷やすと意外なほど長時間記憶が保持される ・18.6秒でファームウェアを書き換え、秘密鍵を取り出せた
  24. 1.ハードウェア - 信じて良いのか問題 そもそも設計に穴がある問題 ・画面での中身確認なくてよいの? ・通信の暗号化に加え認証までしなくてよいの? ・ハードウェアのセキュリティ機能OFFにしちゃってよい の? [https://saleemrashid.com/2018/11/26/breaking-into-bitbox/] 攻撃を実証し、プロからの監査を受けるべきだと結論

  25. バックアップ 2

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

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

  28. 2.バックアップ - 運用がつらいよ問題 感想「使える気がしない」 ・実際に操作、体感して頂くイベントを 実施 ・セットアップ、ニモニックをメモるだけ で一時間以上経過 ・そもそも、BIP39に対するセキュリティ レベルの評価はされていない

  29. アプリ 3

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

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

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

  34. サーバーサイド 4

  35. 4.サーバーサイド 主な機能 UTXOを集める、Txをブロードキャストする ウォレット事業者サーバー APIサーバー REST API / JSON-RPC Stratum

    protocol, etc... Full Node bitcoind, geth, etc... ブロックチェーン APIサーバー ・BitPay Insight, Electrum, 独自実装など ・Nodeとアプリとの間に入り色々と面倒をみる ・AML/CFTに関するセキュリティを実装できる
  36. サーバーサイド - 中央集権的である - 4

  37. 4.サーバーサイド - 中央集権的である - ・ダウンした際の影響が大きい ・プライバシーを侵害しうる 単一障害点 SPOF になりうる

  38. “Your keys, your bitcoin” “Not your keys? Not your bitcoin”

    - Andreas Antonopoulos -
  39. 使いこなせるセキュリティ ・ユーザーが所有権を持ちつつ、運用面まで考慮したセキュリティ 向上を指向する技術発展が望ましい 方向性の案 ・一部の信用(友人、事業者)を上手く取り込んだしくみ

  40. www.andgo.co.jp www.facebook.com/andgojp/ (JP) www.facebook.com/andgoinc/ (EN) @andgo_inc (JP) @AndgoInc (EN) エンジニア、デザイナー

    募集中です! Let’s Enjoy Tech-Driven Evolution
  41. References [1] BIP - https://github.com/bitcoin/bips [2] BIP39について調べてみた - https://tech.bitbank.cc/about-bip39/ [3]

    チップハック問題 - https://www.bloomberg.com/news/features/2018-10-04/the-big-hack-how-china-used-a-tiny-chip-to-infiltrat e-america-s-top-companies [4] 金融庁仮想通貨交換業等に関する研究会 - https://www.fsa.go.jp/news/30/singi/kasoukenkyuukai.html [5] 博報堂調査 - https://www.hakuhodo.co.jp/uploads/2018/03/20180327-1.pdf [6] TREZOR - https://github.com/trezor/trezor-hw [7] BadUSBをやってみた - http://jh1lhv.hatenablog.jp/entry/2015/02/09/215102 [8] FAKE Trezor - https://blog.trezor.io/psa-non-genuine-trezor-devices-979b64e359a7
  42. Appendix

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

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

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

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