Not your keys, not your coins

Screenshot of www.ledger.com

「鍵を持たない者はコインを持たず」、この格言は、暗号資産の仕組みを良く理解する必要があるという警句になっています。つまり、公開鍵暗号の仕組みを学ぶ必要があるのです。

FTXなど暗号資産交換業者が破綻すると、暗号資産を預けていた顧客は返還請求ができなくなってしまう場合があります。預けていた暗号資産(お金)が無くなってしまうのです。

暗号資産bitcoinは、secp256k1という公開鍵暗号方式が使われております。

これは、256bit(10進数で78桁)の関数 y=f(x) の計算をする場合に、x から y を計算することは簡単だが、y から x を算出することは至難の業である( x の候補を総当たりで試してみるしかないが、ほとんど無理、たとえばスパコンで1億年以上掛かる)というような計算困難性の一方向性という特性を用いた暗号になっています。上記の関数で言えば y が公開鍵(ビットコインアドレス)で x が秘密鍵です。秘密鍵を使ってトランザクション(取引情報1回分)に電子署名すると、それが正しい秘密鍵によって署名されたかどうかを、公開鍵を使って簡単に確認することができますが、その署名されたトランザクションからも、公開鍵からも、秘密鍵を算出することはできない(スパコンでも1億年以上掛かる計算量)、ということになります。

ですから、ビットコインなどの暗号資産の安全性は、秘密鍵によって担保されていることになります。秘密鍵を持っている人物だけが、そのビットコインを送信することができるのです。

いま、あなたがビットコインの投資をするために、暗号資産交換業者に口座開設の申し込みをして、その業者に日本円を送金してビットコインを買ったとしましょう。その場合、あなたは、そのビットコインの秘密鍵を知っているでしょうか。答えは否(いな)です。あなたは、あなたのビットコインの秘密鍵を知らないのです。暗号資産交換業者によっては、親切に、あなたのビットコインのアドレスをあなたのマイページから見れるようになってる場合もありますし、「送金先アドレス」として、あなたにビットコインを送金する場合の送金先アドレスをマイページで見れる場合もあります。そんな場合でも、そのアドレスの秘密鍵をあなたは知らないのです。その場合、あなたは、そのビットコインを「持っている」と言えるのでしょうか。それは疑問が残りますし、上記の Not your keys, not your coins という格言に従えば、「あなたはビットコインを持っていない」ということになってしまうのです。

なんと、自分ではビットコインを持っているつもりでも、実際には持っていなかったという衝撃的な話です。

じゃあ、ビットコインを本当に「持つ」ためにはどうすれば良いかと言えば、「秘密鍵を知る」ということになります。それは256ビット(32バイト)のデジタルデータですが、人が認識できるように(印刷できるように)BASE64という変換規則により64文字の文字列に変換されて表示されています。ですから、結局、その64文字の文字列を「知っている」ということが必要になります。紙に印刷して大切に隠し持っているというのが原則になりますが、デジタルデータをUSBメモリに保存したり、ハードウェアウォレットというLED表示つきの専用マシンを所持しても良いでしょう。ただ、USBメモリやハードウェアウォレットの場合は、そのハードウェアが「故障」したら、秘密鍵を失い、暗号資産も失うことになってしまいます。他方、秘密鍵を印刷したペーパーウォレットの場合でも、そのペーパーウォレットがシュレッダーで処分されてしまったり、燃えてしまった場合は、秘密鍵が失われ、暗号資産を失うことになります。ペーパーウォレットを誰が印刷するのか、という問題もあります。印刷を他人に依頼した場合、その他人も秘密鍵を知っている、ということになってしまいます。秘密鍵は絶対に自分で印刷すべきです。

結局、どの方式であっても完全な方法というのは無いことになりますが、「他人任せのリスク」を回避するならば、自分自身で、秘密鍵を生成し、印刷し、管理するのがベストということになります。


投稿日

カテゴリー:

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です