トランザクションとは
ブロックチェーンへの書き込みと透明性
トランザクションとは、ブロックチェーンへの「書き込み命令」です。送金、関数の呼び出し、データの保存など、あらゆる状態変更がトランザクションとして記録されます。
トランザクションの構成
1 つのトランザクションには、おおよそ以下の情報が含まれます。
| 項目 | 内容 |
|---|---|
| from | 送信者のアドレス |
| to | 送信先のアドレス(またはコントラクト) |
| value | 送金する金額(ETH など) |
| data | コントラクトへの命令(オプション) |
| gasLimit | 使用するガスの上限 |
| nonce | そのアドレスが送ったトランザクションの連番 |
| signature | 秘密鍵による署名 |
ここでの nonce(アカウントごとの送信連番)は、「ブロックチェーンとは」のレッスンで出てきた PoW マイニングの「ノンス」とは別物です。同じ "nonce" という言葉でも、こちらは取引の順序を保証するための連番で、二重送金や順序の入れ替えを防ぐ役割を持ちます。
ガス(Gas)
ブロックチェーン上で処理を実行するには、ネットワークの維持者(バリデーターやマイナー)に手数料を支払います。この手数料のことを ガス と呼びます。
ガスは「処理の複雑さ」に比例します。単純な送金は安く、複雑なスマートコントラクトの実行は高くなります。ネットワークが混雑していると、ガス価格も上がります。
トランザクションが成功した場合、設定した上限(gasLimit)のうち実際に使われなかった分は返金されます。ただし、処理途中でガスが不足して失敗した場合は、消費済みのガスは返金されません。
ブロックへの格納
トランザクションは個別に記録されるのではなく、複数まとめて ブロック に格納されます。ブロックの構造や改ざん耐性の仕組みについては、前のレッスン「ブロックチェーンとは」で詳しく説明しています。
トランザクションの確認
すべてのトランザクションは ブロックエクスプローラー(Etherscan など)で誰でも確認できます。送信者・受信者・金額・タイムスタンプがすべて公開されており、一度記録されると後から書き換えにくい構造になっています。これがパブリックチェーンの透明性の根拠です。