BlockChain

シードフレーズ?リカバリーフレーズ?仮想通貨の秘密鍵と公開鍵の仕組みについて

 

仮想通貨の秘密鍵ってなんだろう?セキュリティのことはよくわからないけど自分の仮想通貨は安全に運用したいな…

 

こうした疑問にお答えします。リカバリーフレーズもシードフレーズも、厳密には違うことを指していることがありますが、大抵の場合同じものを指していて、秘密鍵で署名するためのただの英単語の羅列の「バックアップ・フレーズ」です。

 

本記事の内容

  • 秘密鍵とは
  • 基礎から理解できるビットコイン取引の仕組み
  • リカバリーフレーズを紛失したら?
  • 秘密鍵の管理方法

 

ウォレットアプリにはMetaMaskというマルチチェーンウォレットが人気です。こちらの記事で登録方法を紹介していますので、興味のある方はチェックして見てください。

 

 

本記事のオーサー

ローレンス
仮想通貨に没頭している情シス会社員です。Twitterでは仮想通貨をわかりやすく楽しむための日本や海外の情報をまとめて発信しています。もしよければフォローお願い致します!▶︎Twitter

 

秘密鍵とは

秘密鍵とは、公開鍵とペアになり通信を暗号化するために使うキーのことです。「公開鍵暗号方式」という仮想通貨以外にも利用されている暗号方式です。この方式での情報のやりとりには、情報を取得したり、見たりすることをするためには「秘密鍵」が必要になります。

 

公開鍵暗号方式の符号のながれ

  1. 送信元Aが、受信元Bが公開している公開鍵を取得
  2. Aは、取得した公開鍵を使いデータを暗号化してBに送信
  3. Bは、公開鍵に対応したBのみ知っている秘密鍵で復号してデータを取得

 

秘密鍵による本人確認のながれ

  1. 本人確認用の検証文字列をハッシュ値をあてて決める
  2. 秘密鍵を使ってその文字列を暗号化する=署名
  3. 公開鍵を受け取った人が文字列を復号
  4. 受け取った人が複合した文字列と元の文字列を比較
  5. この文字列が一致する=公開鍵で解読できる文字列を生成できるのは秘密鍵の所持者のみ
  6. 本人確認の成功

 

以上が、秘密鍵を利用した通信の方法です。本人の確認という言葉を使いましたが、これは「情報を受け取るべき人や情報を見てもいい人だけ」に通信させたり、情報が改竄されていないことが確認できる一般的な技術です。

 

ちょっと話がむずかしいですよね…。ビットコインを例に仕組みを見ていきましょう。

 

 

基礎から理解できるビットコイン取引の仕組み

ビットコインを例にして、実際の取引がどのように行われるかを見ていきましょう。

 

ビットコインの取引のながれイメージ

  • 秘密鍵から公開鍵のペアを生成
  • 公開鍵からウォレットアドレスを生成
  • 送金情報に送金者が秘密鍵で署名
  • P2Pネットワークに送金情報を公開
  • 公開鍵と署名済み送金情報を符号して検証
  • 公開鍵で送金情報が復号できれば送金有効

 

 

以上の流れになっています。ざっくりとした理解ができればOKです。

 

このながれをみると「秘密鍵にアクセスできるかどうか」が重要であることがわかります。秘密鍵で署名することができてしまえば、たとえ本人でなくても送金手続きができてしまうからです。

 

つまり、「秘密鍵を他人に知られてしまうと自分のウォレットから勝手に送金されてしまう」ということが発生する可能性ができてしまいます。

 

だから、「他人に絶対秘密鍵を教えてはいけませんよ」ということが重要なんですね。

 

 

リカバリーフレーズを紛失したら?

公開鍵と秘密鍵はただの数十文字の「文字列」です。

メモに書いておいたとしても紛失する可能性はあります。これを失くすと二度とそのウォレットから仮想通貨を引き出すことができなくなります。紛失することを前提に2重にリカバリーフレーズを思い出す手がかりを用意しておくことをおすすめします。

 

しかし、あまり分散して管理すると他人に見られてしまったりしますので、オフラインで保管しておくことも必要です。

 

リカバリーフレーズさえなくさなければいいのですが、色々なバックアップを取ったりしても管理が雑だと、人間なので忘れてしまったりしてしまいます。

こちらのニュースではバックアップができず秘密鍵がわからなくなり、158億円分の仮想通貨にアクセスできず、引き出せなくなった事例があります。

 

取引所などが秘密鍵を復元してくれたりするわけではないので、なくさないことが非常に重要です。

 

 

秘密鍵の管理方法:まとめ

Seed Phrase(シードフレーズ)やMNemonicPhrase(ニーモニックフレーズ)といったり、ややこしいのですが、要は「秘密鍵」のバックアップフレーズと理解しておけばOKです。

 

MetaMaskでは、複数のウォレットをひとりで持つことができます。ウォレット一つ一つに秘密鍵がありますので、これらを束ねて復元できるのが、上記のようなバックアップフレーズとなります。

 

秘密鍵 = バックアップフレーズ ではありません。

 

あくまで、シードフレーズは秘密鍵に辿り着くためのキーワードです。ぼくたちの目には秘密鍵が触れることはほとんどありません。

 

バックアップフレーズを無くしたり、他人に盗まれると秘密鍵にアクセスできるので認証作業ができてしまう。だから秘密鍵をだれにも見せてはいけない、ということなんですね。

 

秘密鍵の管理はどこまでいっても「自己責任」です。

管理が苦手な人、そもそも自分で管理したくない人は、仮想通貨取引所などにそのまま預けておくこともできます。

 

取引所のハッキングリスクは当然ありますが、ログインできなくなった時のサポートはありますので、「仮想通貨を動かせなくなる」という状況は少なくとも回避できます。

 

取引所を初めて利用して、ビットコインを購入する方はこちらで購入方法をかんたんに紹介しています。興味のある方は参考にして見ください。

 

 

 

ローレンス
Twitterでは仮想通貨をわかりやすく楽しむための日本や海外の情報をまとめて発信しています。もしよろしければ、フォローお願い致します!▶︎Twitter

 

 

  • この記事を書いた人

ローレンス

クリプトに没頭している会社員です。暗号資産の儲け話よりも、テクノロジーに興味があり、ブログ、メルマガ、ポッドキャストなどでWeb3関連のトピックをやさしく解説しています。クリプトにまつわる情報はスピードが速く複雑ですが、Web3領域で活躍できる人材を目指して一緒に学習していきましょう。

-BlockChain

© 2023 Lawrence Tokyo