本文へスキップ
buybitcoinsmart

用語集 / トランザクションと手数料

トランザクション入力

別名は入力、TxIn、Inputです。

トランザクション入力とは?
トランザクション入力とは、支払いの半分を成す部分であり、すでに保有している特定の1つのコインを指定して、自分にそのコインを使用する権利があることを証明し、そのコインを完全に消費するものです。

すべての入力はポインタと証明の組み合わせであり、そのコストは使用するコインの種類によって決まります。Taprootのコインでは約57.5仮想バイト、ネイティブSegWitのコインでは約68、レガシーのコインでは約148です。入力は常に丸ごと消費されるため、小額の入金を多く保有するウォレットは、大きなコインを1つ保有するウォレットよりも同じ支払いに対して多くを支払います。受け取る入金はそれぞれ、後に支払うことになる入力です。

仕組み

入力には4つのフィールドがあり、そのうち署名は1つだけです。

まずアウトポイント(36バイト)があります。これはそのコインを作成したトランザクションのIDと、そのトランザクションの出力リストにおけるコインの位置から成ります。これがポインタであり、ビットコインを監査可能にしているものです。誰でもこれを遡って、その価値が作られたブロックまでたどれるからです。

次にスクリプト長、3番目に署名スクリプトがあり、古い種類のコインではこれが前の出力のロックを満たす署名と公開鍵を保持します。SegWitはそのデータが置かれる場所を変えただけで、内容は変えていません。bc1のコインではスクリプトのフィールドは空になり、ロック解除のためのデータは別のウィットネスセクションに移ります。そこでは各バイトが重み単位の4分の1として数えられます。暗号技術は同一で、課金は4分の1です。

4番目はシーケンス番号(4バイト)です。これはもともと、機能しなかったmempool内の置換スキームのために意図されたもので、その後用途が変えられました。BIP68がこれに相対的なタイムロックとしての意味を与え、これによってライトニングのチャネルは「使用可能だが、144ブロック経過後のみ」と言えるようになります。また0xfffffffe未満の値は、そのトランザクションがより高い手数料のバージョンに置き換えられる可能性があることを示します。

人々を驚かせる性質は消費です。入力はオール・オア・ナッシングです。0.4BTCのコインを1つ保有していて0.01BTCを支払いたい場合、入力は0.4全体を消費し、ウォレットは残りを返すためのお釣りの出力を作成します。部分的な消費はなく、金額を差し引くという概念もありません。

1つの入力は特別です。マイナーに支払うコインベーストランザクションには、アウトポイントが何も指さない入力がちょうど1つあります。32バイトのゼロと、0xffffffffのインデックスです。そのスクリプトは署名の代わりに任意のデータを保持し、ここにブロック高が入り、ジェネシスブロックにあるメッセージのような文言が書かれました。

どこで目にするか

入力はブロックエクスプローラーでは左側の列であり、他に何も変えていないのにウォレットの手数料見積もりが変わる理由です。

コインコントロール画面では、入力はチェックボックスです。小さなコイン4つではなく大きなコイン1つを選ぶことは、入力1つと4つの違いであり、各68仮想バイト、手数料率20sat/vBでは、1回の支払いで約4,080サトシの節約になります。

また、入力は情報を漏らします。1つのトランザクションに2つの入力があると、観察者全員に、1つの主体が両方のコインを管理していたことが分かり、これはブロックチェーン上のクラスタリングのほとんどすべてが前提としていることです。したがって、どの入力を使うかを選ぶことは、コストの問題であると同時にプライバシーの決定でもあります。

定期的に積み立てる人への実用的な結論は、購入をまとめて出金の回数を減らすことです。毎月1回の出金を12回行えば12個の入力が待つことになり、その請求は最終的に使用する日に、その時点で市場が課す手数料率で届きます。

トランザクション入力vsトランザクション出力

入力は過去に対する請求であり、出力は未来への提案であり、同じ価値の塊がその生涯の中で両方の役割を果たします。それは出力として生まれ、未使用の集合(UTXOセット)の中にとどまり、それを消費するトランザクションの入力として消えます。重要な非対称性は経済的なものです。出力は作るのが安く、各31~43バイトである一方、入力は消費するのが高く、各57.5~148仮想バイトです。受け取るのはほとんど費用がかからず、使用するのは実際の費用がかかり、これはほとんどの人が決済ネットワークの課金に期待するのとはちょうど逆です。

混同しやすい用語

よくある質問

なぜウォレットは、送金額より多いコインを使用するのですか?

入力は部分的に消費できないからです。コインを使用するとその全体が消費されるため、ウォレットは支払いと手数料を合わせてカバーするコインを選び、残りをお釣りの出力として自分自身に戻します。

入力が多いとトランザクションのコストは高くなりますか?

はい、そしてこれがビットコインの手数料の主な要因です。ネイティブSegWitの入力が1つ増えるごとに約68仮想バイトが加わるため、小さなコイン8つを使用する支払いは、大きなコイン1つを使用する同じ支払いの数倍のコストになることがあります。

次に読む

関連用語

トランザクションと手数料のその他の用語

このページを英語で読む