暗号資産(仮想通貨)の基礎

ビットコインのトランザクションに記録されているデータ|ブロックチェーンの基礎

さて、前回までの解説でビットコインの送金はトランザクションとよぶ送金指示により実行しますが、そのトランザクションの考え方は普通の銀行間送金のトランザクションとは全く異なることが分かりました。ビットコインのトランザクションに記録されている情報についてもう少しだけ具体的に勉強してみましょう。

参考記事:すべての送金記録を並べるブロックチェーン|ブロックチェーンの基礎


自分がビットコインを持っている状態とは?


銀行の自分の口座にお金があるということは、誰かが自分にお金を送金してくれた結果として残高が増加するわけです。サラリーマンの場合、自分が会社で仕事をした対価の給料として銀行口座にお金が入ります。

仮想通貨でも自分がビットコインを持つためには誰かにビットコインを送ってもらわなければなりません。すでにビットコインを持っている人に対してなんらかの仕事をしてビットコインで報酬をもらうという方法は考えられますが、あまり現実的ではありません。普通は仮想通貨交換所に法定通貨を支払って、それに見合うビットコインを仮想通貨交換所から自分に送ってもらうと自分がビットコインを持てるわけです。


AさんがBさんに0.1 BTCを送る


AさんはZさんから送金してもらい、現在は0.3 BTCを持っているものとします。Aさんが宛先になっているトランザクションがブロックチェーンの中にあり、それがまだ未使用の状態であればAさんがビットコインを持っていることを意味します。

AさんはBさんに0.1 BTC送りたいのですが、いま自分が持っているトランザクションは0.3 BTCです。この中から0.1 BTCだけをBさんに送金して残りはAさんに残すトランザクションを作る必要がありますが、どうすればよいのでしょうか。

Zさんから送金してもらったトランザクション(TX 12345番)を基にして新たな送金用のトランザクション(TX 45678番)を作ります。新しいトランザクションにはBさんに0.1 BTCを送金するという指示と、Aさんに0.2 BTCを送金するという二つの送り先を書いておけば良いのです。

Bさんに0.1 BTCを送金するだけでは余るのでおつりとして自分自身にビットコインを送るという考え方です。このトランザクションTX 45678番がブロックに記録されてブロックチェーンにつながれると送金が完了したことになります。

TX 45678番が有効になると、基になったトランザクションTX 12345番は使用済みトランザクションとなって新たな送金には使えなくなります。

【図1】

AさんがBさんに0.1 BTCを送る


トランザクションに記録されているデータ


新たに作成した送金用トランザクションにはどんな内容が記録してあるのでしょうか。ビットコインのトランザクションには大きく分けて入力トランザクションに関する情報と出力トランザクションに関する情報とが記録してあります。

入力トランザクションとは送金の基になるトランザクションのことで、まだ送金に使っていないトランザクションでUTXO(Unspent Transaction Output)とも呼ばれるトランザクションのうち今回使用するトランザクションの個数とその番号を指定します。送金したいビットコインの金額が多額の場合、複数の未使用トランザクションを集めて送金する必要があるので、入力トランザクションが複数になる場合もあるのです。

出力トランザクションとは、ビットコインの送金先を指定する情報で、送る金額と送り先を複数個指定することができます。今回の例のように0.1 BTCだけBさんに送りたいときは2個の出力トランザクションを指定して、余った0.2 BTCはAさんに「おつり」として送り返す形で情報を作成します。

送金先の指定は実際にはビットコインの口座番号に相当するビットコインアドレスで指定しますが、原理的には送金先の人が持っている秘密鍵に対応する公開鍵を指定することと同様な仕組みと言えます。公開鍵暗号という暗号方式を用いて、秘密鍵を持っている人でないとトランザクションを受け取れない仕組みになっています。

【図2】

トランザクションに記録されているデータ

ビットコインのトランザクションを少し具体的なイメージで理解していただけたと思います。


本記事の監修者・上野 仁(Hitoshi Ueno)


1984年山梨大学大学院修士課程(計算機科学専攻)修了後、株式会社日立製作所入社。システム開発研究所、エンタープライズサーバ事業部などで主としてコンピュータアーキテクチャおよび基本ソフトウェアの研究開発に従事。

2015年より第一工科大学東京上野キャンパス情報電子システム工学科教授に就任。生体信号処理に関するプログラム開発や種々の先端ソフトウェアついての調査研究に興味を持つ。技術士(情報工学)。博士(工学)。


本ホームページに掲載されている事項は、投資判断の参考となる情報の提供を目的としたものであり、投資の勧誘を目的としたものではありません。投資方針、投資タイミング等は、ご自身の責任において判断してください。本サービスの情報に基づいて行った取引のいかなる損失についても、当社は一切の責を負いかねますのでご了承ください。また、当社は、当該情報の正確性および完全性を保証または約束するものでなく、今後、予告なしに内容を変更または廃止する場合があります。なお、当該情報の欠落・誤謬等につきましてもその責を負いかねますのでご了承ください。



この記事をシェアする

ホーム » 暗号資産(仮想通貨)の基礎 » ビットコインのトランザクションに記録されているデータ|ブロックチェーンの基礎