这是第二篇解释闪电网络流程的文章。这一次,我将解释的是与白皮书图9相对应的违约补救措施。
花费违规补救措施的10个步骤:
由于第一篇文章应讲解前面4个骤,将不在本篇文章重新讲述。
-
多签名资金
-
构建C1a和C1b(No Sign)
-
构建RD1a和RD1b
-
C1a和C1b的交换签名
-
建立C2a和C2b(No Sign)
-
构建RD2a和RD2b
-
C2a和C2b的交换签名
-
建立BR1a和BR1b
-
花费C1b
-
花费BR1b
构建C2a和C2b(No sign)
结构与C1a相同。 请注意,2个输入也与C1a相同,因为此时C1a还没有花费。 此交易更新了Alice和Bob之间的比特币余额。 只有最终输出对比特币主网非常重要。 如果Alice花了C2a,比特币主网就无法察觉C1a的存在。
构建RD2a和RD2b
构建RD2a和RD2b几乎与RD1a和RD1b所需的过程相同。 请参阅上一篇文章中的RD1a和RD2b部分。
C2a和C2b交换签名
与C1a部分相同,Alice将C2a移交给Bob,让Bob签名。 现在Alice和Bob可以花费C2a和C2b。 如果Alice意外地花费了C1a,她就会失去所有的BTC,这样Alice就可以安全地撤销C1a。
以同样的方式,Bob让Alice签署C2b。
构建BR1a和BR1b
Alice建立BR1a并签名,然后将BR1a移交给Bob。 请注意,BR1a的输出是Bob的。 本质上,此输出属于Alice。
如果Alice不配合Bob,她花了c1a,甚至认为c2a和c2b已经交换了,Alice就会因为她的违约而失去所有的btc。
Json格式BR scriptSig如下。
以同样的方式,Bob把签名的BR1b递交给Alice。
花费C1b
Bob意外地花了C1b。 不幸的是,他永远失去了所有的BTC
花费BR1b
Alice可以在没有任何时间锁的情况下立即使用br1b。请注意,如果时间锁过期,Bob可以花费RD1b。所以,最好是Alice早点花掉BR1B。
好的,本章节到此结束,下一节我们将会继续讲解;
本文转载公众号:区块链研究实验室,专注区块链技术,产品社群,经济模型等全方位的知识体系输出,为大家带来不一样的社群学习体验。欢迎联系作者微信加入社群:csschan1120