第3章
鍵を保存して守る
秘密鍵は、Blurtアカウントを管理するための大切な情報です。安全対策では、「他人に入手されること」と「自分が唯一の使用可能なコピーを失うこと」という、二つの反対のリスクに備える必要があります。

最初に完全なバックアップを保存しましょう
Joinでアカウントを作成するときにダウンロードするバックアップには、アカウント名、Master Key、4つの役割別秘密鍵(Owner、Active、Posting、Memo)が含まれています。保管する前にファイルを開き、正しいアカウント名とすべての項目があることを確認してください。
これらの秘密情報はブラウザ内で生成されます。Joinはサーバー上にコピーを保管しないため、ブラウザのメモリが消去された後に同じファイルを再送することはできません。ダウンロードの成功はファイルが作られたことを示すだけで、安全に保管されたことまでは保証しません。
失敗に強いバックアップを作りましょう
バックアップは、スマートフォンやパソコンの故障、ドライブの紛失、盗難、身近な災害が起きても残る必要があります。独立したコピー、別々の保管場所、異なる保護方法を組み合わせ、一つの原因ですべてを失わないようにしましょう。
複数のコピーを保管する
完全なバックアップを、少なくとも二つの独立した媒体に保管してください。同じ端末に二つのファイルを置いても、その端末が故障すれば両方を失います。
保管場所を分ける
一つは保護されたオフライン環境に、もう一つは別の安全な場所に保管します。一度の事故で両方が失われることを防げます。
読み出せることを確認する
各コピーへアクセスして内容を読めるか、定期的に確認してください。保管状態を試すためだけに、秘密鍵を貼り付けたりウォレットへインポートしたりする必要はありません。
完全な金庫用バックアップ
Master KeyとOwner、Active、Posting、Memoの秘密情報をまとめて、最も安全な保管場所に保存します。アクセスを再構築したり、権限を交換したりするときに使う完全版です。
日常利用のためのアクセス
普段使う端末には、必要最小限の権限だけを置いてください。信頼できるソーシャルフロントエンドなら通常はPostingで十分です。Ownerと完全なバックアップはオフラインで保管できます。
すべてのバックアップを守る
身の回りのリスクに合った保管方法を選びましょう。デジタル媒体はマルウェアや遠隔アクセスから、紙などの物理コピーは人目、火災、水害、盗難から守る必要があります。
オフライン用の媒体は、書き込みと確認が終わったら端末から取り外してください。常に接続したままでは、端末が侵害されたときにバックアップも同時に危険になります。 同期ストレージや遠隔アクセスできる場所へ置く前に、デジタルアーカイブを暗号化してください。Joinのプレーンテキストファイルをそのままアップロードしてはいけません。 スクリーンショット、共有メモ、チャット、メールの下書き、画面共有は避けてください。表示中の項目を削除しても、コピーやプレビューが残ることがあります。 紙に保存する場合は、正確なアカウント名とすべての文字が欠けていないことを確認してください。信頼できる方法で印刷し、人目に触れない耐久性のある場所へ保管します。
危険な要求を見分ける
秘密鍵の盗難の多くは、暗号技術を破るものではありません。所有者をだまして秘密情報を入力させたり、それを読み取るソフトウェアをインストールさせたりします。
秘密鍵はサポートに伝える情報ではありません
正規のサポート担当者が、秘密鍵、Master Key、バックアップファイルを必要とすることはありません。ダイレクトメッセージ、フォーム、電話などで要求された場合は、攻撃者だと考えて対応してください。
アクセス先を確認する
鍵を入力する前に、ドメイン全体を確認してください。普段使うサービスはブックマークから開き、本物によく似たURLを信用しないようにします。HTTPSは通信を保護しますが、そのサイト自体が信頼できる証明にはなりません。
操作に合った権限か確認する
投稿や投票に必要なのは通常Posting権限です。日常的なソーシャル操作でOwner、Active、Master Keyを求められたら、そこで中止してください。
ソフトウェアからのアクセスを制限する
ウォレットやブラウザ拡張機能は、確認済みの配布元からだけインストールしてください。クリップボードツール、遠隔アクセス、画面共有によって、dAppの外で秘密情報が漏れる場合もあります。
秘密鍵が漏えいした場合
公開鍵は他の人に見えることを前提としているため、見られただけでは問題ありません。一方、秘密鍵を送信した、信頼できないサービスへ貼り付けた、撮影した、一般公開した、または他人が管理する端末へ保存した場合は、漏えいしたものとして扱ってください。
目に見えるコピーを削除するだけでは不十分です。侵害されていない上位権限と信頼できる権限管理ツールを使って、影響を受けた公開権限を交換し、新しいバックアップを作成してください。
- Posting鍵が漏えい
- Active権限、またはプロトコル上の代替としてOwnerを使い、Posting権限を交換します。最近の投稿、コメント、投票、ソーシャルCustom Operationを確認してください。
- Active鍵が漏えい
- 侵害されていないOwner権限を使い、Active権限を直ちに交換してください。送金、ステーク、Savings、デリゲーション、ガバナンス活動を確認し、危険な資金を守ります。
- Memo鍵が漏えい
- Active権限で公開Memo鍵を交換します。交換すれば今後の利用は守られますが、漏えいした秘密鍵では、対応する公開鍵宛ての過去のメモも復号できる可能性があります。
- Owner鍵が漏えい
- まだ自分で管理できる場合は、信頼できるツールを使い、Owner権限を独立して生成した新しい鍵へ直ちに交換してください。同時に漏えいした可能性がある下位権限も交換します。
- Master Keyが漏えい
- Master Keyから4つの役割別秘密鍵を再生成できるため、すべてが侵害されたものと考えてください。Owner、Active、Posting、Memoを、漏えいしたMaster Keyから導出していない新しい権限へ交換します。
交換後は、現在のアカウント権限をオンチェーンで確認し、最近の履歴を調べてください。古い秘密情報や侵害された秘密情報を含むバックアップもすべて作り直します。秘密鍵を削除しても、すでにブロードキャストされた署名や操作は取り消せません。
パスワードから導出した権限を交換する
OwnerまたはMasterの秘密情報が漏えいしても、まだアカウントを管理できる場合は、Blurt WalletのChange Passwordツールでパスワード由来の権限を交換できます。変更を完了する前に、新しいパスワードと鍵を安全に保存してください。
アカウントリカバリーでできること、できないこと
Master Keyがあれば、互換ソフトウェアで役割別秘密鍵を再生成できます。下位権限の鍵を一つ失った場合は、Master Keyまたは侵害されていない上位権限から再生成または交換できます。すべての秘密情報をメールでリセットする仕組みはありません。
プロトコルのアカウントリカバリーは、主に、侵害されたOwner権限を攻撃者に置き換えられた場合のための仕組みです。リカバリーアカウントからの申請、新しいOwner権限、そしてプロトコルのリカバリー期間内に使われていた以前のOwner権限の証明が必要です。
鍵を失った場合
リカバリーによって、失った鍵そのものを復元したり表示したりすることはできません。通常は、自分のMaster Key、残っている権限、確認済みのバックアップを使ってアクセスを取り戻します。
攻撃者にOwner権限を変更された場合
すぐに行動し、オンチェーンでリカバリーアカウントとして登録されているアカウントへ連絡してください。リカバリーパートナーは、秘密情報を受け取らずに交換申請を承認できます。ただし、必要な以前のOwner権限と新しいOwner権限は、自分で満たす必要があります。
セキュリティチェックリスト
完全なバックアップに、正しいアカウント名、Master Key、4つの役割別秘密鍵がすべて含まれている。 少なくとも二つの独立したコピーを、別々の安全な場所へ保管している。 各コピーを読めることと、暗号化パスフレーズを復元できることを確認している。 普段使う端末やdAppsには、必要最小限の権限だけを渡している。 オンチェーンに記録された現在の権限とリカバリーアカウントを確認する方法を知っている。