Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ビットコインのウォレットとは?(日本仮想通貨事業者協会5月度勉強会)

 ビットコインのウォレットとは?(日本仮想通貨事業者協会5月度勉強会)

日本仮想通貨事業者協会様の5月度勉強会で発表させていただいた資料です。

Masahiko Hyuga

May 25, 2017
Tweet

More Decks by Masahiko Hyuga

Other Decks in Technology

Transcript

  1. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 自己紹介 ー 略歴 東京大学理学部物理学科 ⇨ 総合文化研究科修士(物理学、熱統計力学基礎論) 2013年末にビットコインと出会い、論文や技術文書を読んだりマイニングをしたりしてい

    るうちにのめり込む。 その後、日本国内初の暗号通貨「モナーコイン」を中心に取引所、採掘プール、ウォレッ ト、ECシステムなど多数のサービス開発を行う。 現在は合同会社ジャノムの代表として、ビットコイン関連の自社サービス運営・研究開発 ・教育・技術コンサルティングなどを行っている。
  2. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 自己紹介 ー 最近の活動 ビットコイン支払専用のECサービス「コインギフト」の運営。ハードウェアウォレット 「KeepKey」「TREZOR」、各種ギフト券などを販売。 株式会社セレス様と共同で各種ビットコイン関連サービスを開発中。 ブロックチェーン大学校(株)講師。

    技術系の勉強会「暗号通貨勉強会/読書会」を設立・運営(月二回開催)。 「Fressets(フレセッツ)株式会社」設立(準備中) 。事業者向けビットコインウォレットソリュー ションの提供、最新技術の研究開発(詳しくは後ほど)。 CoinTip (コインチップ) Twitter 上でビットコインを送金できるサービス。 有名人に小額のチップを送ったり、友達との割り 勘の支払いなどに利用できる。 Sobit (ソビット) プリペイドチャージ式携帯電話にビットコインでチャー ジできるサービス。世界 137ヶ国に対応し、金融イン フラが未整備な途上国などに対しても実質的に送金 が行えるようになる。 ※2017年7月リリース予定。※ロゴは暫定。
  3. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 ウォレット動物園 (Bitcoin Wallet Zoo) • フルノード/SPV ウォレット

    • ウェブ ウォレット • ブレイン ウォレット • ペーパー/物理 ウォレット • ハードウェア ウォレット • シングルシグ/マルチシグ ウォ レット(アドレス) • PC用 ウォレット • Android, iPhone (スマホ) 用 ウォ レット • 取引所 ウォレット • 決定性/非決定性 ウォレット • ホット/コールド ウォレット このように、一口で「ウォレット」といっても様々な種類のものが存在する。 ⇨ これらの違いを説明できますか?
  4. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 そもそもウォレットとは何か? Mastering Bitcoin(日本語版) によると……「ウォレットは秘密鍵の容器 (p.92)」 厳密な定義はありませんが、一般的にはおおむね、以下のような機能がセットとなった システムを指します。

    • 秘密鍵・公開鍵(アドレス)の管理 • トランザクションおよび電子署名の作成 • ブロックチェーン上のデータの参照・書込 それぞれの機能をどのように実装するのか(例:サーバ側/クライアント側のどちらで処 理するか、秘密鍵をどこに保管するか、等)によって、前のスライドのように実に多種多 様なウォレットの種類が存在します。
  5. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 ホット/コールド インターネットに直接接続されているかによる分類。 コールドウォレット インターネットから隔離された環境に秘密鍵を保 管する方式。安全性は極めて高いが、送金する ためには人の手を介さなければならず、即時送 金も行えないため利便性は低い。

    ホットウォレット インターネットに直接接続されており、ユーザから の要求に従いすぐさま送金が行える方式。ただ し、ウィルスやハッキングによりコインが盗まれて しまう危険性がある。 小さな額のコインはホットウォレットで管理し、大きな額のコインはコールドウォレットで厳 重に保管するといった使い分けが必要。
  6. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 シングルシグ/マルチシグ 送金に必要な秘密鍵(電子署名)の数が一個なのか複数個なのかによる分類。 マルチシグアドレス 各アドレスに複数の秘密鍵が紐付いている。 送金の際には紐付いている秘密鍵の内、所定数 以上の電子署名を作ればよい。 利便性は低いが、送金権限を複数人に分散させ

    て持たせることができるため、事業者など組織体 が管理する際に利用されることが多い。 シングルシグアドレス 一般的に用いられている方式で、各アドレスには 一つの秘密鍵が紐付いている。 送金の際には紐付いている秘密鍵で電子署名を ひとつだけ作ればよい。このアドレス方式にしか 対応していないウォレットも多い。 利便性の高いシングルシグを取るか、安全性の高いマルチシグを取るのかは、管理す るコイン数や運用方針・体制に合わせて深く検討する必要がある。
  7. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 ブレイン/ペーパー/物理/ハードウェア 秘密鍵をどのような物理メディアで保管するかによる分類。 ブレインウォレット 秘密鍵を人間の脳内(ブレイン)に 記憶することで保管する方式。 ランダムな文字列ではなく、覚え やすい文章や単語の羅列などで

    表現することが多い。 例:OfflineWallet.info ペーパー/物理ウォレット 秘密鍵を紙や金属板などの物理 媒体に保管する方式。 物理的に実体のあるものの受け 渡しでコインのやり取りができるた め「ビットコイン兌換貨幣」のように 利用できる。 例:悟コイン、Cryptosteel ハードウェアウォレット 秘密鍵の保管と電子署名の作成 機能がセットになったもの。 物理ウォレットの持つ安全性を備 えながらも、高い利便性を持って いるため、ビットコイナーの必需品 といえる。 例:TREZOR、KeepKey ハッキングやコンピュータウィルスからビットコインを守るためには、上記のように秘密鍵 の保管場所を工夫することが肝要。
  8. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 フルノード/SPV/中央集権型 ブロックチェーンに書き込まれたデータの正当性の検証を、ウォレット側でどのように行 うかによる分類。 フルノード 全ブロックチェーンをダウンロード し、すべてのデータを検証する方 式。

    最も安全性が高い。 実装例:Bitcoin Core(公式クライ アント) SPV (Simplified Payment Verification) ブロックヘッダのみをダウンロード し、正常に PoW がなされたことの みを検証する方式。 安全性は中程度。 実装例:Electrum、Bitcoin Wallet (Android)、breadwallet 中央集権型 第三者の提供するブロックエクス プローラなどを参照し、データの 検証は行わない方式。 第三者サービスから提供される データに不正がないことを 信頼す る必要がある。 実装例:Copay、Mycelium 安全性の低い方式でも、コインを盗まれてしまうような最悪の事態は発生しにくいため、 そこまで神経質になる必要はない。
  9. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 決定性/非決定性ウォレット 新しい秘密鍵(およびアドレス)をどのように作るかによる分類。 決定性 (Determinisitic) 初期セットアップ時に生成した乱数から、決定論 的に秘密鍵を生成する方式。階層的決定性 (HD)

    ウォレットと呼ばれる方式が BIP 32 として 採択されており、こちらの仕様の利用が推奨され ている。 非決定性 (Non-Deterministic) 乱数を用いて非決定論的に秘密鍵を生成する方 式。定期的なバックアップが必要となること、良質 な乱数エントロピーの確保に気をつけなければい けないことなどから、廃れつつある。 従来の非決定性ウォレットから、階層的決定性 (HD) ウォレットを用いた決定性ウォレッ トへの移行が進んでいる。
  10. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 Bitcoin Core いわゆる「公式版」のクライアント。 • フルノード • ホットウォレット(ただし、ウォッチオンリーアドレスの仕組みを用いることでコールド

    ウォレットの残高・取引履歴の監視は可能) • 決定性(ただし、以前のバージョンでは非決定性) • シングルシグ(ただし、API 経由ではマルチシグも利用可能) Satoshi Nakamoto 氏が作成したコードがベースになっており、これ自体がリファレンス 実装かつ仕様書となっている。フルノードの検証、ウォレット、マイニング、ピア間通信な ど、ビットコインの必要最低限の機能がすべて揃っている。
  11. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 Mycelium Android 用ウォレット。 • 中央集権型検証 • 決定性

    • ホットウォレット/ハードウェアウォレット(TREZOR や Ledger など、いくつかの サードパーティ製のハードウェアウォレットと連携可能) • シングルシグ HD ウォレットを用いており、万が一スマホが故障したり紛失してしまったりした場合にも マスター秘密鍵からウォレットを復元することができる。トランザクション情報の取得は中 央サーバに頼っているため、送金履歴が改ざんされるリスクが存在するが、コインが盗 まれてしまうことはない。
  12. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 breadwallet iPhone 向けの SPV ウォレット。 • SPV

    • 決定性 • ホットウォレット SPV を用いているのが特徴。起動時にブロックヘッダをダウンロードし検証する必要が あるため、アプリ立ち上げ時に少し時間がかかってしまうが、取引履歴が改ざんされる 可能性は少ないため比較的安全。
  13. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 BitGo 「事業者向け」を謳うマルチシグウォレット。 • マルチシグ(三つの秘密鍵で構成されており、BitGo サーバ・ユーザのホットウォ レット・ユーザのバックアップの三箇所に保管される) •

    中央集権型検証 • ホットとコールドの中間(万が一ユーザのホットウォレットの秘密鍵が漏洩しても、不 審なトランザクションを検知したら BitGo 側で差止めする) API を用いて連携をすることを前提としている。簡単にマルチシグアドレスを利用でき安 全性をアピールできるため、多くのビットコイン事業者で利用されている。しかしながら、 上述の「不審なトランザクションの検知機能」の有効性が不明瞭であり、どこまでマルチ シグの意味があるのかは疑問が残る。
  14. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 一般ユーザ向けビットコイン管理方法 普段使い用のホットと、ハードウェアウォレットを組み合わせて使いましょう。 日向の最近の管理方法:Android 向けウォレット「Mycelium」に普段使い用に少額、 ハードウェアウォレット「TREZOR」「Ledger Nano S」に残りを全額。リカバリーフレーズ

    は Cryptosteel にて保管。 老舗の 「TREZOR」 デザインが秀逸な 「KeepKey」 オルトコインが豊富な 「Ledger Nano S」 当社では、各種ハードウェアウォレットの輸入販売を行っております。オリジナル日本語 マニュアルの提供や導入支援なども行っております。
  15. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 事業者向けビットコイン管理方法 「ホットウォレット + マルチシグコールドウォレット」の組み合わせで構築しましょう。 • ホットウォレット ……

    フルノード(公式クライアント)は同期に時間がかかり、またス ケールも容易ではないため、SPV ノードや、中央集権型検証を用いてノード機能と ウォレット機能を分離する。 • コールドウォレット …… マルチシグ構成とし、秘密鍵は代表や監査役、顧問弁護士 など複数の権限者に分散させてもたせる。秘密鍵はペーパーウォレットないしハー ドウェアウォレットで管理。 コールドウォレットやマルチシグウォレットを利用しても、正しく運用しないとあまり意味が なかったり、逆に安全性が下がってしまうこともあります。
  16. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 事業者が大量のビットコインを管理する際の注意点 コールドウォレットの電子署名環境 コールドウォレットから出金する際の電子署名を行うPCがオ ンライン環境だと、秘密鍵がインターネットに繋がった状態に なってしまうので意味がありません!必ず完全オフライン環 境の電子署名環境を構築しましょう。生トランザクションや電 子署名などのデータは

    QR コードに印刷するなどして持ち運 びましょう。 入金用コールドウォレット ビットコインでは仕組み上、入金額に制限を設けることがで きませんので、誰かが大金を預け入れることで一時的に大 きな金額のビットコインがホットウォレット内に滞留してしま い、このタイミングでハッキングに遭うと被害が増大してしま います。これを防ぐために入金用ウォレットでもコールドウォ レットを利用することを検討しましょう。(※ただし運用コストと のトレードオフとなります) マルチシグの参加者 役員・従業員が結託してコインを持ち逃げできないよう、マル チシグの秘密鍵は複数の権限者に分散させて持ちましょう。 顧問弁護士や会計士など、外部機関の人間を混ぜることな ども検討しましょう。 秘密鍵の保管場所 金庫に入れるのはもちろんですが、火災や水害により金庫 ごと滅失してしまう可能性がありますので、物理的に異なる 場所に保管できないか検討しましょう。 パスフレーズによる保護 HD ウォレットの仕様では、生の秘密鍵に追加で任意のパス フレーズを設定できます。万が一秘密鍵が盗まれてしまった 場合の追加の保険として、この利用を検討しましょう。
  17. ビットコインのウォレットとは? 2017年5月25日(木)於:日本仮想通貨事業者協会 5月度勉強会 本日のまとめ • 一口に「ウォレット」といっても様々なタイプの方式が存在する ◦ 例:ホット/コールド、フルノード/ SPV/中央集権型検証、ペーパー/物理/ブレイン •

    一番重要なのは「秘密鍵がどこに保管されているか?」ということ ◦ 自分自身が秘密鍵のアクセス権を持っているかどうかを必ず確認しましょう • ウォレットにはそれぞれメリット・デメリット(e.g. 利便性 vs 安全性のトレードオフ)が あるため、必要に応じて複数の種類のウォレットを使い分けて運用を行う ◦ 構成例:スマホのホットウォレット + ハードウェアウォレット