目次

    全ての目次を見る
  1. ビットコイン(bitcoin)とトランザクション(取引データ)
  2. ビットコイン(bitcoin)のトランザクションとは
  3. トランザクションのデータ構造とは
  4. ビットコイン(bitcoin)のトランザクションの種類
  5. ビットコイン(bitcoin)のトランザクションのまとめ
Large that is unbelievable  527464715 1258x837

ビットコインが気になって調べてみると、トランザクション(取引データ)という言葉をよく見かけます。

この記事にたどり着いた方は、『ビットコインのトランザクションって何』『トランザクションのデータ構造が知りたい』などの、疑問をお持ちの方が多いのではないでしょうか。

この記事では、「トランザクションの概要とデータ構造」「トランザクションの種類」について解説していきます。

ビットコインのトランザクションとは、ビットコインの価値の移動を示した取引データのことを指します。

単に、『トランザクション=取引データ』とするときもあります。

ビットコインとは実体のない仮想通貨(暗号通貨)で、『Aさんに10BTC 送金』というような取引データが、ブロックチェーンという改ざんが極めて困難な台帳で管理されていることで、価値が表現されています

この場合、『Aさんに10BTC 送金』したという取引データが改ざんできないことを考慮すると、『Aさんは10BTC 所持している』ことがわかりますね。

なぜ、ビットコインの取引データが改ざんできないかというと、ブロックチェーンという技術を使用しているからなのですが、ここでは詳細は記載いたしません。

気になる方は『革命を起こすブロックチェーン(blockchai)の仕組みとは?』の記事をご覧ください。

次の段落では、ビットコインのトランザクションのデータ構造について解説していきます。

ビットコインのトランザクションとは、4つの要素で構成されているのですが、その詳細について一緒に見ていきましょう。

トランザクションとは下記の4つの要素で構成されています。

  1. UTXO(未使用トランザクションアウトプット)

  2. アウトプット

  3. インプット

  4. メタデータ

それぞれ解説していきますね

UTXOとは『unspent transaction output』の略称で、未使用トランザクションアウトプットと呼ばれるもので、トランザクションの基本的な構成要素です。

UTXOとは、ブロックチェーンで管理された、まだ使用していない分割不可能なビットコイン(取引データ)のことを指します。

現実世界でいうと、UTXOとは、使用可能だが、両替することはできない現金というイメージです。

このUTXOを、決済や送金の際に使用しているのですが、UTXOとは実体のない電子データなので、ビットコインでは、専用のウォレット(財布)で管理しています。

ビットコインのウォレットに関しては、下の『ビットコインウォレットの種類まとめ』で詳しく解説しています。

次の段落では、『トランザクションアウトプット』と『トランザクションインプット』について解説していきますが、これらのトランザクションはUTXOから生成されているものです。

では、トランザクションアウトプットとトランザクションインプットについてみていきましょう。

トランザクションのアウトプットとは『誰にビットコインを送ったのか』、インプットとは『誰からビットコインが送られてきたの』を表します。

どういうことなのか、取引の流れを表した下の図をご覧ください。

上図の流れ、以下のような流れに例えることが可能です。

  1. 『会社(Aさん)が給料を払う(アウトプット)』
  2. 『従業員(Bさん)が受け取る』
  3. 『従業員は財布や銀行で給料を管理(UTXO)』
  4. 『買い物や・食費で給料(UTXO)使用する(アウトプット)』

トランザクションのアウトプットは『支出』、インプットは『収入』のようなもので、銀行や財布で管理している使用していない収入(給料)がUTXOに当たります。

メタデータとはトランザクションの情報を表すデータのことです。

メタデータには、『トランザクションのデータサイズ』、『トランザクションID』などが含まれています。

トランザクションIDとは、あるトランザクションに配布されたID(番号)のことで、このIDを調べることで、自分のトランザクションが正常に行われたのかなどの確認ができます。

ここまでで、トランザクションの概要とデータ構造は理解していただけたかと思います

次の段落では、トランザクションの種類について解説しています。

実際のトランザクションは、単体or複数のインプット・アウトプットを含んでいることがほとんどです。

トランザクションのパターンは主に下記の3つがほとんどです。

一般的な支払いでおつりが発生するトランザクション

複数のインプットをまとめて1回の支払いで使用するとき

1つのインプットで複数人へ支払いをするとき

それぞれ図解していくので一緒に理解していきましょう。

現金での支払いでは、値段より多い金額を払った場合、相手側がおつりをくれますが、ビットコインでは異なります。

おつりが出る決済をビットコインでする場合、上図のように支払い側へのアウトプットと自分のビットコインアドレスに送るアウトプットの2つが必要になります。

また、上図の手数料に関しては後述しています。

ビットコインでは、500円玉2枚で1000円の商品を買うのと同様に、複数の少額UTXOをまとめて、1つの支払いに使用することが可能です。

このように1つのUTXOを複数人への決済や送金に使用することが可能です。

トランザクションでは、手数料としてビットコインが減らされていますが、これはマイナーへの報酬として支払われています

マイナーとはビットコインの取引データを、ブロックチェーンに格納する作業を行うビットコイン利用者のことです。

トランザクションはブロックに格納され、ブロックチェーンに追加されたはじめて有効な取引として認められます

取引データをブロックチェーンに格納する作業をマイニングといいますが、この作業はすべてマイナーが実行していて、その対価として、トランザクションの一部が手数料としてマイナーに支払われているのです。

ですから、『アウトプットの金額=UTXOの金額』となることは、ほとんどありません。

ビットコインのトランザクションとは、まとめると以下の通りです。

  • ビットコインの価値の転移を表す取引データのこと

  • UTXO(未使用アウトプット)がトランザクションの基本構成要素

  • アウトプットとは、誰にビットコインを送ったかを表す

  • インプットとは、誰からビットコインが送られたのかを表す

ビットコインのトランザクションとは、改ざんできないブロックチェーンで管理することで、価値を表現することが可能となっています。

ビットコインの、『ブロックチェーンとは何か』、『概要は知っているけどブロックチェーンの仕組みは知らない』という方で、ブロックチェーンについて知りたいという方がいらっしゃいましたら、下記の『ブロックチェーン(blockchain)とは何か?』、『革命を起こすブロックチェーン(blockchain)の仕組みとは?』