125 / 691vB

虚拟字节

一个 vbyte 对应四个权重单位。交易的虚拟大小等于权重除以四再向上取整,例如用于 sat/vB 费率。

BIP 141 定义 vsize = ceil(weight / 4)。这是加权大小,不总是一个物理字节;Bitcoin Core 的某些策略还考虑签名操作成本。

设 B 为不含 witness 的大小,T 为完整序列化大小。权重 W = 3 × B + T 以 WU 为单位,虚拟大小以 vB 为单位。 [BIP 141 — Segregated Witness] [Bitcoin Developer Reference — Transactions]

基础部分每字节计 4 WU;witness 序列化新增的数据,包括 marker 和 flag,每字节计 1 WU。折扣不意味着跳过验证。 [BIP 141 — Segregated Witness] [BIP 144 — SegWit peer services]

对整笔交易的总数向上取整:401 WU 得到 101 vB。分别将每个输入的估算值取整再相加,结果可能不同。 [BIP 141 — Segregated Witness] [Bitcoin Core — decoderawtransaction RPC]

没有 witness 时 B = T,因此 W = 4 × T,基本 vsize 等于字节数。SegWit 并不是把所有传输字节都除以四。 [BIP 141 — Segregated Witness]

示例数值 B = 100、T = 208 得到 W = 508 WU 和 vsize = 127 vB。完整序列化仍然需要传输全部 208 字节。 [BIP 141 — Segregated Witness] [Bitcoin Core — decoderawtransaction RPC]

手续费是输入金额减去输出金额。127 vB 按 2 sat/vB 计算为 254 sat,并不直接等于转账金额的某个百分比。 [Bitcoin Core — policy fees] [Bitcoin Developer Reference — Transactions]

交易完成前,钱包估算签名、输入和可能的找零输出。只有实际手续费和最终大小才能确定有效费率。 [Bitcoin Core — policy fees] [Bitcoin Core — decoderawtransaction RPC]

Bitcoin Core v29.0 还使用调整后的大小 ceil(max(W, sigop_cost × bytes_per_sigop) / 4)。大量签名操作可能使其增大,但不会改变 BIP 141 的基本公式或共识权重。 [Bitcoin Core — transaction policy]

评估交易包时,可以用总手续费与相关虚拟大小之和进行比较。这不是各交易费率的简单平均,也不保证被接收或确认。 [Bitcoin Core — policy fees] [Bitcoin Core — transaction policy]

CompactSize 是序列化中的变长整数编码。Vbyte 是计量单位,名称相似不代表格式相同,也不表示文件被缩短。 [BIP 144 — SegWit peer services] [Bitcoin Developer Reference — Transactions]

要获得更完整的理解,请将本词条与以下词条结合阅读: 区块权重, 紧凑区块中继, 区块传播, 初始区块下载. 反向关联还来自: 区块权重.

DOC · 001BIP 141 — Segregated Witness规范DOC · 002BIP 144 — SegWit peer services规范DOC · 003Bitcoin Core — policy fees文档DOC · 004Bitcoin Core — transaction policy文档DOC · 005Bitcoin Core — decoderawtransaction RPC文档DOC · 006Bitcoin Developer Reference — Transactions文档
来源优先 · 非投资建议