本文へスキップ
buybitcoinsmart

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

仮想バイト

別名はvbyte、vBです。

仮想バイトとは?
仮想バイトは、ウォレットがトランザクションの価格を表す単位で、トランザクションのウェイトを4分の1にして切り上げた値に等しく、そのため手数料の見積もりはすべてサトシ/vbyteで示されます。

BIP-141で規定されています。

ウォレットは手数料を重量単位で示し、バイトに言及しなくなることもあり得ますが、仮想バイトは従来の計算をそのまま保ちます。ウィットネスデータを持たないトランザクションでは、vsizeはバイト単位のサイズと正確に同じになります。1つのブロックには1,000,000の仮想バイトが収まります。sat/vB単位の見積もりを読むことが、適正な出金手数料と水増しされた手数料を見分ける方法です。

仕組み

仮想サイズは1行の計算から導かれます。重量を取得し、4で割り、切り上げます。

その数値と生のシリアライズとの差が、お金が失われる場所です。ネイティブSegWitのコイン1つを消費して2つの出力を持つ支払いは、回線上で222バイト、重量は561重量単位、料金は141仮想バイトとして計算されます。141ではなく222に選択したレートを掛けると、約57%の過払いになります。ブロックエクスプローラーは両方の数値を並べて表示し、それぞれsizeとvsizeというラベルを付けます。間違った方を選ぶのは、手数料見積もりで最もよくある計算ミスです。

丸めは最後に1回だけ行われます。各要素は整数にはなりません。Taprootのキーパス入力は57.5vbytesなので、中間の合計が半単位になることがあります。そのため、同一の支払いを構築する2つのウォレットが、どちらも間違っていないのに1vbyteだけ食い違う可能性があります。Bitcoin Coreは同じトランザクションの3つの表示、size、vsize、weightをすべて公開しているので、どれでも自分で確認できます。

手数料の見積もり機能は、同じ単位を別の形で使っています。estimatesmartfeeはビットコイン毎キロ仮想バイトで応答するため、返されたレートが0.00005000であれば、5,000サトシで1,000仮想バイトを購入でき、それは5sat/vBに相当します。メムプールのダッシュボードの各帯域、ウォレットの各スライダー、リレー下限に関する各拒否メッセージは、すべて同じ単位で表示されます。

表示される場所

仮想バイトは、取引所からの出金が実際にいくらかかるかを決めます。定額手数料を受け入れる前に、この計算を行う価値があります。

バッチ処理を行うプラットフォームを例にします。1つの入力が100件の顧客の出金を1つのトランザクションで賄います。ネイティブSegWit出力1件あたり31vbytesに、入力の68と約11のオーバーヘッドを加えると、全体は約3,179vbytesになります。5sat/vBでは15,895サトシ、つまり含まれる人それぞれについて約159サトシかかります。0.0001BTCの定額手数料を請求すると、そのスペースに対して100人全員から10,000サトシを請求することになり、各自の負担分の60倍以上になります。混雑時には関係が逆転します。100sat/vBでは同じバッチが1人あたり3,179サトシかかり、定額手数料は補助金になります。定額の出金手数料は賭けであり、閑散とした日には運営側が得をします。

同じ単位は、自分の管理作業の料金も決めます。小口のコインをまとめて回収する場合、料金はほぼ入力数だけで決まるため、ネイティブSegWitの入力12件を1つの出力に統合すると、金額に関係なく約858vbytesになります。2sat/vBで行えば2,000サトシ未満で済みます。手数料の急騰中に行えば、同じ作業にその50倍かかります。

仮想バイトvs重量単位

仮想バイトと重量単位は同じデータを4倍の比率で異なる尺度で測っており、丸めだけが両者が互換でなくなる点です。コンセンサスの上限は重量単位で書かれており、そのためブロックの上限は4,000,000単位として示されます。インターフェースはvbytesで書かれています。8sat/vBの方が、重量単位あたり2サトシより頭に留めやすいからです。天井関数により、561重量単位のトランザクションは140.25ではなく141vbytesとして請求されるため、使っていないバイトの4分の3分を支払うことになります。仕様を読むときは重量単位で考え、何かの料金を支払うときはvbytesで考えることになります。

混同しやすい用語

よくある質問

ウォレットが141vbytesと表示するのに、エクスプローラーが222バイトと表示するのはなぜですか?

どちらの数値も正しいです。222は回線上でのシリアライズ後の長さで、141は署名データを4分の1のレートで数えた後の長さです。手数料は小さい方の数値に基づいて請求されるので、レートを掛けるときは常にvsizeを使用してください。

sat/vBはsat/byteと同じですか?

witnessデータを持たないトランザクションのみで、その場合は2つのサイズが同一です。segwitまたはTaprootの出力を使うものではvsizeの方が小さくなるので、依然としてsat/byteで示すツールは手数料を最大4倍まで過大に示すことになります。

次に読む

関連用語

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

このページを英語で読む