闪电网络的基本概念很简单。为进一步了解,将闪电网络交易流程作为javascript代码参考白皮书。
本篇文章的目标是解读可撤销交付交易,与白皮书的图5相对应。
轻量区块与交易结构
区块定义和交易结构如下:
区块仅包含先前区块的哈希和交易。同样Transaction仅包含Inputs和Outputs。
花费可撤销的7个步骤:
我将可撤销交付交易的所有流程分为7个步骤,如下所示。请注意,上面的图片上写有C1A或C1B等。
多签名资金
Web3区块链软件提供商Chain与NBA热火队建立广告合作伙伴关系:10月31日消息,Web3区块链软件提供商Chain与NBA迈阿密热火队建立广告合作伙伴关系,作为其官方Web3/区块链基础设施合作伙伴。Chain将成为第一家将其标志印在热火队篮球服上的公司,此外,Chain将与NBA球队一起参与社区节目,在球队的社交媒体平台和比赛日元素的数字内容中占据显著位置。[2022/10/31 12:01:40]
构建C1a和C1b
构建RD1a和RD1b
C1a和C1b的交换签名
花费C1b
声音 | 国家智慧城市标准化总体组秘书长:区块链在智慧城市当中新的场景应用是城市治理非常好的手段:金色财经报道,“2019新浪金麒麟高峰论坛”于11月28日在北京举行,国家智慧城市标准化总体组秘书长、中国电子技术标准化研究员高工刘棠丽演讲表示,智慧城市要用到新一代技术,以人工智能、物联网、互联网为代表,物联网和互联网还不太一样,都需要存在,移动端,移动现在有5G,未来可能还有6G、大数据等等这些新技术,包括区块链在智慧城市当中新的场景应用,这个也是我们城市治理非常好的手段,因为其实城市治理在未来的阶段,可能就是一个城市自主运行的智慧化的、智能化的程度,它有自动的解决问题的能力,可能它能作为决策层的决策辅助工具,这些也是新技术施展空间的模式、未来的发展趋势。[2019/11/29]
花费D1b
动态 | 前中央情报局情报官员称区块链对国家安全构成威胁:据unhashed报道,前中央情报局情报官员Andrew Bustamante表示对区块链技术及其对国家安全的影响有很多担忧。Bustamante表示区块链技术很脆弱,51%的攻击、价格操纵以及各种漏洞已经多次被利用。[2018/12/25]
花费RD1b
起初,Alice和Bob创建了2to2多重签名。?
Alice在这个'redeemScriptHash'上存储比特币。
Alice和Bob已经分别存入0.5比特币作为创世块。因此,Alice花费0.5比特币到?fundmulisig上。
亚美尼亚将为区块链开设自由经济区:亚美尼亚将为区块链项目的发展开设一个自由的经济区。亚美尼亚区块链论坛(ABF)向亚美尼亚总统塞尔日·萨尔基扬(Serzh Sargsyan)和政府工作组提交了一个创建自由经济区的计划。亚美尼亚共和国经济发展和投资部部长Suren Karayan表示:“这一举措的实施将有助于该国高科技项目的发展,使亚美尼亚成为国际舞台上的技术领先者之一。吸引国内投资,创造就业机会。 毫无疑问,这将进一步推动该国经济的发展。”[2018/1/16]
我不能运行比特币操作码,所以我将scriptsig和scriptpubkey定义为JSON格式。?
以同样的方式,Bob为multisig提供资金,现在mulisig持有1比特币
构建C1a和C1b
使用Alice和Bob之前创建的两个事务,Alice构建C1A。请注意,C1Awitch类型的第一个输出是“RSMS”。确切的名称是可撤销的序列到期合同。这需要花费2个签名。由此,一个将创建可撤销的交付,另一个是输出。
Bob还不签字。一旦Bob签名,Alice可以立即花费这笔交易。在Alice恶意和Alice不签署RD1A的情况下,Bob将永远失去0.5比特币,因此Bob不应签署。
Json格式scriptSig和scriptPubKey如下。请注意,我在scriptSig中包含redeemScript以支付multisig基金。?
在同样的方式下,Bob构建C1b。
构建RD1a和RD1b
RD1A有时间锁。如果Alice想使用C1A,则要在锁定期结束之前,Alice无法收到0.5比特币。我将时间锁定指定为3,以便Alice需要等待3个区块的确认。另一方面,Bob可以立即收到0.5比特币,因为D1A没有时间锁。
顺便说一下,在实际的用例中,时间锁可能是1000s。
请注意,TxIn中的上一个事务是空的。因为C1a尚未花费,所以无法计算事务哈希值。为实现这一目标,闪电开发团队提倡新的Opcode为SIGHASH_NOINPUT
请注意,RD1a是由Bob签署的。Alice需要将RD1a交给Bob并让他签名,以便RD1a需要Bob的签名。
Json格式RDscriptSig如下,这包含时间锁定。?
以同样的方式,Bob构建RD1b。
C1A和C1B的交换签名
Alice收到Bob签署的RD1a,以便交换C1a的签名。Alice将C1a交给Bob让他签名。现在,Alice可以随时使用C1a。
以同样的方式,Bob让Alice签署C1b。
花费C1b
让我们考虑一下Bob花费c1b的情况。Bob自己签署c1b。验证完成后,Bob转移C1B并添加到区块链。
花费D1b
Alice可以在没有任何时间锁定的情况下花费D1b,因为multisigfund的比特币被Bob用作C1b交易。如果Bob是恶意的并且不与Alice合作,Bob可能会在没有Alice协议的情况下花费C1b。对于这种情况,Bob承担时间锁定。
花费RD1b
起初,Bob试图立即花掉RD1B。但由于时间锁定,结果是失败的。
在添加了2个区块之后,Bob可以成功地使用RD1B,因为时间锁已经过期。?
好的,本章节到此结束,下一节我们将会继续讲解;?
本文转载公众号:区块链研究实验室,专注区块链技术,产品社群,经济模型等全方位的知识体系输出,为大家带来不一样的社群学习体验。欢迎联系作者微信加入社群:csschan1120?
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。