分类:比特币
如果我的理解没错,闪电网络其实存在一个有趣的特性:可以安全地花掉零确认收款。
Phoenix钱包就是这样:在没有预先打开任何通道的情况下,用户仍然可以直接通过闪电网络收款,然后立即就可以把收到的币花出去。
这个动作背后,就是ACINQ公司的节点自动打开了一个通道,然后,在零确认状态下,就立即允许用户使用这个通道。
先回到一切的开始:中本聪当初为什么提出“零确认不能直接计入可用余额”呢?
因为,交易都是一环扣一环的,如果前一笔交易有问题,那后续引用它的一串交易也会跟着全部被卡住,甚至被作废、丢弃。
有人曾经连续发出几笔这样环环相扣的零确认交易,然而,最初的那一笔零确认当初就碰到了问题,迟迟不能正常打包进链,导致后续发出的所有交易也都不能进链确认,于是他这样就“搞坏了自己的钱包”。
就是因为这件事,中本聪才提出:“零确认这种‘二等公民’不能直接计入可用余额。
如果我没记错,Bitcoin Core内置的钱包功能现在都还保留着这个限制,不提供花掉零确认收款的功能,即使修改钱包设置,也只允许用户花掉自己的零确认找零。
即便如此,花掉零确认找零后,也仍然可能被无关人员利用交易延展性进行攻击,导致后面跟随的交易可能作废、被丢弃。
(注意,Bitcoin Core全节点的内存池完全接受这种一连串的零确认交易,只不过是Bitcoin Core的钱包功能还保留了这个限制而已。其他钱包就有放开这个限制的)
隔离见证修正了延展性问题,可以让此类问题的暴露面大大缩小——因为无关人员不掌控私钥,所以一旦延展性问题被修正,他们就无法让交易的txid发生改变,也就无法破坏这种一连串的零确认交易。
但是,如果掌控有私钥的付款方自己想要进行双花,一旦双花成功,那还是会导致后续一连串交易全部被作废。
在闪电网络中,情况变得不一样了。零确认收款已经可以安全地花出去了。
根据BLW钱包开发者Anton Kumaigorodski提出的“秒速通道”(instant channel)方案,情况是这样的:
首先,这个“零确认收款”是哪来的?
“打开通道”和“给通道对端付款”这两个动作是可以一并完成的,闪电网络钱包把这种操作叫做push amount(推送金额)。
如果我收到了这样一笔付款,我立即就可以在闪电网络上把这笔钱花掉,不用等待打开通道的“入资交易(funding transaction)”进链确认。
其实,这种说法有点标题党:要保证这笔“推送”来的收款安全到账,还是逃不过要等待入资交易进链确认。
但是,在零确认状态下,花掉这个通道里的钱,也确实是安全的。
为什么通道对端愿意接受这种行为呢?
因为我没有机会作弊啊。
一般情况下,入资交易压根就没有来自我的输入,所以我本来就没有构造双花交易的能力,只有通道对端自己有能力双花。
如果通道对端进行了双花,也就是作废了这个通道,结果也总会是“我亏他赚”——因为,在这个通道内,我能花出去的钱全部都来自对端,我不可能花出更多的钱。
如果我也参与入资了,那在我花掉我入资的这部分金额时,通道对端转发我的交易确实是有风险的(我有能力“双花赖账”)——但是,他也完全可以在零确认状态下拒绝转发我的付款——正常情况下本来也就是这样。
如果我试图用旧余额状态关闭通道来作弊,那就更不用说了,对端可以直接罚没我的钱,结果还是我吃亏。
为什么我愿意这么做呢?首先,当然是因为快;其次,即使说通道对端可能双花作弊,这种风险也一直都存在,我用了这种技巧,风险也不会增加——相反,我面临的风险可以说还减小了——如果我把通道里的币几乎全部花完了,那即使通道对端双花作弊,我也几乎不会损失什么。
对于其他节点来说,他们压根就不在乎前面是不是有通道还没确认、入资交易有没有可能被双花,因为这对他们毫无影响,他们只需要照看好与自己直接相连的通道就行。
我最早是在BLW钱包上看到这种功能。既然Phoenix钱包也能实现类似的效果,我想,背后的原理和这个方案应该也是一致的。
上一篇:Just.game的新dapp 问题三点
下一篇:不确定因素不是来自比特币,而是来自世界经济形势
最新文章
- 20200909 Defi可以持续发展的项目应该是借贷和DEX,但引爆Defi却是挖矿
- 20200907 稳定币挖矿的 只要挖靠谱的矿 应该躲过一劫
- 20200831 技术派们管这叫“以横代跌”,听起来就很不错
- 20200826 一个人的投资风格很难改变,有人只囤比特币,有人只炒主流币
- 20200825 大家都看好以太坊2.0、波卡、Chainlink,是因为大家都有【美好的愿景】
- 20200822 1inch 联合创始人:不会进行 IEO,ICO,透露代币分配方式
- 20200820 TVL (Total Vaule Locked 锁仓总量)
- 20200819 Filecoin太空竞赛时间和规则敲定
- 20200815 现在就不缺的东西就是:钱
- 20200813 DMCH的生态系统设计理念