您现在的位置是:首页 > RChain > RChain资讯网站首页RChain资讯

如何实现世界电脑——RChain的一揽子解决方案

  • Atticbee
  • RChain资讯
  • 2019-08-13
简介RChain给出的答案是一个一揽子解决方案,全面解决可扩展性、可组合性、安全性等一系列问题。如果你是区块链爱好者,对很多项目有所研究,读完就会知道,下面列举的这些解决方案,市场上绝大多数项目都无法做到哪怕其中的一点。

在前文 《为什么说rchain可能是唯一一个攀对了科技树的公链项目》 里提到,区块链的愿景就是创造一台世界电脑。这个电脑不由任何人控制,没办法被关机/墙,在上面做了什么事情没法回滚、篡改。很多公链项目,都号称自己的愿景就是建造一台这样的世界电脑。但是他们的提出的解决方案真正能实现这个愿景吗?我们可以换位思考一下,换做你来设计这样一个世界电脑,需要完成怎么样的设计目标?
 
RChain给出的答案是一个一揽子解决方案,全面解决可扩展性、可组合性、安全性等一系列问题。如果你是区块链爱好者,对很多项目有所研究,读完就会知道,下面列举的这些解决方案,市场上绝大多数项目都无法做到哪怕其中的一点。
 
答案一:并发、异步的合约执行和共识机制
 
合约并发执行、并发出块,是分片内性能扩展的前提,其效果相当于很多条虚拟链在同时运行。而现有的绝大多数公链项目,都采用了图灵机计算模型,都是不可扩展的。详情可见:【Greg】为什么区块链必须是高并发的?
 
异步非阻塞的出块,则让大数据上链也成为可能。RSong就是一个RChain上的示范应用,歌曲数据直接上链而不用通过IPFS。市场上的绝大多数公链项目,都无法做到这一点,大型数据只能存放在链下、IPFS或者侧链中。根据奥卡姆剃刀原则,能用一条链解决的,就不用两条,否则复杂的跨链协作会白白损失性能,增加系统复杂性和出错概率。
 
RChain之所以能很容易的做到这点,因为它的理论基础Rho演算脱胎于计算机科学中专门为分布式并发系统建模所创造的Pi演算体系。
 
答案二:业务逻辑导向的分片
 
RChain有基于名字空间的分片。分片是区块链水平扩展的前提。而世界电脑加上名字空间,类似给这个电脑加了一个目录结构,各种不同性质的业务按照目录树进行组织,每个目录/名字空间可以对应一个应用场景进行优化。
 
比如存储电影的分片,不需要太高的去中性化,我们希望存储成本低,这样最好的方案是配置少数几个地理上接近的节点。如果涉及到钱的应用,如defi,我们希望这些dApp在一个去中心化程度很高的名字空间上跑。如果是去中心化交易所,我们希望名字空间内节点不要太多(可以保证高性能),同时绑定的代币金额很大,尽可能在不牺牲性能的情况下保证安全性(类似EOS)。
 
RChain之所以能够建立这种灵活的分片机制,因为它独创性的Rho演算理论在Pi演算的基础上加入了反射,从而使得建立名字空间、在各个分片中搬运代码成为了可能。
 
答案三:反应式合约体系
 
现有的项目几乎都是主动式的,需要外界触发才能执行。RChain的合约是反应式的,类似于Excel表的公式,一旦依赖的条件触发就会自动执行。许许多多这样的合约可以组成一个复杂的相互协作的体系,就像那些复杂的Excel表一样。
 
答案四:基于类型系统的快速形式化验证
 
RChain基于Rho演算,是进程演算的一种。进程演算天然比图灵机更加适合形式化验证。进程演算可以直接做逻辑推导来形式化证明命题了,图灵机则要麻烦很多,成本要高很多。RChain的形式化验证可以通过类型系统自动进行,你的合约通过了类型检查,自然就满足了这个类型对应的命题。
 
注意这里的类型指的不是传统语言里的静态类型,比如整数、字符串、列表这种,而是对代码的动态行为进行归类的行为类型。详情可见:RChain的一键形式化验证:关于RCast 33 – LADL话题的讨论摘要
 
形式验证是对于区块链非常重要,现在的IT业界对这块不重视,因为传统中心化系统中代码可以不开源,还有很多沙箱、防火墙等机制重重保护,即使被黑了交易还可以回滚,所以马工可以快糙猛的写完代码,实现功能以后测试一下就行了。但区块链是没有防护的,一旦被黑了钱就回不来了,除非硬分叉。合约的安全不是99.99%和100%的关系,而是0%和100%的关系。你的代码通不过验证,黑客总是可以用模型检查器找出反例,一个反例就是一个可能的攻击途径。
 
答案五:链上合约的编排,可以形式化验证的合约并发交互
 
上面说的是单个合约的验证。实际上不光要验证单个合约,以后很多合约在并发环境下交互也要进行验证。这个更加复杂。RChain上的合约,这种验证容易很多,因为进程演算具有可组合性,验证一堆合约的交互和验证单个合约没有本质不同。但是基于图灵机的项目,一堆合约在并发执行的条件下的验证就复杂了,因为虚拟机自带状态,一堆自带状态的合约相互交互,验证起来非常麻烦。
 
个人觉得,链上合约的安全的大规模交互能力是一个真正的杀手锏,具有无与伦比的网络效应,一旦铺开,就会形成很深的护城河和“赢家通吃”的局面。
 
注: 本文不构成任何投资建议
 

原文链接:https://mp.weixin.qq.com/s?__biz=MzU2ODg1ODI0OA==&mid=2247483771&idx=1&sn=195ec064afd470d757e5e5db56b2aad5&chksm=fc86c29ccbf14b8a852205004fc61b375ff0357d93067af0d3ce1c7710d1926cda9d4269c613&mpshare=1&scene=23&srcid=&sharer_sharetime=1565706984639&sharer_shareid=ffb79aea479e965630220924cd69c223#rd

文章评论

    共有条评论来说两句吧...

    用户名:

    验证码:

Top