在上一篇文章中,Alice 和 Bob 建立了一个双向的支付通道。现在,Alice 想要给一个第三方 Carol 支付 1 btc。
一般来说,Alice 和 Carol 需要在彼此之间开设一个支付通道。但实际上并不需要。因为 Bob 和 Carol 之间已经有了一个通道,所以 Alice 可以通过 Bob 给 Carol 支付。
具体来说,Alice 可以给 Bob 支付 1 btc,而 Bob 再支付 1 btc 给 Carol。
但是,Alice 实际上并不信任 Bob,或者 Carol 并不信任 Bob。她担心把钱给 Bob 之后,Bob 不会给 Carol;又或者,他把钱给了 Carol,但 Carol 谎称自己压根没见到钱,而 Alice 也不知道该找哪个来追责。
前SEC主席:Gary Gensle观点明显偏离了对政府职能的理解:金色财经报道,前SEC主席Jay Clayton表示,美国现任SEC主席Gary Gensle观点明显偏离了对政府职能的理解。除非政府确信自己会获胜,否则政府不应采取法律行动。Gemini交易所联合创始人Cameron Winklevoss同意这一观点,他称Gensler的行为完全滥用权力。[2023/6/30 22:10:15]
因此,Alice 希望能保证,仅当 Bob 给了 Carol 1 btc,自己才需要给 Bob 支付 1 btc。
当 Alice 要给 Carol 支付 1 btc 时,她让 Carol 先生成一个秘密值(一个随机的数字串)并把对应的哈希值发给她。Alice 也告诉 Carol 可以用这个秘密值跟 Bob 交换 1 btc。
Lido DAO提议变更治理系统,引入面向质押者和LDO持有者的双重治理解决方案:6月18日消息,Lido DAO提议变更Lido治理系统,以“减少其代币持有者的现有治理范围”。虽然Lido DAO目前部署在以太坊上,但LDO持有者对其他链上的流动质押协议拥有治理权力,包括Polygon和Solana。
在该DAO当前的多链治理系统下,LDO持有者有与其他链相关的激励,“不一定与以太坊网络参与者的激励相一致,”Lido的智能合约开发者Sam Kozin在一篇博客文章中写道。
为了解决这个问题,Lido团队提出了一个双重治理解决方案,提议引入“一种针对质押者和LDO持有者之间不当激励的争议和解决机制”。(Blockworks)[2022/6/18 4:36:02]
与此同时,Alice 把从 Carol 处得到的哈希值发给 Bob,并告诉 Bob 如果 Bob 能提供对应于这个哈希值的原始值,她就会给 Bob 1 btc(这个原始值当然只有 Carol 拥有)。
声音 | Galaxy Digital创始人:不确定自己是否理解山寨币的涨势:Galaxy Digital创始人Michael Novogratz发推称:“我不确定我是否理解山寨币的涨势。我为那些靠它赚钱的人感到高兴。但我不确定有什么东西改变了。”[2020/1/16]
所以 Bob 找到 Carol,用 1 btc 换来了 Carol 的初始值。
然后,Bob 找回 Alice,提供这个初始值。Alice 因此知道了 Bob 一定给过钱了,也就是 Carol 肯定已经收到了 1 btc,于是就把钱给了 Bob。
皆大欢喜。
几乎,啊,几乎是皆大欢喜。
在这种 “过家家” 的情形下,中间人 Bob 还是需要新人 Alice 和 Carol。Bob 必须相信 Carol 给他的是一个真正有用的值(不然钱都给了就拿不回来了),而且要相信 Alice 真的会给他 1 btc,假如他能提供对应于哈希值的原像的话。
声音 | INE熊羽睿:正确理解“无币区块链”:近日,INE熊羽睿表示,区块链的核心价值之一,是“可信账本”,这个账本上记录的东西一定不要是扰乱全球社会秩序的黑产,而是世界、区域、国家有共识的价值。目前数字货币、加密货币、数字证券等等模糊概念的东西,正在被真正的人类罪恶所利用,走向光明正大还有很长的征程,而区块链要能顺利落地运用,必须规避传统法币秩序、证劵流通、税收等红线,借助区块链的可信账本,打造“可信积分”体系,设置流通边界,用于“价值循环、使用权通证、税外价值激励、中间渠道摩擦成本、系统燃料、产能租用、税后资源流通”等等提高价值流通的经济作用。可以预见的未来,基于技术稳定的公链基础上的数字资产,将针对不同国家体系、不同运用领域特征的子母TOKEN体系同步运行。[2018/12/25]
这时候,我们就需要哈希时间锁合约(HTLC)啦!
哈希时间锁可以让 Alice 和 Bob 用秘密值来交换 btc(当然 Bob 和 Carol 也需要这个,但我们先按下不提)。
为了使用哈希时间锁,Alice 要将 1 btc 发送至一个新的多签地址,而非直接发送给 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 那里拿到 1 btc。Bob 可以将从 Carol 那里拿到的秘密值在链上公开,发送至他与 Alice 的哈希时间锁合约,然后取走多签地址上的 1 btc。这两个状态通道有效地关联了起来。
最后要强调的一点是,Bob 必须在有效期内从 Carol 那里拿到秘密值,否则 Alice 就有可能取回多签地址上的 1 btc。如果等 Alice 取回 1 btc 之后 Bob 才从 Carol 那里拿到了秘密值,Bob 就会被卡在中间进退两难。因此,Bob 和 Carol 的哈希时间锁合约必须比 Alice 和 Bob 的先到期(例如,前者的时限可以设成 10 天,而非两周)。这就是为什么哈希时间锁合约需要 CheckLockTimeVerify(绝对时间锁)而非 CheckSequenceVerify(相对时间锁)。
最后还有一个问题需要解决:要保证闪电网络的可用性,所有这些必须在链下完成。具体是如何实现的将在本系列第三篇文章中揭晓。
原文链接:
https://bitcoinmagazine.com/technical/understanding-the-lightning-network-part-creating-the-network-1465326903
作者:?AARON VAN WIRDUM
翻译&校对: 闵敏?&?阿剑
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。