ビットコインを失う21の方法
失うのは比較的簡単ってお話。以下、その方法です。
※内容更新に伴い記事全体を公開しました。記事買ってくれた方ごめんなさい。(2024.11.30)
~ 取引所 ~
1. 偽サイトへのログイン情報入力
ホットウォレットを利用している場合、本物そっくりの偽サイトへ誘導されてログイン情報(ID、パスワード)を入力すると、アカウントが乗っ取られてビットコインが盗まれます。
対策:多要素認証を有効にし、メールや SNS のリンクを安易にクリックしないようにしましょう。QRコードにも注意してください。
2. ハッキング
ハッカーが取引所のセキュリティを突破してビットコインを奪う可能性があります。日本では利用者財産をコールドウォレット等で分別管理することが暗号資産交換業者に義務づけられていますので海外の取引所よりも安全性は高いと思われますが、ひとたび発生したら利用者には下記のような不利益が生じることが予想されます。(他の要因による取引所の破産の場合も同様)
- 全額補償されるとは限らない
- 補償までに長い時間を要する可能性がある
- 補償が現金でおこなわれる可能性がある(含み益がある場合は強制的に利益確定となり意図しない課税が生じる)
対策:複数の取引所へ資産を分散しましょう。自己保管も選択肢の一つです。
3. 政府による取引所の暗号資産の差し押さえ
政府によって差し押さえや預金封鎖がおこなわれる可能性があります。
対策:政府を信用できない方は自己保管するしかありませんが、総合的に考えると取引所の方がリスクは低いように思われます。
~ 自己保管 ~
以下のNo.4~8で、これまでの累計発行量約1978万btcのうち実に2割以上が永久に失われたと言われています。気をつけましょう。
4. 相続の失敗
突然の死により、ビットコインが相続されない場合や相続人がいない場合、ビットコインは失われます。また、ビットコインの知識のない人が故人のシードフレーズをネットに公開してしまうケースもあります。
対策:万一の場合を考えて相続の準備をしておきましょう(病気などで「突然」でない場合はビットコインを取引所に移動して自己保管を終了しておくのがよさそうです)。被相続人は、親しい人以外にはシードフレーズを開示せず、自分でウォレットの操作を理解して他のウォレットに移動できるようにしましょう。
5. シードフレーズの紛失
シードフレーズを記録した媒体やPC/スマホを紛失すると、ビットコインは失われます。
対策:複数箇所にバックアップを保管しましょう。
6. パスフレーズの忘却
シードフレーズが保管されていても、ウォレット作成時に追加設定したパスフレーズを忘れるとビットコインはアクセス不能になります。
対策:シードフレーズやシードフレーズ(とパスフレーズから)生成されたシードはウォレットに保存されますが、パスフレーズは通常保存されません。絶対に忘れない自信のある文字列を設定しましょう。
7. ハードウェアウォレットの PIN 忘却
シードフレーズが保管されていても、ハードウェアウォレットの PIN を忘れるとビットコインはアクセス不能になります※1。
対策:シードフレーズのバックアップがあれば、別の手段で資産にアクセスできます。複数箇所にバックアップ(紙や金属板などに記録)を保存しておきましょう。
8. ハードウェアウォレットの故障
ハードウェアウォレットが故障するとビットコインはアクセス不能になります。
対策:7と同様です。
9. マルウェアによるシードフレーズ盗難
マルウェア感染や不正なブラウザ拡張モジュールのインストールによって、PC/スマホ内のシードフレーズが盗まれたり、送金先のアドレスを書き換えられたりする可能性があります。
対策:シードフレーズをハードウェアウォレット内で生成・保管し、PC/スマホのウォレットには拡張公開鍵のみを格納しましょう。送金時はオフラインで署名を行うため、PSBT(部分的に署名されたビットコイントランザクション)に対応するウォレットを選びます。また署名時のHWW画面および署名後の(ソフトウェアウォレット上の)最終確認画面で送金先のアドレスをよく確認しましょう。
10. 不正アプリへのシードフレーズ入力による盗難
オンラインに接続された PC やスマホのアプリに不用意にシードフレーズを入力すると、シードフレーズが流出する恐れがあります。
対策:OSS のウォレット※2 を利用し、大金の場合は No.9 の対策を行いましょう。
知識不足により、不用意にネット上に自らシードフレーズを公開してしまう方がいます。実際、シードフレーズの情報を含むQRコードが写りこんだ写真をSNSに上げた方がいました(QRコードの一部分を隠しておけば問題ないとの思い込み)。一見、読み取り不能にみえる下のようなQRコードでも手作業で解析することにより内容を解読することが可能です(参考:[MMA 2015] QR Code Recovery)。シードフレーズの取り扱いには細心の注意を払いましょう。
11. 不正ツールによるシードフレーズ生成
悪意のある開発者が作成したツールを使ってシードフレーズを生成すると、一見ランダムなシードに見えてもエントロピーが足りない可能性があります。これにより開発者が秘密鍵を推測してビットコインを奪うことがあります※3。
対策:OSS のファームウェアを搭載するハードウェアウォレットまたは OSS のソフトウェアウォレットを利用してシードフレーズを生成しましょう。
12. 低品質な乱数生成器によるシードフレーズ生成
暗号用でない疑似乱数発生関数を使用する古いソフトウェアでシードフレーズを生成すると、ビットコインが奪われる可能性があります。
対策:ハードウェア乱数発生器を内蔵するか(サイコロを振るなどして)自分で生成したエントロピーをシードフレーズに変換する機能を持つハードウェアウォレットを使うのが理想的です。
13. ハードウェアウォレットのファームウェア改変(≈11)
正規でない販売ルートで入手したハードウェアウォレットはファームウェアが書き換えられている可能性があります。↓こんな話がありました 。
最近はオフラインのハードウェアウォレットからシードフレーズそのものを流出させる Dark Skippy と呼ばれる手法が話題になっています。
対策:SeedSigner や krux といった DIY型かつステートレス(stateless)なハードウェアウォレットの人気が高まりつつあります。DIY なので安全性が確認されたファームウェアや OS を自分でインストールできます。ステートレスとは、出力結果が内部の情報を利用せず外部からの入力情報のみに基づいて決まるという意味です。通常のハードウェアウォレットが持つ、「シードフレーズの生成」、「シードフレーズの保管」、「トランザクションへの署名」の3つの主要な機能のうち「シードフレーズの保管」の機能を省略しており内部に情報を保持しないためより安全です。ウォレットというよりは署名装置(signing device)と呼ぶ方がふさわしいかも知れません。DIY型のハードウェアウォレットを持っていない場合の一般的な対策は、製造元の異なる複数のハードウェアウォレットの利用した 2-of-3 や 3-of-5 のマルチシグウォレットの使用です。それらが同時に攻撃を受ける可能性は低いと考えられるためです。
14. 強盗によるシードフレーズ盗難
(脅迫、拷問など)強盗に遭った際、命を守るためにシードフレーズを教える必要があります。
対策:少額のビットコインを格納したダミーウォレットを用意しましょう。
15. ダスト化
手数料の上昇に伴い少額のビットコインは移動できなくなります。
対策:手数料が安い時期に少額のUTXOを統合しておきましょう(但し、多数のトランザクションを結びつけるため、プライバシー面でデメリットあり)。ドルコスト平均法などでの積み立ては取引所内で実施し、オンチェーンに移動するのはある程度の金額が貯まってからにすべきです。
16. 量子コンピューティングの発展による攻撃
将来、量子コンピュータによって秘密鍵が破られる可能性があります。
対策:個人でできる対策はありませんが、ビットコインの仕様も量子耐性を持つ暗号技術の発展に合わせて進化してゆくと考えられます。
~ 共通(取引所、自己保管) ~
17. 誤送金
送金先アドレスを間違った場合(他人や持ち主のいないアドレスに送金)や異なる仮想通貨のアドレスに送金(BTCを他人の BCH/LTC などのアドレスに送付など)した場合は、取り戻すことが困難です。
対策:送金前にアドレスの先頭・中間・末尾を何度も確認し、大金を送金する前には少額でテスト送金を行いましょう。
18. 手数料の設定ミス
多額の手数料を支払ってしまうことがあります。
対策:送金時に手数料の額が適切かよく確認しましょう。
19. そもそもビットコインを所有していない
偽ウォレットアプリに表示されたビットコイン残高を自分のものと勘違いさせる詐欺です。拡張公開鍵で作成された参照専用のウォレットを自分のものと思い込ませられるケースも多いようです。
対策:ビットコインについて勉強しましょう。
20. Satoshi Nakamotoのアドレスからの資産移動による暴落
ビットコインの発明者である Satoshi Nakamoto※4 のアドレスから突然資産が移動されると、市場が混乱し、ビットコインの価格が急落する可能性があります。(貴方が保有するビットコインの数量が変わる訳ではありませんが価値は大幅に失われます。)
対策:リスク分散のため、資産の一部を他の暗号資産や伝統的な資産に分散しましょう。
21. その他
他にもきっとある筈(戦争でインターネットが一定期間分断された後に復旧しブロックチェーンの再編成が発生する、など)
対策:平和な世の中の実現に向けて努力しましょう。
※1 ハードウェアウォレットの中には PIN を一定回数以上間違えると自ら文鎮化するものがあります。
※2 こちらのサイトが参考になります。例え OSS でも公開されているバイナファイルがソースコードからビルドした結果と一致しない例があるようですので注意しましょう。
※3 シードフレーズ生成以降ずっとオフライン状態であっても奪われます。いつ奪われるか分からないのも怖いです(今日まで大丈夫だったからといって明日大丈夫とは限りません)。これはNo.12も同様です。
※4 全ビットコインのおよそ5%にあたる約 110万btc を保有していると推定されています。
取り戻せるケース
・誤送金
BTCを 自分の BCH/LTC などのアドレスに送付した場合は送付先のウォレットのシードフレーズでビットコインのウォレットを作成することで取り戻すことが可能です。
・特殊な導出パスを採用するウォレットアプリの終息
アプリによっては特殊な導出パス(derivation path)を採用しているものがあります。そうしたアプリが利用できなくなった場合、シードフレーズを他のウォレットアプリに移行しても資産が見つからず失ってしまったと思われるかも知れません。このような場合でも、ビットコインの知識が豊富な人であれば、導出パスを指定可能なアプリを使ってその資産を探し当てられる可能性があります。
失わないためのベストプラクティス
- ビットコインを失う原因のほとんどがシードフレーズや秘密鍵の自己保管に関連していますので、以下のいずれかに該当する方(高齢かつ相続人が該当する場合も)は暗号資産交換業者の取引所を利用するのが無難です。多要素認証は必ず有効にしましょう
- 取引所や政府を信用している(口座凍結や預金封鎖は起こり得ない)、かつ取引所がハッキングを受ける可能性は低いと考えている。そして、万一ハッキングを受けた場合に全額補償されなかったり現金ベース(強制利益確定)であっても許容できる
- ビットコインの仕組み(ブロックチェーンに何が記録されているか、など)を理解していない
- 英語が苦手(セルフ・カストディに関する知識や情報の取得が困難) - 資産を分散する(複数の取引所、複数のノンカストディアルウォレット、同一ウォレットの複数のアドレス、伝統的資産、以上の組合わせ)
- ビットコインの仕組みを勉強する
以下は自己保管を選択する場合に適用します。
- シードフレーズのバックアップを取得し複数箇所に保管する(「複数箇所」は「自宅」と「実家」や「自宅」と「貸金庫」などでなくても、自宅の「家屋」と「車」とかでも可)。また複数箇所への保管であれば金属板は不要で紙の記録で十分。盗難の恐れがある場合は金庫に入れる。ちなみに私見ですがハードウェアウォレットは長期保管向きではないと思っています。(参考:バックアップの 3-2-1ルール)
- 金額規模に合わせた対策をおこなう。日常使い用(小額)であればホットウォレットでも構わない※5。一方、財産(高額)の保管にはそれを守るための対策が必要であり、高額であればあるほど厳重にすべきなのは法定通貨(円)の場合と同じ。下記を複数組み合わせるほど安全(ただし配偶者や子孫への継承が困難になる)
- 保管用にマルチシグ(multisig)のウォレットを利用する(シードフレーズのバックアップがある前提で 2-of-2)
- シードフレーズ作成の元となるエントロピー生成に乱数発生器を利用しない(自分でサイコロなどを振る)。あるいは最低でもハードウェア乱数発生器を用いる
- シードフレーズをオフラインで生成する。そのためにハードウェアウォレット(または署名装置)を用いる。市販のハードウェアウォレットは高額でなかなか手が出ないという方には、krux のandroid版(使わなくなった古いスマホの活用)や TailsOS(USBフラッシュメモリから起動するセキュアな Linux OS)と Electrum/Sparrow Wallet の組合わせがお薦め※6
- シードフレーズの利用(トランザクションへの署名)をオフラインでおこなう。そのためにハードウェアウォレット(または署名装置)と PSBT に対応する信頼性の高いOSSのソフトウェアウォレット※7 を併用する 。残高確認には参照専用のウォレットを使用する。オンラインでの利用が前提となるためシードフレーズを格納せず、拡張公開鍵をウォレットにインポートすることにより作成する
- PC上で動作するソフトウェアウォレットを利用する場合は、専用PCを用意して必要時以外はオフライン状態にしておく。あるいは前述の TailsOS を利用する
- DIY型のハードウェアウォレット(署名装置)を利用する
- DIY型でないハードウェアウォレットは正規店から購入する。マルチシグの場合はシード毎に製造元が異なるものを使用する
- (BIP39の)パスフレーズを設定する。パスフレーズには何年経っても忘れない自信のある文字列を選択する
- パスフレーズに日本語を使用する(注意点:対応しているウォレットが少ない(特にハードウェアウォレット※8))
- 日本語版のシードフレーズを使用する(注意点:対応しているウォレットが非常に少ない)
- パスフレーズを長くする(7文字以上を推奨)
- ビットコイン専用(アルトコイン非対応)のウォレットを使用する
- アドレスの使い回しをしない(1度限りの使い捨てにする)
- 資産整理の目的などで自身の別アドレスへ大金を送金する際は、シードフレーズとパスレーズの組合わせから(BIP32で)導かれるアドレスが一致するか複数のツールで検証する
- ダミーウォレットを作成して少額のビットコインを保管する。ダミーウォレットはパスフレーズを変えるだけで簡単に作成できる - 過去に一度でもオンラインで扱った※9 ことのあるシードフレーズは危険性を否めないのでそのウォレットを廃棄して別のウォレットに移行する
※5 リスクと利便性の兼ね合いで、個人的には5万円以下ならスマホのホットウォレット、100万円以下なら スマホの Nunchuck と Coinkite社の Tapsigner(カード型HWW、通常のHWWと異なり署名対象の送金先アドレスをHWW本体では確認できないのが弱点、メリットは嵩張らないことと自然故障に強いこと)の組合せか、PCの Sparrow Wallet 又は Electrum と Satochip(同じくカード型HWW)の組合わせが良さそうと思っています(Satochipは現状スマホのウォレットとの組合わせでは利用できませんが、スマホ用ウォレットとの連携も予定されているようです。)。ちなみに Satochipは同じ会社のSeedkeeperという製品との組合わせで利便性が倍増します。
※6 TailsOSへの Sparrow Wallet のインストールは こちら を参照。
※7 PC用では Sparrow Wallet の人気・評価が頭1つ飛び抜けている気がします。スマホ用は BlueWallet の人気が高いですが、マルチシグの場合は Nunchuck の方がよさそうです。
※8 「QRコードを利用したパスフレーズ入力」に対応する Seedsigner のSDカードイメージを作成してみました。日本語のパスフレーズを入力することが出来ます(キーボード入力で unicode escape を使用することも可能)。長い英文のパスフレーズを入力する場合にも便利だと思います。ここに置いておきます。
kruxはもともとQRコードからパスフレーズを読み込む機能があり文字化けするものの日本語入力可能です(ただしBIP-39の仕様に沿うようあらかじめNFKDでNormalizeしておく必要あり)。
※9 インターネットに繋がったPC上のアプリ/ウェブブラウザへの入力やクラウドストレージへのバックアップも含みます。大金の場合は例えそのシードフレーズが暗号化されていたとしても NG です。
コールドウォレットのタイプと安全度
私が安全と思う順に個人用のコールドウォレットのタイプを並べてみました。1~4、9~13、25 の日本語ワードリストのマルチシグに対応するウォレットはまだ存在しないかも知れません。 私はビットコインを少量しか保有していませんが、使っているウォレットは 7, 21, 24, 28(28はスマホ上のホットウォレット)と取引所 です。
- 日本語のシードフレーズと2つの日本語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの日本語のパスフレーズおよび1つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの日本語のパスフレーズおよび1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの日本語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと2つの日本語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの日本語のパスフレーズおよび1つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの日本語のパスフレーズおよび1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの日本語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと2つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの長い英語のパスフレーズおよび1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと2つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと2つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの長い英語のパスフレーズおよび1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの長い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと2つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 英語のシードフレーズと1つの短い英語のパスフレーズを使用した 2-of-2 マルチシグ
- 日本語のシードフレーズと日本語のパスフレーズを使用したシングルシグ
- 日本語のシードフレーズと長い英語のパスフレーズを使用したシングルシグ
- 英語のシードフレーズと日本語のパスフレーズを使用したシングルシグ
- 日本語のシードフレーズと短い英語のパスフレーズを使用したシングルシグ
- 英語のシードフレーズと長い英語のパスフレーズを使用したシングルシグ
- 英語のシードフレーズと短い英語のパスフレーズを使用したシングルシグ
- 日本語のシードフレーズでパスフレーズを使用しない 2-of-2 マルチシグ
- 英語のシードフレーズでパスフレーズを使用しない 2-of-2 マルチシグ
- 日本語のシードフレーズでパスフレーズを使用しないシングルシグ
- 英語のシードフレーズでパスフレーズを使用しないシングルシグ