マスタリング・ビットコイン 第3版 ―オープンブロックチェーンとそのプログラミング
by Andreas M. Antonopoulos, David A. Harding, 安土 茂亨, 鳩貝 淳一郎, 長尾 高弘
5章ウォレットの復元
ビットコインウォレットがビットコインを送ったり受け取ったりするには、秘密鍵と公開鍵のペアが必要不可欠です。しかし、秘密鍵がわからなくなると、対応する公開鍵で受け取ったビットコインを使えなくなってしまいます。ウォレットとプロトコルの開発者たちは、平常時のセキュリティを損なうことなく、問題が発生してもビットコインを再び使えるようにするためのシステムの設計に力を注いできました。
この章では、データの消失が資金の消失にならないようにするためにウォレットが使っている方法の一部を見ていきます。それらのなかには、欠点がほとんどなく、新しいウォレットで広く採用されているものもあります。それらは私たちもベストプラクティスとして推奨しています。利点と欠点の両方を持つ方法もあり、それらに対してはウォレットの開発者の間で対応が分かれています。そのようなものについては、どのような選択肢が考えられるかを説明していきます。
5.1 個別の鍵生成
物理通貨のためのウォレット(財布)には現金そのものが入っています。そのため、ビットコインウォレットにもビットコインが入っていると誤解している人がいても不思議ではありません。実際には、多くの人々がビットコインウォレットと呼んでいるもの(ウォレットアプリケーションと区別するためにウォレットデータベース:wallet databaseと呼ぶことにします)には鍵しか入っていません。それらの鍵は、ブロックチェーンに記録されているビットコインと紐付けられています。ビットコインフルノードに対して鍵を持っていることを証明すれば、あなたは鍵に紐付けられたビットコインを支払いに使えます。
単純なウォレットデータベースは、ビットコインを受け取るための公開鍵と、そのビットコインの使用を承認するために必要な署名を作れる秘密鍵の両方を持っています。それに対し、公開鍵だけを持っているウォレットデータベースや、支払いトランザクションの承認で必要な秘密鍵の一部だけを持っているウォレットデータベースもあります。それらを操作するウォレットアプリケーションは、ハードウェア署名デバイスやマルチシグスキーム内の別のウォレットといった外部ツールと連携して必要な署名を作ります。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access