重点整理
机密交易(CT)使用密码学技术在区块链上隐藏转帐金额,同时仍允许网路参与者验证没有建立新的硬币,从而维持可互换性并防止对交易价值的链上分析。
核心机制依赖 Pedersen 承诺(加法同态加密)结合 Bulletproof 范围证明;这些证明可在不揭露实际金额的情况下确认金额为非负。
机密交易已在比特币侧链(例如 Liquid)上以量产形式上线,并把概念延伸到「机密资产」,同时也隐藏被转移的代币类型。
基于 CT 的设计在交易大小与验证成本上面临取舍,因此通常会部署在专用侧链,或是与其他扩容解决方案结合,而不是直接用在比特币主网。
简介
系统透明度常被视为区块链运作的关键。网路中的每个节点都能储存分类帐(ledger)的副本,并验证是否有任何规则被违反。对于许多分散式帐本,任何人都可以透过区块浏览器(block explorer)搜寻区块、交易与地址。
在隐私面向上,这种透明性可能带来挑战。以比特币这样的系统来说,每笔交易都能追溯到先前的交易。硬币在技术上并非完全可互换(fungible),因为每枚硬币都能被连结到特定交易。没有人能阻止你寄出比特币,但若这些硬币先前曾通过被标记(flagged)的地址,接收方可以拒绝接受该交易。
比特币中的隐私有时被过度夸大。使用者享有化名性(公开地址可见而非真名),但进阶分析技术可以把地址聚类,试图辨识网路参与者。提出让交易真正私密的加密方案之一是机密交易(confidential transactions)。
什么是机密交易(Confidential Transactions)?
机密交易(CT)最早由 Blockstream 执行长 Adam Back 在 2013 年提出,后来由比特币开发者 Gregory Maxwell 扩展。Maxwell 描述了上述的隐私与可互换性问题,并提出解决方案:被转移的金额可以从更广泛的网路中遮蔽,只有交易双方知道实际转了多少。

在一般情况下,节点很容易验证收到的金额不超过送出的金额。若 Alice 要把 0.3 BTC 送给 Bob,她会取一个未花费的输出(例如 1 BTC),并把它拆成两部分:0.3 送给 Bob,0.69 回到自己作为找零(剩下的部分则作为挖矿费用被放弃)。
这对其他节点来说是直接的算术:1 大于 0.3 + 0.69,数位签名都正确,且 Alice 的输入尚未在其他地方被花费,因此交易必须是有效的。然而,当金额被遮蔽后,验证就不那么直观了。节点要如何判断一个未知金额,是否等于或大于其他两个未知金额的总和呢?
所涉及的密码学概览
要隐藏资料,就需要加密。然而,传统加密方式就像把文件放进保险箱:一旦锁进去,除非把资料取出,否则就无法使用。机密交易所需要的是一个数位保险箱:其中内容不会被揭露,但保险箱的性质可以被外部人士验证。
Pedersen 承诺
答案在于同态加密,特别是一种称为 Pedersen 承诺的方案。这种承诺允许外部人士对加密的资料(他们看不到)执行数学运算,以在不获知底层数值的情况下验证正确性。
一般的杂凑(hash)可以用来承诺你之后想揭露的资料。例如,你可以先发布你预测的杂凑,之后再透过展示原始输入来证明你预测了什么。然而,如果可能输入的空间很小,攻击者可以直接尝试所有选项,直到找到匹配。这个问题透过在杂凑前把资料加上一个称为「遮蔽因子(blinding factor)」的随机值来解决。
Pedersen 承诺更进一步:它能让承诺之间进行算术运算。形式上,对金额 v、遮蔽因子 r 的承诺 C 会被计算为:C = vG + rH,其中 G 与 H 是椭圆曲线的生成点。关键特性是加法同态(additive homomorphism):
C(v1, r1) + C(v2, r2) = C(v1 + v2, r1 + r2)
这表示节点可以在从不看到实际金额的情况下,验证输入承诺的总和等于输出承诺的总和。
范围证明与 Bulletproofs
Pedersen 承诺本身存在一个漏洞:由于它们使用模数运算,一名使用者可以承诺一个负值,并利用同态性质,实际上「凭空」创造硬币。范围证明(range proofs)透过零知识证明来解决:证明承诺金额落在有效范围内,而不揭露实际金额。
Bulletproofs 是机密交易系统中范围证明的现代标准。它们相较于较早的方法有几个优势:证明大小会以对数方式成长,而不是随范围大小线性成长;多个范围证明可以汇整成单一紧凑证明;而且它们不需要可信设定(不像某些基于 SNARK 的系统)。实务上,每一笔交易的输出都附带一个 Bulletproof,使得任何节点都能确认承诺金额是非负的并且在界限内,在保有供给一致性的同时也让金额保持私密。
机密交易在实作中的应用
虽然机密交易尚未被采用在比特币主网,但目前已在一些专用网路中以量产方式上线:
Liquid 侧链
Blockstream 的 Liquid Network 是一个联邦式的比特币侧链,将「机密交易」以及「机密资产(confidential assets)」作为一等公民功能来实作。机密交易使用带有 Bulletproof 范围证明的 Pedersen 承诺来隐藏转帐金额。机密资产则更进一步:同时把被转移的资产类型也予以遮蔽,因此观察者无法判断一笔交易是否涉及 L-BTC、代币化证券、稳定币或其他已发行资产。
Liquid 的目标是为交易所、场外(OTC)交易商与交易公司之间的机构结算提供服务;在这些场景中,商业机密性很重要。一个由相关人员组成的联邦会管理 peg-in/peg-out(资产进入/退出)流程与区块签署,牺牲一部分去中心化以换取更快的速度与隐私特性。
其他实作方式
一些其他协议使用由 CT 衍生的技术。MimbleWimble 将机密交易结合透过称为「cut-through」的流程来最小化交易图(transaction graph):移除已花费的中间输出并压缩区块链状态。Monero 则使用 RingCT(结合环状签名与机密交易)并搭配隐匿地址(stealth addresses),以同时遮蔽送出者、接收者与金额。
选择性揭露与检视金钥
现代的 CT 实作愈来愈多地支援选择性揭露机制。交易参与者可以把遮盲金钥(blinding keys)或专用的检视金钥(viewing keys)分享给稽核者、合规服务商或监管机关。这使得可以针对特定交易进行私密审查,同时不会让资料在链上公开可见,形成「对公众而言私密、对授权方而言透明」的模型。
监管环境与合规型隐私
区块链隐私的监管环境已大幅演进。欧盟的《加密资产市场法》(MiCA)规范以及 FATF 的旅行规则(Travel Rule)都要求加密资产服务提供商(CASPs)搜集并传送转帐的原始方与受益方资讯。虽然这些规范主要针对服务提供商而非加密原语本身,但它们会间接对高隐私资产施加压力。
在受到监管的司法管辖区,交易所常常会下架或限制那些无法有效进行 AML 监测的资产。这特别影响到具备完整交易图(transaction graph)遮蔽的隐私币。然而,监管机关通常对于能够从公众端隐藏商业资料、同时又对受监管实体提供可选择(opt-in)的透明度的系统,表现出相对更多的容忍。
近年来的主流走向是「合规型隐私(compliant privacy)」:结合零知识证明与身分验证(identity attestations)。使用者可以证明自己已完成 KYC 或不在制裁名单中,而不需要在链上揭露身分细节。带有检视金钥的 CT 类设计能自然融入这个框架:预设私密,但在法律要求时可被验证。
机密交易能够达成什么?
机密交易解决了几个实务上的问题:
商业机密性:企业可以在公开的区块链上进行交易,而不需要向竞争对手揭露交易规模、付款金额或资金流向。
可替代性(Fungibility):当金额被隐藏时,链上分析无法追溯特定硬币的历史或「污点(taint)」,因此所有单位在实务上都可视为彼此可互换。
降低前跑风险:在 DeFi 与交易情境中,隐藏金额可防止观察者侦测并利用大型待处理交易。
监管相容性:与完全匿名系统不同,搭配检视金钥的 CT 能在满足稽核与合规需求的同时维持公众层面的隐私。
至于机密交易是否会直接整合到比特币主网,目前在近程内仍不太可能。由于每个输出都附带 Bulletproof 范围证明,CT 交易的大小远大于标准交易。考量到比特币的区块容量有限,以及对协议变更采取保守态度,部署在侧链与专用网路仍是较务实的路径。
常见问题(FAQ)
什么是 Bulletproofs?为什么它们对机密交易很重要?
Bulletproofs 是一种零知识范围证明,可在不揭露金额本身的前提下,证明一个被承诺的值落在有效范围内(非负且不过度大)。它们之所以重要,是因为它们体积紧凑(证明大小为对数级成长),不需要可信设定,而且可以把多个输出之间的证明汇整到单一证明中,让机密交易在真实世界的使用成为可行。
机密交易与 Zcash 这类零知识证明系统有什么不同?
机密交易会特别使用 Pedersen 承诺与范围证明来隐藏金额,同时保留地址可见性。像 Zcash 这样的零知识系统,其 shielded pools 可以同时隐藏送出者、接收者与金额,但需要更复杂的 ZK 电路(例如 Groth16 或 Halo2)。CT 是更聚焦于「价值隐私」的原语,而 shielded 系统则在更高的计算成本下提供更广泛的匿名性。
机密交易是否合法?
本身的加密技术在大多数司法管辖区并未被禁止。像 MiCA 与旅行规则这类法规,是针对服务提供商(交易所、托管机构),而不是针对底层的加密方法。然而,若服务提供商上架使用 CT 类隐私的资产,可能会面临更强的合规义务,特别是关于交易监控与通报。
为什么机密交易没有被加入到比特币主网?
主要障碍是技术面的:由于范围证明的存在,CT 交易的体积远大于一般比特币交易,会占用有限的区块空间。要导入 CT 也需要进行共识层级的协议变更(soft fork 或 hard fork),而这要求整个社群达成广泛共识。考量到比特币相对保守的开发文化与现有区块空间限制,侧链部署仍是更偏好的作法。
什么是检视金钥(viewing keys)?它们如何支援合规?
检视金钥是加密金钥,允许被指定的第三方(稽核者、监管机关、合规服务商)在不需要资料在链上公开可见的情况下,解密机密交易中被遮蔽的金额。交易参与者可以有选择地分享这些金钥,从而在维持一般公众隐私的同时进行私密审查。此机制把「链上机密性」与「监管需求」之间的落差连接起来。
收尾想法
机密交易代表一种已被充分理解的链上隐私加密方案:在「隐藏价值」与「网路可验证性」之间取得平衡。透过 Pedersen 承诺与 Bulletproof 范围证明,CT 系统能让节点在不需要得知交易涉及金额的情况下确认交易有效性。.
延伸阅读
对称式与非对称式加密
什么是全同态加密(FHE)?
用零知识证明提升加密透明度
什么是工作量证明(PoW)?
什么是端到端加密(E2EE)?
免责声明:本内容以「现况(as is)」提供,仅供一般资讯与教育用途,且不提供任何形式的声明或保证。内容不应被解读为金融、法律或其他专业建议,也不旨在推荐购买任何特定产品或服务。你应向合适的专业顾问寻求自己的建议。若内容由第三方贡献者提供,请注意其所表达的观点属于该第三方贡献者,且未必反映 Binance Academy 的观点。数位资产价格可能波动。你的投资价值可能下跌或上涨,你也可能无法取回所投资的金额。你完全自行负责你的投资决策,而 Binance Academy 不对你可能蒙受的任何损失承担任何责任。如需更多资讯,请参阅我们的使用条款(Terms of Use)、风险警示(Risk Warning)与 Binance Academy 条款。
