第3回東大ブロックチェーン講座振り返り「足取りを見えなくするアドレス」
こんにちは、林です。
引き続き東大ブロックチェーン講座に参加中です。
4月23日の第3回はさらに内容が高度化、ついていくのに必死です(笑)
自分のために振り返りしながら、理解を深めていきたいと思います。
この振り返りでは講座を受けてない方にもわかるようにお話をしていきますね。
ビットコインのプライバシー問題
東大ブロックチェーン公開講座では、まずビットコインの仕組みを学んでいるのですが、ビットコインには送金したり、受け取ったりするために使う「アドレス」があります。
アドレスは日本語では住所となるので、ちょっとイメージが湧きにくいですが、メールアドレスでいうアドレスのようなイメージを持つと分かりやすいかなと。例えば特定の人にメッセージを送るためのメールアドレスに対して、特定の人にビットコインを送るためのアドレスがあります。
銀行で例えるとアドレスは「口座番号」に似ています。口座番号が分かれば相手に送金することができます。ビットコインでも、相手のアドレスが分かれば、誰でも相手の許可なくビットコインを送ることができます。
さてここで問題になるのがプライバシーです。
メールアドレスの場合、メッセージは公開されませんが、ビットコインはインターネット全体で承認する仕組みのため、全ての取引が「公開」されています。もちろんアドレスの所有者が誰かが公開されているわけではなく匿名なので、取引が公開されているからといって直ちにプライバシーが問題になるわけではないです。
とはいえ例えば特定のアドレスの動きをウォッチしていると、なんとなく行動が見えてくることがあります。このアドレスから割り出される行動と、リアルの行動が万一紐づいてしまうとプライバシーの問題になってしまいます。
ビットコインが採用する送金方法
そこでビットコインでは「UTXO」という送金モデルを採用しています。
UTXOとは「未使用のトランザクションから次のトランザクションを作るモデル」で、お釣りの再利用とも言われています。
例で示します。
左から順に、Aさんのアドレスにあるビットコイン1BTCの一部がBさんに0.2BTC支払われたとき、残金0.8BTCがお釣りとしてAさんに戻ってきます。これが次以降の支払い用のトランザクションとして利用されます。
次にCさんに0.3BTC支払う場合は、前回のお釣りの0.8BTC(これが未使用トランザクションのUTXO)を利用して、さらにお釣り0.5BTCがAさんに戻ってきます。この時点で0.5BTCがUTXOになります。
上の図の状態で、緑のトランザクションがAさんのUTXO、青のトランザクションが他人(Bさん、Cさん)のUTXOになり、次回以降のトランザクションに利用されます。
また、DさんからAさんに入金された0.1BTCも、次回以降に利用されます。このとき、Aさんの0.5BTCと0.1BTCがまとめられることなく、別々のUTXOとして扱われます。
このようにAさんのアドレスに入ってくるトランザクションが残高としてまとめられることなく、それぞれ別々に利用されている方式がUTXOモデルです。
なぜこんな面倒で分かりにくいことをするのかというと、ビットコインがプライバシー問題に敏感だからです。同じアドレスであってもさも別々のように振る舞うことで、Aさんの行動を分かりにくくする仕組みなんです。
アドレスを自動でたくさん作る仕組み
とはいえ、Aさんのトランザクションが全て同じアドレスで行われれば、そのアドレスをウォッチしていれば行動が推測されるリスクがあります。上の例で言えば、1BTC、0.8BTC、0.5BTCが全て同じアドレスなら、そのアドレスをウォッチしておけば同じ人がBさんに0.2BTC支払い、Cさんに0.3BTC支払ったことが知られてしまいます。
そこで暗号資産には「アドレスを自動でたくさん作る仕組み」があります。
東大講座で紹介されていたのは、例えばHDウォレット(階層型決定性ウォレット)です。HDウォレットは、一つのキーから複数のアドレスを計算で導き出すことができるウォレットのことです。わかりやすく特徴を説明すると、HDウォレットの管理者は、異なるアドレスを全て自分のものとして扱うことができる一方、外から見るとそれぞれのアドレスの関連性が分かりません。
先程の例に戻りましょう。AさんがHDウォレットを使い、トランザクション毎に別々のアドレスを使ったとします。
Aさんから見るとA、A'、A''、A'''が全て「自分で管理できる」アドレスになっています。一方、第三者はA、A'、A''、A'''の関連性が分からず、別々のアドレスのように見えます。
このようにすることで、Bさん、Cさんへの支払いをさも別人がおこなったかのように見せることができ、プライバシーを守りやすくなります。
東大ブロックチェーン講座第3回まとめ
講座ではもっと多くの話がありましたが、全て振り返ると際限なくなりますのでビットコインのプライバシーとHDウォレットの関係のみに絞って振り返りました。
UTXOモデルはこのようにプライバシーを守りやすくなるメリットがある反面、デメリットもあります。UTXOモデルと対比される「アカウントモデル」は、まさに銀行の残高モデルです。
アカウントモデルは特定のアドレスを使い続けることを推奨するので、特定のアドレスのトランザクションの追跡が容易になります。その一方で、直感的に扱いやすいモデルなので、イーサリアムのDAPPなどに適していると言われます。
いかがでしょうか?ここまで深く暗号資産について考えることは日常生活でほぼないと思います。僕も以前は気にもしなかったことですが、東大ブロックチェーン講座に参加することで視座を深めることができています。
暗号資産に限らず、お金について詳しくはメルマガでもお話していますので、以下からご登録ください!