理解闪电网络:如何构建闪电网络?什么是哈希时间锁?_BOB:Alien Pepe

在上一篇文章中,Alice和Bob建立了一个双向的支付通道。现在,Alice想要给一个第三方Carol支付1btc。

一般来说,Alice和Carol需要在彼此之间开设一个支付通道。但实际上并不需要。因为Bob和Carol之间已经有了一个通道,所以Alice可以通过Bob给Carol支付。

具体来说,Alice可以给Bob支付1btc,而Bob再支付1btc给Carol。

但是,Alice实际上并不信任Bob,或者Carol并不信任Bob。她担心把钱给Bob之后,Bob不会给Carol;又或者,他把钱给了Carol,但Carol谎称自己压根没见到钱,而Alice也不知道该找哪个来追责。

Maple Finance将重返Solana并开放其现金管理解决方案:8月21日消息,Maple Finance将重返Solana贷款池,并开放其现金管理解决方案。新产品为DAO和Web3公司等客户提供链上财务管理解决方案,简化了访问美国国债收益率的途径。

据悉,Solana生态稳定币发行商UXD、永续合约协议Drift和DeFi借贷协议Solend都已承诺使用该借贷池。[2023/8/21 18:13:42]

因此,Alice希望能保证,仅当Bob给了Carol1btc,自己才需要给Bob支付1btc。

Tether CTO:USDT竞争者太差,他们不理解这个市场未来的潜力:近日,在某线下活动中,针对主持人提出的“在2019年的纽约检察长办公室事件之后,Tether为什么依旧茁壮成长,依旧这么热门?”这一问题,Tether CTO Paolo Ardoino回应称:Tether被社区信任,每天有很多公司找我们,将大量的美金换成USDT。我们知道怎么服务好客户,我们知道怎么运作这个产业,是我们发明了这个概念,我们发明了它并且还在一直保持创新。我们也保持在其他区块链上发展,我们一直理解,区块链不能只取其一,而要共生共存。你只需要提供工具,如果你足够好的话。我们曾就Tether话题打过趣,不是因为USDT是一个完美的稳定币,而是竞争者太差了,他们不理解这个市场未来的潜力。(深链财经)[2020/4/30]

当Alice要给Carol支付1btc时,她让Carol先生成一个秘密值并把对应的哈希值发给她。Alice也告诉Carol可以用这个秘密值跟Bob交换1btc。

声音 | 德勤咨询区块链主管:建立必要的治理比理解和实现区块链技术更为困难:据华尔街日报报道,德勤咨询区块链主管Geoff Lougheed表示:理解和实现区块链技术通常比建立必要的治理更容易。希望在企业间建立区块链的领导者往往无法召集一个团队来决定利益相关者将如何操作区块链、定义其规则、设置治理指南,以及创建一个整体组织结构。但这些因素对于区块链的开发是不可或缺的,因为它们阐明了成员及其提供的信息之间如何互动。[2019/5/1]

与此同时,Alice把从Carol处得到的哈希值发给Bob,并告诉Bob如果Bob能提供对应于这个哈希值的原始值,她就会给Bob1btc。

声音 | 区块链能改变你对生与死的理解:6月30日,在乌镇的世界区块链大会上,比原链创始人长铗表示,区块链能改变你对生与死的理解,比如说比特币就有死币的概念。死币,它是打到一个谁也不知道私钥的地址上去,它就是随机发了一个地址,这个地址只要符合公钥的格式,就能成功转到这个地址,但这个地址的私钥谁都不知道,那这些币就“死”了,灵魂其实也是这样。是否存在灵魂地址呢?这是一个值得思考的问题。[2018/6/30]

所以Bob找到Carol,用1btc换来了Carol的初始值。

然后,Bob找回Alice,提供这个初始值。Alice因此知道了Bob一定给过钱了,也就是Carol肯定已经收到了1btc,于是就把钱给了Bob。

皆大欢喜。

几乎,啊,几乎是皆大欢喜。

在这种「过家家」的情形下,中间人Bob还是需要新人Alice和Carol。Bob必须相信Carol给他的是一个真正有用的值,而且要相信Alice真的会给他1btc,假如他能提供对应于哈希值的原像的话。

这时候,我们就需要哈希时间锁合约啦。

哈希时间锁合约

哈希时间锁可以让Alice和Bob用秘密值来交换btc。

为了使用哈希时间锁,Alice要将1btc发送至一个新的多签地址,而非直接发送给Bob。这个地址中锁定的btc可以通过两种方式解锁。

第一种方式是Bob将自己的签名和秘密值一起发送至该地址。

第二种方式是Alice将自己的签名发送至该地址。但是,这个方式存在?CLTV时间锁限制:Alice必须等待一段时间才能签署并广播交易取走这个btc。

也就是说,Bob有两周时间来创建一个包含签名和秘密值的交易,并广播该交易,将多签地址上的btc发送给自己。这样一来,这笔交易就有了保证。只要Bob能提供秘密值,他就能取走Alice的btc:在比特币网络公开广播该交易可以让Alice看到它。

如果Bob没有在规定时限内提供秘密值,Alice就可以取回她的btc。就这么简单。

再说回网络,因为这是哈希时间锁合约真正发挥作用的地方。

如上文所述,不仅Alice和Bob之间有哈希时间锁合约,Bob和Carol之间也有。因此,如果Carol向Bob索要btc,Bob也可以从Carol那里取得秘密值。这些在区块链上都是可见的。

因此,如果发生这种情况,Bob也一定可以从Alice那里拿到1btc。Bob可以将从Carol那里拿到的秘密值在链上公开,发送至他与Alice的哈希时间锁合约,然后取走多签地址上的1btc。这两个状态通道有效地关联了起来。

最后要强调的一点是,Bob必须在有效期内从Carol那里拿到秘密值,否则Alice就有可能取回多签地址上的1btc。如果等Alice取回1btc之后Bob才从Carol那里拿到了秘密值,Bob就会被卡在中间进退两难。因此,Bob和Carol的哈希时间锁合约必须比Alice和Bob的先到期。这就是为什么哈希时间锁合约需要CheckLockTimeVerify而非CheckSequenceVerify。

最后还有一个问题需要解决:要保证闪电网络的可用性,所有这些必须在链下完成。具体是如何实现的将在本系列第三篇文章中揭晓。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:78ms0-7:122ms