技术评测-ArcBlock:试图一同江湖的网络层 实现难度比较大
ArcBlock被誉为区块链3.0的项目,其中最主要的原因就是想基于目前的公链,构建一个性能提升、使用友好、数据跨链交换的网络层,完善区块链底层建设。
众所周知,目前区块链公链性能相对比较弱,对于部署商业级应用仍然存在远远不足。同时,目前的公链对于开发者而言,每次使用公链都是需要收费的;对于使用者而言,过多的新概念导致用户友好性低。并且每条公链承载的DAPP,由于公链之间无法联通,导致数据是无法跨链的。正是这样的需求,ArcBlcok希望构建一个二层网络解决这些难题。
技术解决方案
区块基石(ArcBlcok)平台通过创新的革命性设计解决上述问题,提供了一个结合区块链和云计算技术的完整解决方案。ArcBlock同时利用通证经济机制,驱动内在角色共同发力,从而形成完整的生态体系。
从架构来看,ArcBlock是个二层网络,在ETH、BTC、EOS等基础公链上再抽象一层,形成了一个能够多链访问、性能提升、提供类似互联网访问体验的协议层。通过“开放链访问协议”(Open Chain Access Protocol)链接多个区块链公链,从而实现跨链。并利用“基石程序”(Blocklet)提供的高层协议,实现任何语言开发,并提供由于虚拟机的运行性能。
截图来自:ArcBlock 的高层概要架构图
时间:2019年5月12日
开放链访问协议(OCAP)
对应结构层中的Open Chain Access Layer。这一层协议用于访问底层公链的抽象接口。利用开放链访问协议,可以与底层公链交互数据。因此,在这一个层次,利用开放协议额代理就能完成跨链访问,打通数据孤岛。
基石程序(Blocklet)
基石程序就是上图中的Blcoklet,分为账户和合约两层。基石程序是一个高层协议,底层就是与开放链访问协议(OCAP)交互,上层服务与分布式应用。基石程序本质上也是一条高性能公链,采用的是Algorand为基础的共识算法,并能通过与链下数据交互,架起链上链下的数据桥梁。通过高性能的基石程序(Blocklet)就能够完成调用不同的底层公链,并且提供的互联网级别的开发与使用体验,降低了使用门槛。
简单而言
简单来说,ArcBlock就是构建了一套通证经济机制,并通过这套激励机制驱动生态中的角色。其提供的服务,其实就是底层公链和上层Dapp之间的中间协议层,通过降低开发门槛、使用门槛,从而提高了生态的用户体量和流量,并激发开发者聚焦在应用场景上。
代码进度状况
查阅ArcBlock的代码情况。我们利用开源的Github查看目前的开发状况:ArcBlock项目的Github
截图来自: ArcBlock项目的Github
时间:2019年5月12日
我们点开最近更新的forge-js仓库,可以看到更新频率:
截图来自: ArcBlock项目的Github
时间:2019年5月12日
从截图可以看到,更新频率比较正常。从19年1月的第一周更新开始,基本周均迭代基本在20次以上,最高达到80次。这是比较正常的状况。并且这还只是一个代码库,还有几个正在更新的,如forge-react-starter,forge-elixir-sdk等。
而观测代码更新量:
截图来自: ArcBlock项目的Github
时间:201 9年5月12日
我们可以看到每周迭代的代码量也是比较大的,每周增删代码达到了20k以上,最高达到100k行。
因此,实际技术开发仍然在稳健地运营,并且更新的频率和更新量都是比较上乘的水平。
总结
总的来说,ArcBlock是一个定位在未来的项目。通过为底层公链与Dapp层之间搭建了一个中间层,不仅实现了跨链、预言机的相应功能,并致力于降低开发门槛与消费者使用难度,这是值得肯定的需求。但笔者相对比较担忧的是,目前这个实现难度仍然是非常大的,整个二层网络要建成如此完整的生态,其实是非常难的。并且从方向上,区块链服务层是一整套类似ArcBlcok的一体解决方案,还是仅仅只会跨链这样的形态,如波卡和Cosmos,仍然是存在比较大的不确定性。毕竟要一统江湖,里面还有各大门派的利益斗争牵扯,可想难度之大。