跳转到正文
buybitcoinsmart

术语表 /闪电网络与 Layer 2

PTLC

又称点时间锁合约、点时间锁定合约。

PTLC 是什么?
PTLC 将付款锁定在椭圆曲线上的一个点而非哈希上,因此闪电网络路由中的每一跳看到的锁各不相同,无法认出同一笔付款出现过两次。

点时间锁合约(PTLC)无需共享哈希即可完成 HTLC 的工作:每一跳都有各自的锁,由曲线上的一个点派生而来。它们依赖 Schnorr 适配器签名,该技术在 Taproot 于2021年11月在区块709,632激活后,才在比特币上具备实用性。对付款方而言,好处是路由节点不能再识别出同一笔付款经过了它们的两台机器。

运作方式

适配器签名是故意缺少一部分的签名,缺少的这一部分就是付款秘密。

先从收款方说起:收款方选定一个秘密数字,只公布与之对应的曲线上的点。按照 BIP340 的 Schnorr 规则,付款方可以构造出一个本身无效的签名,而一旦加上那个秘密数字,它就立即生效。因此,公布完整的签名就会泄露这个数字,而泄露这个数字,正是上一跳得以补全自己的签名并领取资金的条件。这一连锁效应与 HTLC 相同,但没有任何哈希运算,也没有任何共享内容。

隐私来自调整(tweak)。付款方在每一跳给这个点加上一个随机偏移量,并在洋葱数据包中告知每个节点它自己的偏移量,因此第三跳和第七跳面对的是同一笔付款的两个互不相关的点。这堵住了关联性泄露,也堵住了虫洞攻击:在该攻击中,同一路由上两个串通的跳点绕过它们之间的诚实节点,独吞这些节点的路由手续费。只要还有单个哈希贯穿整条路径,这两个问题都无法解决。

还有一项在纠纷中有用的额外好处。对于哈希合约,原像只能证明付款发生过,却无法说明是谁付的款,因此是薄弱的证据。点合约生成的签名,只有付款方自己的密钥才能针对该发票生成,这才是通常意义上的付款证明。

在哪里会遇到它

您目前还看不到 PTLC,如实说明这一点正是本条目的要旨。

Taproot 提供了所需的基础,主要的闪电网络实现也已推出 Taproot 通道,但这些通道仍然路由哈希合约。剩下的工作是协议层面的衔接:携带每一跳调整值的洋葱载荷、更新后的承诺交易,以及各实现之间必须达成的互操作共识。在这些完成之前,任何自称在闪电网络上具有隐私性的钱包,所说的都是洋葱路由,而不是不可关联的跳点。

对购买比特币的人来说,这件事的影响有限而具体。如果您持有闪电网络余额,并且不希望大型路由运营方勾勒出您的消费情况,那么 PTLC 就是值得在钱包版本说明中留意的升级。PTLC 上线后,您的密钥、助记词备份和链上比特币都不会有任何变化。

PTLC vs HTLC

PTLC 和 HTLC 提供同样的保证,即多跳原子付款,区别在于中间节点能获知什么。哈希合约沿整条路由广播同一个标识符;点合约则给每一跳一个在其看来随机的值。实际来看:HTLC 是当今的闪电网络,运行良好;PTLC 在隐私和付款证明方面严格更优;而切换是规范和实现层面的问题,不是比特币共识层面的问题,因为共识部分 Taproot 已经完成。

请勿混淆

常见问题

现在可以使用 PTLC 吗?

不可以。Taproot 已于2021年11月激活,Taproot 通道也已推出,但主要的闪电网络实现仍然路由哈希合约,因此 PTLC 路由仍是一个规范和实现项目。

PTLC 能让闪电网络匿名吗?

否。PTLC 阻止路由节点通过共享标识符把同一笔付款的各跳关联起来。您的通道对手方仍能看到金额和时间,钱包服务商也可能仍然知道您的身份。

相关术语

闪电网络与 Layer 2中的更多术语

阅读本页英文版