とってもやさしいビットコイン

とってもやさしいビットコイン

ビットコインや仮想通貨の知識が全くない初心者の方でもビットコインや仮想通貨がどういうものなのか分かりやすく理解できるブログを目指してます。

トランザクションの構造とは

f:id:jyutakugyoseiku:20161211135655j:plain

 

ビットコインは電子決済システムです。取引がブロックチェーンという公開台帳に埋め込まれ、記録されていきます。ビットコインでは取引の事を「トランザクション」という事があります。「トランザクション」とは何か、解説をさせていただきます。

 

 bitFlyer ビットコインを始めるなら安心・安全な取引所で

 

トランザクションとは

 

トランザクションはビットコイン取引をする際に、取引相手との間で価値の移動を表すデータ構造です。仕組みまで詳しく知りたい方でなければ「トランザクション=取引」と覚えてしまっても問題はそこまでありません。

 

ただ、トランザクションを一口で「取引」と言ってしまうと少しビットコインや仮想通貨について深く知ろうとするとこんがらがってしまうので、ここでトランザクションについて構造を知っておくと今後スムーズに学べるようになるでしょう。

 

まず、トランザクションは「アウトプット」「インプット」「その他」の要素があります。

・アウトプットはビットコインを特定のビットコインアドレスに数量を指定して送金する

・インプットはビットコインをアウトプットされた受け取る

・その他の部分ではトランザクションの時間等が記録される

 

これらをまとめたものが「トランザクション」です。

 

アウトプット

 

アウトプットはその名の通りビットコインをアウトプットする作業なのですが、ここで大切なのはそのアウトプットしたいビットコインが「本当にその人のビットコインか?」という確認作業です。

銀行を介した取引等では、口座の残高をみることによってその人がいくら持っているのかを確認します。しかし、ビットコインは以前受け取ったビットコインを参照することでその確認を行います。

 

ビットコインでは以前受け取ったビットコインを参照することによって所有権を確認します。つまりAさんがB・C・Dさんにそれぞれ1BTC・3BTC・2.5BTCを例えば受け取っていたとしましょう。すると計6.5BTCがAさんが受け取ったトランザクションとしてブロックチェーン上に記録されております。

Aさんが6.5BTCのビットコインをEさんに送金しようと思ったら、B・C・Dさんから受け取って使っていなかったままの6.5BTCがまとめられそれがトランザクションアウトプットとなるのです。この考え方をUTXO(未使用のトランザクションアウトプット)と言います。(詳しくは⇒ビットコインの所有権「UTXO」とは?

 

そしてこのトランザクションアウトプットを作成する際は「秘密鍵」による電子署名が必要となります。

 

インプット

 

インプットはその名の通りビットコインをインプットする作業なのですが、インプットのほとんどがUTXO(未使用のトランザクションアウトプット)の確認になります。UTXOはロックされた状態になっておりますので、そのロックを解くことにより特定のビットコインアドレスへのビットコインの入金が可能になります。

 

また、先ほどの「アウトプット」でもご説明した通り、一つのUTXOでは無くいくつかのUTXOがまとめられて、そしてロックが解除されてインプットされていきます。

 


スポンサー

 

その他

 

その他には主なものとしてそのトランザクションが検証されたりした時間などを表すものがデータとして含まれます。トランザクションはマイナーになかなか拾われず、ブロックチェーン上に載らないと優先度が徐々に高くなっていきます。ですのでトランザクションの構造中には時間を表すものもあるのです。

手数料をゼロにしてトランザクションを作成するとマイナーがそのトランザクションを選ぶインセンティブが減るので時間はかかりますが、優先度が高くなっていくのでいつかは基本的には取引が完了するのです。

 

トランザクションの経過

 

トランザクションは大まかに分けて3つの構造からなる事がわかりました。次は取引をした人のトランザクションがどのようにビットコインのブロックチェーンに埋め込まれていくのかを簡単にご説明させていただきます。

 

まず、取引をする際にトランザクションが作成されます。トランザクションを作成するのは必ずしも本人でなければならないという訳ではありません。ビットコインアドレス保有者でなくとも、その保有者の権限を証明する「秘密鍵」で署名をすることによってトランザクションの作成は可能です。ですのであなたがビットコインを送金する際に、「署名」という方法が何のことか分からなかったとしても、ウォレットなどを利用して運営に秘密鍵を預ける事で代理でトランザクションを作成してもらう事がかのうになります。

 

次に、作成されたトランザクションはそれだけでは何の効力も持たないので、ネットワークに伝えるという作業が必要になります。ネットワークに伝えるには全員に送信する必要はありません。全てのネットワークがいくつかのネットワークに繋がれているので、いくつかのネットワークにそのトランザクション作成を伝えれば、みるみるうちに伝わって、それがほとんどの参加者に伝わっていきます。これが共有システムのP2Pネットワークのなせる技です。(P2Pネットワークとは⇒P2Pネットワークとは

 

それぞれの参加者に伝わったトランザクションはトランザクションプール(詳しくはこちら⇒ビットコインのトランザクションプールとは)というトランザクションを貯めておく場所に保存されます。そこからマイナーと呼ばれるブロックチェーンにトランザクションを埋め込んでいく参加者はトランザクションを選んでブロックに埋め込んでいきます。

 

マイナーの報酬は新規発行ビットコインとトランザクション手数料ですので、トランザクション手数料は高いほどマイナーがブロックに早く載せる動機になります。(ビットコイン「マイニングの報酬」の仕組み

 

そしてこのトランザクションが載ったブロックが見事マイナーによってブロックチェーンに繋がれると、そのトランザクションは「承認」されます。これでこのトランザクションによって得たビットコインを次に利用することが可能になります。(ちなみに1つの承認では確実性は足りないと言われます。これについて詳しくはこちらをご参照ください⇒ビットコインの「承認」は6段階?

 

まとめ

 

以上がビットコインにおけるトランザクションの簡単な仕組みと流れです。ビットコインを利用する際は、ここまでの事を知らなくても大丈夫です。何故ならこのような事を代理で行ってくれるサービスが既に存在するからです。(モバイルウォレットなど、秘密鍵を自身で管理しないサービスを利用する時など)

ですが、ビットコインはネット上の通貨ですので、リスクを減らすという点ではこのような知識があるのと無いのでは全然違います。何故ならビットコインサービスを行う運営に資産を預けるということのリスクがどれだけあるか理解をしておく必要があるからです。

 

それを抑えておけば、このビットコインはここで保管・このビットコインはここですぐに利用できるようにしよう、等の対策がとれます。

 

あと、単純にビットコインシステムを学ぶのは楽しいです笑 ビットコインを扱う際は知識が大切ですので是非どんどん情報収集をしていきましょう!!

 

関連記事

coinbaseデータとは

 

 bitFlyer ビットコインを始めるなら安心・安全な取引所で

この1冊でまるごとわかる ブロックチェーン&ビットコイン

この1冊でまるごとわかる ブロックチェーン&ビットコイン