自从Defi热潮席卷以太坊,导致以太坊拥堵,Gas费用创历史新高。我们一直以来关心的以太坊扩容的现实问题:在以太坊2.0尚未推出,更为贴合实际的Layer2方案有望解决以太坊的扩容问题。
这次,分布式课堂邀请了Celer团队的Michael着重讲述「链下」技术,它们包括状态通道、Plasma、RollUp等。
,获得计算机硕士学位。Michael目前在Celer负责对于区块链技术,特别是各种二层扩容技术的研究,他参与了通用状态通道、状态守卫者侧链(SGN)以及HybridRollup等的核心设计和开发工作。)
状态通道
优点:延迟低,实时性高
缺点:用户人数有限,资金利用率低
用途:小额支付/预测市场/球赛马
一般情况下是双方会在链下建立一个状态通道,通过交换私钥进行签名以后的信息,并在链下进行交易。当时比特币比特币实现了名为闪电网络的支付通道网络,把这个状态通道互相连接起来:即使用户没有直接状态通道,也可以通过几个中间节点把它一一层一层地转发过去,相当于channelnetwork。
Filecoin官方:“矿工立即卖掉千万枚FIL”至少被夸大10倍:Filecoin官方核心成员通过Slack社区表示最近的文章当中提到矿工在主网上线之后立即卖掉了千万枚FIL是“严重夸大”的。她表示:矿工在能够卖出FIL的情况下卖掉一定数量FIL并不让人惊讶,但是我们估计实际的数量是报道中提到数字的1/10到1/100。在声明中她同时指出测试币直接可以当做FIL主网币使用是特殊设计,并非“bug”,这是为了确保网络的安全性。[2020/10/21]
基本上,状态通道的延迟能做到互联网的延迟。比如说服务器之间的延迟是多少,这个状态通道的延迟就是多少。市面上通过其他链发送交易的速度是秒级的。但是状态通道的话,一般都是毫秒级的。另外,它还有一个优点就是实时性非常高。
状态通道是一种scaleup的手段。scaleup的意思是用技术手段线性地将区块链扩容,比如说像分片。比如说以太坊2.0要启动64个分片,然后它的容量就增加了64倍。而对于状态通道来说,他现在能支持1000个用户同时在线,未来可能最多支持到64000个用户,这个数字还是很低的。
尽管状态通道的scaleup是说你节点数量越多,你的网络越大,你的容量越大。这只是一个很美好的设想,实际上它受到了一个很大的限制——lowliquidityutilization。状态通道是要这个双方都把这个钱存到链上的通道,之后再互相进行发送支付。第一步,就是要把钱存到链上去,这个钱是有限的。就是你比如说手上你有1000个以太,状态通道只能发送1000个以太。如果你突然发送一笔2000以上的以太,它就无能为力了。
动态 | “矿机按斤甩卖”上百度热搜 现排名第二:11月21日,“矿机按斤甩卖”上百度热搜,现排名第二,搜索量达44万。最近,数字货币市场暴跌,比特币接连创下年内新低,导致许多矿机机型的挖矿成本骤升。[2018/11/21]
因为容量可以扩容,然而资金流动性却没有办法扩容。如果一个用户给另一个用户发送一大笔钱,那中间每一个转发的节点都要有这么大的容量,在现实生活中是不太可能的。等大家把这么多钱都锁到一个状态通道里边,如果只能用状态通道转发的话,这个效率是非常低下。
状态通道只能支持小额支付。像闪电网络其实并不大,可能和资金利用率低是有关系的。另外,把一般的dAPP搬到状态通道是相当难的。我们曾经尝试把五子棋搬到状态通道上。尽管我们写了sdk,让别的项目的开发去用,他们还是觉得这个开发是相当难的。
另外,状态机只适用于这个固定的人数。就是你要把uniswap放在状态机上是不现实的。因为在这个dAPP的用户是无限量的,没有一个固定的用户集。即使你把棋类游戏或是稍大的PC游戏搬到状态通道上,这些游戏也必须写成状态机的形式。他们每一个状态的转移,要非常清楚地写出来。
理论上,你可以把任意单机游戏都搬到状态通道上。但现实中没有人会去这样做,除非你是非常不信任游戏服务器。一般来说,预测市场以及球赛马,是可以搬到状态通道上的。
手机挖矿APP“矿世太空”开放创世名额:由原百度、平安核心技术团队打造的区块链产品“矿世太空”,近日开放9999名创世名额。矿世太空是一款区块链生态价值增值应用,收益将可用于兑换丰富优质Token、峰会门票、真实矿机等。[2018/4/28]
侧链
优点:代码和数据独立
不增加主链的负担
缺点:安全性弱
侧链的本质就是在这个基础层上再搭一个链,然后用完全另外一套验证人。它的整个安全性是分开的:主链有主链的安全性,侧链有侧链的安全性。
主链从POW转到POS会有更强的安全性,但侧链的验证人偏少,安全性也较弱:比如说Cosmos才只有100个验证人。
侧链的TPS取决于它的验证人。验证的人数越多,它的TPS会越低。侧链的延迟是相对低的,比状态通道的毫秒级高一些,比主链的十几秒几十秒延迟低很多。
状态通道的安全性就是双方互相签过名,就具备主链的安全性。只要一方做恶,另外一方都可以提交到主链,把它这个争议解决掉。而侧链的话就是你要信任多数的验证人是好人,所以它的安全性要比主链低很多。
Rollup/Plasma
近25494枚ETH转入Uniswap:金色财经报道,Whale Alert数据显示,北京时间10月27日06:34,25,493.615枚ETH从0x767e开头未知钱包地址转入Uniswap,目前价值约999.65万美元,交易哈希为:0x1e09d5b5ad61fcc41c14ed7be49f898a5da070ac064ea68203642e76ca976f42。[2020/10/27]
Plasma:缺点是无法应用到智能合约上
用户跑节点的负担重
RollUp:优点是数据在链上,
可以随时验证
链下支付可以用任何代币支付
而链上支付只能用ETH
Rollup是19年慢慢火起来的一个概念。和Rollup类似的Plasma,是以太坊上也是V神认为大有希望的一个解决方案。Plasma的问题是它只能够把支付做好,对于稍微复杂的智能合约却无能为力。作恶的一方是不会把数据给你提交上链,以至于这种争议至少要等两个星期才能解决。这个过程是对于用户来说难以接受的。另外,由于Plasma的数据都在链下,用户跑plasma的节点负担是很重的:你跑的时间长了,就会消耗几十个G或者几百个G,是手机无法承受的。
19年有人提出了RollUp,在我看来是一个中间道路。RollUp就是链下的计算+链上的数据+Fraudproof。然后它最关键的一个点就是不是所有数据都在链上,它的链上数据仅仅限于它每一笔交易的输入,但不包括它的最终状态。比如说,你从a走到b,我只是把路径告诉你了;但是你具体在a做了什么事,在b做了什么事,这种状态是记录在链下的。
任何人任何用户都可以去看RollUp的区块,也就是打包后的交易,然后把它这个状态的转移重新更换。如果状态转移是错的,用户就可以在链上提交Fraudproof,并将验证人淘汰掉。因为验证人在链上是有质押的,如果他作恶的话,他的质押会被没收掉。且虽然不是每一笔Rollup都会进行验证,但是验证人会一直跑,一旦发现有Fraud,就可以拿到相应奖励。这个过程可以理解为任何人都可以进行抽查以及督察。
他的好处是数据都在链上,可以任凭用户随时去验证,不会出现像plasma那样的数据可用性问题。且验证的结果具有唯一性,验证人链下把这个智能合约跑一遍,就会发现验证链下的计算是否按照链上的智能合约。从经济学角度来说,一般的验证人不太会去做恶,因为他的质押额太大了。
RollUp和Plasma其实非常类似。只是Rollup把数据放到链上去,FraudProof的过程会非常简单。Rollup的TPS会在主链的几百倍左右,一般是在几百上千的级别;根据不同业务,如果应用简单一些的话,应该可以做到几千级别。而plasma的TPS最高能到上万。
OptimisticRollUP/ZKRollUp
OptimisticRollUP:
可以支持通用的智能合约
缺点:需一到两周时间去跑证明
ZKRollUP:可以支持支付以及DEX
缺点:耗内存和CPU/无法支持智能合约
离落地还有时间
OptimisticRollUP从技术来说要比ZKRollUp简单很多。它的好处是可以支持通用的智能合约。ZK和Optimistic的区别是,FraudProof变成了ValidityProof。这两种验证方式相当于两种不同的思维方式:OptimisticRollUP是乐观思维,就是说相信验证人是不会做恶的;ZK是悲观思维,相信验证人还是会作恶的,所以要生成一个零知识证明,然后和RollUp一起打包到链上去。大家去验证不需要跑状态转移,因为这个转移已经通过零知识证明跑过一遍了。
这就类似法律上的举证证明,是自证清白还是别人证明你是好人。ZKRollUp相当于自证清白。其实,Optimistic和ZK都牵涉到一个最终性的问题。OptimisticRollUP的最终性是比较长的,用户没有跑过这个证明,提现期需要一到两周。这期间系统会给足够多的窗口,让足够多的人去验证这个事情。ZK不会碰到这个问题,因为一旦它的零知识证明上链,它的最终性也就确认了。
那么ZKRollUp的问题是什么呢?它对于这个节点要求是非常非常高的。ZKRollUp就是耗CPU和内存,并需要很强的服务器去做这个打包。而OptimisticRollUP对于打包者的要求并不那么高。唯一要求的就是验证人在链上质押来保证不会作恶。
由于这个ZK的复杂性,导致它目前只能用于一些特定的应用:比如说像那个支付和DEX。另外ZK还包含了零知识电路,它是密码学中非常新的概念,目前存在安全隐患的可能。
HybridRollUp
避免了中心化的问题,引入了侧链做打包人
HybridRollUp是结合了侧链和RollUp。我们发现了一个问题打包者可能很中心化,比如说路印。而ZKRoll因为对打包者要求很高,它的中心化问题更加严重。这会引发一个问题:假设路印的服务器到期以后,机器就会发生宕机,交易所会进入提现模式,相当于变相被解散。为了预防这种风险,我们牺牲了一些TPS,引入了侧链的验证人。
HybridRollUp的好处:第一,不会出现打包人只有一个以及单点故障这个情况,因为这需要一个侧链共同去打包。第二,作恶的可能性更小了,因为需要所有节点共同加强才能去作恶。且安全性是双重的:侧链以及RollUp的双重安全性会防止有人作恶。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。