VeilSwap
← 全部文章
科普2026-10-319 分钟阅读

UTXO 合并与找零:地址聚类在什么时候失效

对比特币第 973,933 号区块做全量普查:3,533 笔交易里 18.7% 有多个输入,只有 40.7% 能唯一判出找零。以及 906 个 UTXO 在 1 sat/vB 下合并花了多少钱、为什么兑换入金要为此买单。

两个启发式,只有一个接近「证明」

链上分析公司的评分,起点都是两条比它们更老的规则。共同输入所有权是这样的:一笔交易如果花掉了地址 A、B、C 的输出,那么签名者在那一刻同时掌握三把私钥——这接近证明,例外也就那几种(CoinJoin、payjoin、共管钱包)。找零识别是弱的那一半:通常有一个输出是找给付款人的,但猜哪一个只是概率,从来不是事实。这个猜测靠脚本类型匹配、整数金额、金额大小顺序、地址复用和时间。我想知道这个猜测在今天真实链上到底准到什么程度,所以没有抽样,而是把比特币第 973,933 号区块(2026-10-31 05:32:52 UTC)的全部交易读了一遍。 (隐私币与混币器对比)

一个区块的全量普查,不是抽样

这个块有 3,533 笔交易(3,532 笔非 coinbase),998,284 vB,手续费合计 0.0182 BTC,费率中位 1.205 sat/vB(p10 0.12、p90 3.7)。当时内存池 54,439 笔、21.49 MvB,四档推荐费率全是 1 sat/vB——周六早上的平静,这个数字后面有用。3,532 笔付款里有 659 笔(18.66%)花了两个以上输入,这些多输入交易搬走了全块 14.2% 的金额。输入数中位 2、p90 是 9、最多 906。第一条规则在 288 笔上直接命中(占多输入交易的 43.7%,所有输入同一地址),另有 371 笔的输入来自不同地址——可能是一个钱包在多个地址之间倒手,也可能是几个人的币;启发式分不出来,你也分不出来。 (门罗费用机制)

只有 40.7% 的交易能被唯一判出找零

按「脚本类型与某个输入相同、且该地址从未在输入中出现」来判找零:3,532 笔里唯一候选 1,438 笔(40.7%),两个以上候选 633 笔(17.9%),一个都没有 1,461 笔(41.4%)。只看最经典的「两输出付款」,2,200 笔里唯一候选 752 笔,真正两难(两个候选)406 笔(18.5%),无候选 1,042 笔。整数金额这条兜底比传说中弱得多:那 752 笔里只有 22 笔(2.9%)有一个整十万聪的输出,72 笔(9.6%)是整万聪。金额大小顺序同样是掷硬币——找零是较大那个输出的有 292 笔(38.8%)。也就是说,在一个平静的区块上,光靠结构信息,分析师平均四成能猜对找零。

合并的真实成本:每个输入 68 vB

合并是故事的另一半。这个块里有 50 笔「≥10 输入、≤2 输出」的交易。最大的一笔花掉 906 个 P2WPKH 输入、合成一个输出:61,537.8 vB,在 1.0 sat/vB 下付 61,538 sat,每个输入 67.9 vB,按 BTC 77,292 美元算是 47.56 美元。小一点的完全对得上理论:32 输入 2,209.5 vB(每个 69.0)、10 输入 671.5 vB(67.2);公式 10.5 + 68n + 31 算 20 输入是 1,401.5 vB。legacy 输入是例外:39 个 P2PKH 输入合并用了 5,798 vB(每个 148.7),三笔 100 输入的分别是 14,791、14,796、14,798 vB;50 笔合并里 7 笔全 legacy、27 笔全 P2WPKH。今天 1 sat/vB,把 20 个 UTXO 合成一个是 1,402 sat(1.08 美元);同样的操作放在 20 sat/vB 的一周是 21.66 美元,50 sat/vB 是 54.16 美元。

盈亏平衡点其实是在赌未来的费率

老实算一遍:现在合并 N 个输入要 68N + 41.5 vB;不合并、以后一起花掉这 N 个输入,同样是 68N + 41.5 vB;合并后以后花这一个输出是 68 + 41.5 vB。所以合并只有在「未来费率大于现在的 (68N + 41.5) ÷ (68(N−1)) 倍」时才划算:10 个输入要涨 17.9%,20 个 8.5%,50 个 3.3%。这个分数里藏着两个前提。第一,你以后真的会一起花掉这些币——如果一个一个花,合并是纯亏,每个输入白付 68 vB。第二,隐私成本根本没进这个公式:合并会永久公开「一个主体控制所有这些输入」。如果这些 UTXO 都来自同一家交易所的重复提币,这不算新消息;如果一个是 KYC 交易所提的、一个是 P2P 买的,你刚刚把这两条身份线写进账本,永远。

兑换的入金地址是新的,出钱的那些币不是

这就是兑换站与 UTXO 的交点。VeilSwap 每单生成新的入金地址,并且强制要退款地址(不带会返回 400 missing_refund_address),所以地址本身没有历史。付款那笔交易有。你的钱包为这笔入金挑中哪些 UTXO,就公开地把哪些簇绑到了这个订单上——分析师顺着入金地址往上读,继承的是你全部的输入簇。TRC20 这条腿连找零和选币都没有:一个 TRON 地址就是一份永久历史,剩下的隐私只取决于你从哪个地址出钱。兑换之后由目的链决定:XMR 不公开输入、输出和金额,所以走廊比钱包更重要。今天的报价作参照(截至写作时,实时报价以页面为准):100 USDT-TRC20 换 0.14781859 XMR,隐含 676.50 美元/XMR,现货 595.92;1 XMR 卖 575.97 USDT;0.05 BTC 换 6.3958399 XMR,即 127.92 XMR/BTC,比现货低 1.4%。 (转错网络如何找回)

按顺序该做的几件事

上面这些都不需要新软件。每单换一个新的收款地址和一个新的退款地址——复用是最便宜、也最常被忘掉的那条链接。付款前打开 coin control,只选同一来源的 UTXO;自动选币的钱包很乐意把你的工资和矿池收益塞进同一笔交易。合并只在同一来源内部做,只在内存池接近 1 sat/vB 时做,而且集合要大到 3–8% 的盈亏平衡说得通。绝对不要在兑换前合并,也绝对不要「为了隐私」合并——那是反的。能避开整数金额就避开,因为结构失效之后,它是仅剩的几个兜底之一。源链藏不住你的时候,选目的链能藏住你的走廊:今天 100 USDT-TRC20 换 XMR 比现货贵 13.5%,那纯粹是每单固定成本的代价,是小额票的成本,不是隐私的成本。 (转错网络如何找回)

两条规则,一条硬一条软。共同输入所有权被攻击了十年,仍然接近证明;找零识别在普通区块上仍然只有四成准,而那些教程还在推荐的整数金额捷径,命中率不到 3%。第一条规则你退不出去,你只能决定哪些币允许同时出现。这个决定在钱包里就做完了,在兑换页面加载之前。

常见问题

合并 UTXO 能省手续费吗?

只在同一来源内部、且判断未来费率会涨时才值得。合并 20 个 P2WPKH 输入是 1,401.5 vB——今天 1 sat/vB 下 1,402 sat(1.08 美元),20 sat/vB 下 21.66 美元。盈亏平衡只要费率涨 8.5%(20 输入)、17.9%(10 输入)、3.3%(50 输入),但前提是你以后真的会一起花;一个一个花就是纯亏,而且这笔交易会永久公开「一个主体握有全部输入」。

全新的入金地址能藏住付款人吗?

不能。地址是新的,币不是。第 973,933 号区块里 3,532 笔付款有 659 笔(18.66%)花了两个以上输入,这些输入永久公开:出资的那些簇,就成了这个订单背后的簇。VeilSwap 每单给新入金地址、强制要退款地址(不带返回 400 missing_refund_address),所以地址本身没历史——但真正留痕的是那笔付款交易;而且如果你多单复用同一个退款地址,等于把新地址好不容易避开的那条链接又接回去。

为什么交易所提币到账时只是几百个输出里的一个?

因为交易所批量出币。第 973,933 号区块里有 13 笔输出数 ≥50 的交易,最多的一笔 151 个输出。你的提币只是这批付款里的一行,同批付给很多互不相关的地址,所以真正能识别你的是交易所自己的记录,不是链——链上只显示一批付款。这也是为什么一次提币给你的是一个金额已知、没有找零的干净 UTXO:它到账时就是独立的一枚,此后任何合并都是你自己做的,不是交易所做的。

准备好换币了吗?

无账户 · 无 KYC · 无邮箱

立即兑换
UTXO 合并与找零:地址聚类在什么时候失效 — VeilSwap