宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > 中币 > 正文

如何利用虚拟通道来创建状态通道网络

作者:

时间:1900/1/1 0:00:00

在本文中,我们介绍了一种叫作虚拟通道的新型状态通道结构。虚拟通道不仅使得付费文件流等新型应用场景成为可能,还可以简化去中心化的Graph查询支付、Filecoin内容检索、带有经济激励机制的状态提供者网络等有趣的应用场景。

动机

让我们来设计一个免信任的付费文件流支付系统。这个系统中有seeder和leecher。leecher从多个seeder那里付费下载一份文件的不同部分。使用以太坊主网交易来支付费用是不可能的,因为以太坊主网的吞吐量低于每秒50笔交易,而且最低转账成本也在2美元以上。OptimisticRollup和ZKRollup可以提高吞吐量并降低交易成本。StarkEx的ZKRollup可以将吞吐量提高至每秒3000笔交易,同时将每笔交易的成本降至0.03美元。假设leecher愿意支付1美元下载1GB大小的文件,且整个文件以256KB为单位切分成了多个部分,leecher需要支付大约5000笔费用。当网速为20MB/s时,用户每秒支付80次费用,且每笔费用为0.0002美元。Rollup的吞吐量达不到许多leacher的要求,而且交易成本还是太高了。

为了达到交易吞吐量和成本要求,基础状态通道是个不错的选择。状态通道创建完成后,leecher就可以免费进行多笔小额付款,且吞吐量只受leecher和seeder之间通信信道的带宽以及二者所使用硬件的影响。基础状态通道带来的挑战是,leecher需要提交交易到主网上,与每位拥有他所需文件部分的seeder都建立状态通道。由于leecher与多位seeder都需要短暂交互,创建多条状态通道的成本是极其昂贵的。

虚拟通道可以完美解决我们的设计问题。虚拟通道尤其适用于轴辐式拓扑结构。多位参与者先与一个免信任的中间方建立连接,然后任意两位参与者再通过质押的方式创建私密通道。中间方并不知道私密通道内运行的是什么应用。另外,任何参与者都可以发起链上挑战找回自己的资金,即使通道内的其他参与者和中间方处于离线状态或作恶。

恒生电子:联盟链的创新空间应集中在如何更好地服务中小和小微企业方面:金色财经报道,6月23日,恒生电子区块链发展部运营经理林晗做客金色财经举办的“联盟链-创新场景应用的偶然与必然”为主题的金色沙龙第64期活动。林晗表示中国的区块链研究和专利成果,从一开始就比较集中在区块链技术的应用和落地,也就是产业区块链方面。现阶段联盟链适用于与具体细分产业相结合的场景,比如说产业金融领域,例如产业金融区块链平台范太链。联盟链的创新空间应是集中如何利用区块链解决小微企业的信任问题、更好提升小微企业运营效率来开展。因为区块链能解决的一个核心痛点是信任问题,与本身就具有信任背书能力的大企业相比,在产业中往往是小企业才需要解决信任问题。区块链作为一种划时代意义的记账技术,其最大的价值是应该被用来与实体产业结合,促进社会发展。[2021/6/23 0:00:23]

通过虚拟通道连接各方

总的来说,只要Alice和Bob之间有经过中间方的路径,无论网络拓扑结构是什么样的,虚拟通道都可以让Alice开设与Bob之间的私密通道。

背景知识

不同的区块链生态系统都将状态通道视为一种可以让少数参与者:

建立链上联系并存入资金;

私下交换信息,有条件地在参与者之间转移资金;

关闭链上通道,完成各方之间资金结算的方法。

我们之前已经在statechannels.org网站上发文介绍了如何构建状态通道,以及如何通过一个叫作账本通道的架构让一条状态通道为另一条状态通道提供资金。这些架构要求通道参与者必须在链上建立直接联系。换言之,如果Alice和Bob之前从未交互过,现在却想开通状态通道,他们必须签署协议,并将资金存入合约内。

但虚拟状态通道可以实现以下应用场景:

Alice与免信任的中间方创建状态通道。假设这个中间方叫作Irene。

Bob同上。

在Irene以及创建好的通道的帮助下,Alice和Bob可以创建一条新的私密通道并存入资金。创建这个私密通道不需要通过链上交互。我们将Alice和Bob之间的通道叫作虚拟通道。

大咖零距离 | 如何通过消息面获取市场暴利:2月19日16:00,金色盘面邀请数字货币正规军TLAB Terry做客金色财经《大咖零距离》直播间,将分享《如何通过消息面获取市场暴利》,敬请关注,欲进群观看直播扫描海报二维码报名即可![2020/2/19]

就付费文件流这个应用场景而言,Alice先要通过主网交易与中间方Irene创建一条通道。接着,她可以通过虚拟方式与任意数量的对等节点相连,只要后者与Irene之间也存在链上通道。一旦连接成功,Alice就可以持续支付数据下载费。

我们的协议Nitro可以实现以下应用场景:

帮助Alice和Bob创建虚拟通道的中间方Irene实际上不在这个虚拟通道内。Irene只是帮忙创建通道,并在通道关闭时结算资金而已。因此,Alice和Bob之间可以实现完全私密的交流,并将Irene排除在这个应用的关键路径之外。更重要的是,Alice和Bob可以在私密通道内运行多个不同的应用,无需Irene针对这些应用实现任何新的逻辑。因此,虚拟通道是通用可编程的多跳状态通道,因为每条状态通道都可以根据自己的一套“规则”来创建。Alice可以向Bob付费购买某个文件内容。Bob也可以向Alice付费进行Graph查询。

所有Nitro通道都是可组合的。因此,获得资金的通道可以通过递归的方式为其它通道提供资金,无论前者是通过何种方式获得资金的。一旦某条通道获得资金,它就可以运行任何应用或为其它通道提供资金。

Nitro的替代方案

其它协议可以让两位参与者无需在链上存入额外资金,即可通过中间方创建通道。一个成熟的模式是,使用经过哈希的时间锁通过中间方将Alice的付款路由给Bob。这个模式有一个很明显的缺点:所有付款必须通过中间方路由。

一些比较新颖的架构可以让Alice和Bob通过中间方创建通道后实现点对点付款。然而,这些架构依然需要中间方理解Alice和Bob所运行的应用,因为通道余额最终要通过中间方取回。有了Nitro虚拟通道,中间方就可以被隔离在Alice和Bob之间的通道外。

通道内部的资金转移

本文将深入介绍Nitro通道是如何获得资金的,以及免信任的安全虚拟通道是如何实现的!

动态 | Block.one 总裁发文阐述区块链如何解决银行的 KYC 和 AML 问题:据 IMEOS 报道,Block.one 总裁 Rob Jesudason 十分钟前发文《How Blockchain Offers an Answer to Banks’ KYC and AML Issues 》阐述区块链如何解决银行的 KYC 和 AML 问题。他认为区块链不是官僚或新闻中想象的监管雷区; 相反,它可以成为监管机构的资产。

文中提及在过去十年中,许多世界领先的银行都因反问题而被罚款,罚款总数达260亿美元之多。而在过去12个月中,监管机构如何考虑如何鼓励使用区块链技术方面取得了进展。区块链技术可以减轻数据模糊性并减少欺诈的可能性。如果所有银行都在区块链上,那么KYC和AML数据可以以安全,透明和无缝的方式在金融机构之间共享。[2018/10/16]

Alice和Bob之间的Nitro通道的资金来自:

Alice和Bob联合签署链下协议,使用特定的初始结果创建通道。

Alice和Bob按照初始结果指定的顺序存入资金,增加链上裁决者合约中记录的通道holdings。

这里的“结果”是一个指示裁决者在通道最终敲定时如何分配资金的结构在Nitro中,“结果”列出了{目标、数量}对的优先级:

{A:7,B:3}命令通道C的裁决者先将7枚代币支付给A,再将3枚代币支付给B,并将C的结果归零。

这么说有一点不准确:我们其实是按照字典中键的顺序在为目标分配优先级。因此,{B:3,A:7}会先付款给Bob,然后才轮到Alice。你可以将它看作是Python3.7+式的有序字典。

上图显示了Alice和Bob是如何根据{A:7,B:3}这一结果从通道C中取走代币的。根据链上裁决者的记录,通道中共有10枚代币。Alice或Bob将通道结果记录到链上。这个结果记录下来后,Alice和Bob就可以取走代币。于是,Alice的外部账户中增加了7枚代币,Bob的外部账户增加了3枚代币。

声音 | 加拿大央行副行长:加拿大央行正在考虑如何应对加密资产的风险:据温哥华太阳报报道,加拿大银行副行长Timothy Lane在卡尔加里大学Haskayne商学院讲话时表示:加拿大央行正在考虑如何应对加密资产的风险。[2018/10/2]

虽然上述结果暗示目标是用户账户,但是在Nitro中,通道本身也可以是目标。这样一来,通道L也可以充当“私密账本”,因为Nitro可以让一次性一次性将资金存入账本通道,然后为多条子通道提供资金。Nitro避免了回到Layer1的需求,以及由此产生的延迟和成本!例如:

假设C2是一条Nitro通道,{A:4,B:1,C2:5}命令裁决者向Alice支付4枚代币,再向Bob支付1枚代币,然后将C2的代币持有量增加5。

C1是账本通道,C2是从账本通道获取资金的通道

以上是一个简短的介绍。如果你想要深入了解Nitro,请查看我们的相关博客文章!

如何利用保证来实现免信任架构

接下来,我们将介绍当两位参与者没有链上关系时,如何通过一个安全的架构来创建三方通道。这个架构不仅能让账本通道为其它通道提供资金,还能实现虚拟通道。两位参与者分别是Alice和Bob,中间方是Irene。

我们首次尝试使用一个通道来连接A、B和I。请注意,这不是免信任型架构。

初始设置:三条独立通道。

首先要有一对账本通道L和L'。通常情况下,L和L'是早就创建好的。这是因为Irene存在的目的就是在人们之间建立连接——Alice可以使用L来同时连接Bob、Cheryl、David和Eve。如果L和L'不存在,L可以使用结果{A:4,I:6}创建,L'可以使用结果{B:6,I:4}创建。L和L'各自在链上存储10枚代币。

美国证券交易所:加密货币交易所没有透露是否对一些用户提供了优先服务 以及平台如何挑选加密货币:据华尔街日报,美国证券交易所今天发布了有关加密货币交易所存在不规范问题的公告。SEC在公告中表明,加密货币交易所存在非法运营的风险,这是因为他们没有透露如何优先考虑投资者的订单或如何选择在其平台交易何种加密货币。前SEC官员,现任由投资者支持的健康市场协会的执行董事Tyler Gellasch透露:“SEC不仅要管理产品,还要管理他们交易和交易的地点。”SEC没有在其声明中提及具体的加密货币交易所,但提醒投资者,监管机构对交易所的实际运作方式知之甚少,不知道它们是否为其中一些交易者提供了优先于其他交易者的服务。SEC表示,虽然其中一些平台声称采用严格的标准来挑选高质量的加密货币资产进行交易,但SEC并没有审查过这些标准。[2018/3/8]

另外还有一条独立通道J是使用结果{A:4,B:6,I:10}创建的。请注意,在向通道存入资金之前,参与者必须先就这一结果达成共识。一旦J有了资金之后,这条通道就可以用来为Alice和Bob之间创建的任意一条私密应用通道提供资金。

步骤1和2:账本通道转变为向J提供资金。

Alice和Irene将L的结果转变为{J:10}。Bob和Irene将L'的结果转换成{J:10}。

这个设计够好了吗?

Alice必须考虑以下几点:

Bob和Irene是不是可信的?

Alice无法控制L'上发生的事。

我们来思考一下步骤2之后如何取走J的资金。

L和L'的结果被记录到链上。

L和L'的资金都被转移到J。代币经由转账操作从一条通道转移到另一条通道。J现在有了20枚代币,可谓资金充足。

Alice可以从J中取走4枚代币,Bob可以从J中取走6枚代币。Irene可以从J中取走10枚代币。

漂亮!现在每个人都取走了自己应得的代币。但是,我们来设想一个场景:Alice和Bob串谋起来?Irene。假设步骤1发生后,Bob拒绝参与步骤2。然后就会发生以下情况:

L的结果被记录在链上。现在,J有了10个代币,记录在链上的结果是{A:4,B:6,I:10}。

Alice和Bob分别取走4枚和6枚代币。

请注意,Bob从J那里获得了6枚代币,尽管他自己根本没有向J转过代币。结果变成了:Alice获得了4枚代币,Bob获得了6枚代币,Irene什么也没有。Irene被坑惨了!

你可能会想,如果调换一下结果{A:4,B:6,I:10}中目标的顺序,就可以创建出一个安全的架构。然而,无论怎么调换顺序,总会有人蒙受损失!

保证是如何发挥作用的

在上述场景中,我们使用了转账操作在通道之间转移资金。通过转账操作,资金可以从一个通道转移到目标通道。在本小节中,我们将引入索取操作来将资金从目标通道转移至特定的目标地址1。为了实现索取操作,我们需要保证。

我们先来介绍一个新的数据结构。保证是指定以下的结果:

目标,即,一条通道;

数量;

优先级,即,目标的优先级列表。优先级的作用是指示裁决者如何改变目标通道的结果项的优先级。

我们第二次尝试使用一个通道来连接A、B和I。这次已经是免信任架构了

我们来看一下J是如何获得资金的:

初始设置:创建三个独立的通道。

通道J是使用结果{A:4,B:6,I:10}创建的。

L是使用结果{A:4,I:6}创建的。

L'是使用结果{B:6,I:4}创建的。

步骤1和2:账本通道转变为向J提供资金:

L的结果更新为{J:{amount:10,priorities:}。请注意,我们使用了一种新的符号来表明L的结果只有一项,即,包含目标J、数量和地址优先级列表的保证。

L'的结果是{J:{amount:10,priorities:}。

L和L'的结果各自包含一个保证。由于转账操作不支持这些保证,我们代之以索取操作。索取操作接受保证以及保证的目标通道作为输入。

我们来看一下索取操作是如何运作的。假设

J的结果{A:4,B:6,I:10}被记录到了链上。

L的结果{J:{amount:10,priorities:}}被记录到了链上。

如果有人请求执行L的结果中的保证,则会触发三个效果:

将4枚代币发送给A,6枚代币发送给I。

因为,A和I的余额在J的结果中被调整为{B:6,I:4}。

L的结果被调整为{}——保证被删除。

在这个操作中,优先级的目的是告诉裁决者跳过带有B的结果项,这样Irene就可以拿回她在创建L时出的那部分资金。因此,裁决者会先看到保证中优先级最高的目标A,并将4枚代币转给A,J的结果会相应更新。然后,裁决者才会看到目标I。在J的结果中,Irene应该获得10枚代币,但这时只剩下6枚代币。因此,这6枚代币被发送给了Irene,J的结果再次更新。请注意,优先级一定要是而非。如果优先级是,Irene就会通过索取操作获得10枚代币,Alice就失去了原本属于她的4枚代币!

有了索取操作,Alice和Bob再也不能串谋起来取Irene的资金了。

?最理想的情况

你可能已经注意到了,为了让Alice他们取回资金,总共需要3个链上操作:将联合通道和转账结果记录到链上,并调用索取操作。请注意,这是最糟糕的情况。假设Bob将4枚代币转给Alice后,Alice和Bob想要关闭J。如果Bob和Irene配合的话,则:

Alice、Bob和Irene同意以结果{A:8,B:2,I:10}敲定J。

Alice和Irene可以更新L,安全地删除为J提供资金的保证。L的结果变成了{A:8,I:5}。

现在,Alice可以使用L里的代币为其它通道提供资金了。Alice也可以选择取走资金。

总而言之,在协作式案例中,Alice可以使用L内的资金为多条不同的应用通道提供资金,也可以从这些取走资金,无需进行任何链上交易。

虚拟通道

在上一节中,我们已经介绍了如何在两个参与方不存在链上关系的情况下创建三方通道。细心的读者应该注意到了,更新J必须经过中间方签字。在本文的开头,我们打算在A和B之间创建一条私密通道。幸运的是,Nitro的可组合性让我们可以创建一条由J提供资金的私密应用通道X。具体架构如下图所示。你已经掌握理解这个架构所需的一切概念了。不过,如果你有任何问题,欢迎向我们提问!

X是一条虚拟通道

未来计划

本文介绍的虚拟通道架构是Nitro协议论文中介绍的架构的进化版。最值得一提的是,这个架构不需要创建专门的保证者通道。

Nitro虚拟通道即将引入另一个更新,免去对联合通道的需求。有了这个更新,账本通道L和L'就可以为应用通道X提供资金。

本文由MikeKerzhner和AndrewStewart基于TomClose所著论文《Nitro协议》撰写,感谢?RobertDrost、JosephChow、GeorgeKnee和ColinKennedy的反馈。

我们还可以将索取操作理解成:

将资金从L转入J,改变J的结果。

将资金从J转入目标地址。

如果账本通道的结果是{J:{amount:10,priorities:}且J的结果是{A:4,B:6,I:10},索取可以描述成:

将10枚代币从L转入J。

J的结果变成{A:4,I:6,B:6,I:4}

然后在J上调用面向A和I的转账。

标签:ALICEICELICALIALICE价格rice币官网alice币会涨到多少Californium

中币热门资讯
一周必读10篇 | 以太坊的单点登录 开启web3的重要一步

1.以太坊的单点登录开启web3的重要一步brantly.eth是一位以太坊社区用户,他最近提到“使用以太坊单点登录”概念。以太坊的单点登录可以为所有dApp或App提供登录服务。这引起蓝狐笔记的关注.

1900/1/1 0:00:00
晚间必读5篇 | 一张图建立起波卡学习的思维框架

1.Messari报告:2021年二季度Web3及NFT市场情况2021年7月8日,区块链数据分析机构Messari发布了2021年二季度的Web3及NFT报告。金色财经总结如下.

1900/1/1 0:00:00
波卡:是生不逢时还是真具风险?

截至2021年初以来,要说链圈最大两件事儿无非是ETH2.0向layer-2的折中过渡,以及随着插槽拍卖带来的波卡生态的全面爆发。在公链赛道上,波卡一直被给予厚望,币价也是一路水涨船高.

1900/1/1 0:00:00
金色趋势丨波动率降至低位 大波动即将到来

这轮312瀑布低点启动的行情,到目前已经持续了486天,走势整体震荡向上,一直见目前顶64850美金然后迎来了大调整,调整最大幅度接近56%,和以前牛市进程中的大调整相比属于正常范围,关键趋势支撑依旧发挥作用.

1900/1/1 0:00:00
国际清算银行:央行数字货币跨境使用尚存在一定风险

国际清算银行发布的关于央行数字货币的最新研究报告显示,大多数央行尚未对发行CBDC做出最终决定。超过25%的央行正在考虑可供非本国居民使用的零售型CBDC,而接近20%则对此持否定的态度.

1900/1/1 0:00:00
解构Web 3.0 价值互联网时代能实现“我的数据我做主”吗?

我们正处于Web3.0爆发的前夜,新概念、新项目层出不穷。但是,任何新技术的大规模应用都不会一蹴而就.

1900/1/1 0:00:00