BOB:区块链研究实验室 | 闪电网络代码简化教程-可撤销交付交易part1

闪电网络的基本概念很简单。为进一步了解,将闪电网络交易流程作为javascript代码参考白皮书。

本篇文章的目标是解读可撤销交付交易,与白皮书的图5相对应。

轻量区块与交易结构

区块定义和交易结构如下:

区块仅包含先前区块的哈希和交易。同样Transaction仅包含Inputs和Outputs。

花费可撤销的7个步骤:

我将可撤销交付交易的所有流程分为7个步骤,如下所示。请注意,上面的图片上写有C1A或C1B等。

多签名资金

泰国汇商银行旗下资产管理公司推出基于CoinShares区块链股票指数的基金:泰国汇商银行旗下SCB资产管理公司推出SCB Blockchain支线基金,用于投资基于CoinShares区块链股票指数的景顺Elwood全球区块链UCITS ETF。CoinShares是欧洲最大数字资产投资公司,前不久刚收购Elwood的股票指数业务。SCB是泰国最大资产管理公司。CoinShares CEO Jean-Marie Mognetti认为SCB推出这一基金是对该指数采取的严格方法及其长期表现的认可。(PR Newswire)[2021/8/18 22:21:49]

构建C1a和C1b

万华区块链研究院CEO&Polkafund发起人槐熙城:IPFS的完善或将催生DAPP卓越发展的元年:金色财经现场报道,由西安市区块链技术应用协会主办,开源矿池、PolkaBase、金色财经联合主办,链上ChainUP、蚂蚁集群联合承办的“探索 · 创新 · 共赢Web3.0生态大会”于今日在西安盛大召开。

万华区块链研究院CEO&PolkaFund发起人槐熙城在会上表示,整个互联网经历了三个时代,Web1.0,只能被动的接收信息,没有办法通过设备或者是通过某一项单一的产品能够实现互联网的交互;Web2.0可实现交互,但是核心问题被这些众多的互联网巨头所垄断;Web3.0有了众多优秀的区块链项目,解决了信息孤岛的问题以及信任的问题,我相信会在3、5年的时间之内得以解决,这个时间可能会比我们想象的更快。

Web3.0的底层IPFS可使信息更快捷、更方便、更省成本的进行存储,随着IPFS的完善将催生出大量的DAPP。随着Filecoin不断推行,明年将会是DAPP的元年。[2020/12/19 15:48:05]

构建RD1a和RD1b

声音 | 中国政法大学教授:需要大力普及区块链知识:金色财经报道,中国政法大学区块链金融法治研究中心主任胡继晔表示,任何一个新的事物出来,往往会有人来借着这个新生事物进行活动,尤其是区块链对于普通公众来说显得“神秘而高大上”,于是就有人利用人们一知半解同时又想一夜暴富的心理来“空手套白狼”。此外,他表示,对于监管部门来说,各相关监管部门应该建立协调机制,尽快制定和完善规章、规范性文件,完善立法与监管;同时,对于普通投资者要进行适当性管理,设立必要的门槛,如科创板、新三板都设立了门槛。力争将借着区块链制造的局消灭在萌芽之中。在热潮中保持冷静的思考,不能让区块链像P2P一样一哄而起,最终一地鸡毛。胡继晔表示,要想防,最重要的是千万不要听信忽悠。另外,也需要大力普及区块链知识,要让普通投资者知道什么是区块链,核心内容到底是什么,消除老百姓对于区块链的误区。[2019/12/5]

C1a和C1b的交换签名

公告 | 国家公共信用信息中心发布2019年课题研究征集公告 含区块链内容:据国家发改委官网消息,国家公共信用信息中心发布2019年课题研究征集公告,内容含有“区块链在社会信用体系建设中的应用”,研究要点为研究充分利用区块链技术的不可篡改、去中心化等安全特性,以及共识机制、智能合约等技术特性,提出区块链信用信息服务体系的构建方式,来支撑建设信用画像、精准奖惩等多样化社会信用体系应用。[2019/3/6]

花费C1b

花费D1b

花费RD1b

起初,Alice和Bob创建了2to2多重签名。?

Alice在这个'redeemScriptHash'上存储比特币。

Alice和Bob已经分别存入0.5比特币作为创世块。因此,Alice花费0.5比特币到?fundmulisig上。

我不能运行比特币操作码,所以我将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?

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

地球链

区块链COX:GCOX 遴选通道正式命名为 GCOX Sparkle

亲爱的GCOX用户: 非常感谢您提交作品来为我们推出的GCOX遴选通道命名。经过为期一周的精心挑选,我们在此祝贺分别赢得5个ETH和1个ETH的“最佳命名奖”和“最佳创意奖”获奖者,以及将均分5.

[0:15ms0-0:540ms