首页 > 区块链 > 关键词 > dApp最新资讯 > 正文

dApp达到App的体验,可能吗?

2019-11-18 14:20 · 稿源:蓝狐笔记公众号

区块链 未来

声明:本文来自于微信公众号蓝狐笔记(ID:lanhubiji ),授权站长之家转载发布。

在现实商业的应用场景,所涉及的计算是巨大,甚至有数万亿的逻辑步骤计算,要处理大量的数据,这在区块链上几乎是不可能完成的。

区块链的扩展问题是行业关注的焦点之一。因为,只有解决了扩展性问题,才能为区块链走向主流铺平道路。只有解决了扩展性问题,才能让dApp的用户体验达到App的用户体验水平,才能推动普通用户进来使用。

区块链是一个去中介化的无须许可网络,任何人都可以参与,这意味着区块链要达成共识,共识带来安全,但同时也带来了极高的成本:交易吞吐量小,交易处理时间长、费用高。

为了解决这些问题,目前有一层扩展和二层扩展的方案。一层(layer1)是横向扩展,目前主要有分片、共识机制的优化(如DPoS)等。二层(layer2)是纵向扩展,包括Plasma、状态通道、侧链等方式。迄今为止,有一些进展,但还不足以让扩展性发生根本性的改变。尤其是考虑到它们还无法满足dApp的扩展性需求,如游戏、社交网络等。这些dApp都无法真正一展拳脚,尤其是涉及到大规模计算时。

那么,有没有方案能够解决这些问题?能够让dApp达成App的体验?能够让普通用户真正使用上dApp,享受到dApp带来的好处?

蓝狐笔记最近关注到Cartesi项目的解决方案,让人印象深刻。它在二层(layer 2)上的扩展方案有自己非常独特的切入点,值得dApp开发者和整个区块链行业的关注。

Cartesi试图成为区块链的计算层

区块链主链上计算和存储的成本非常高,像游戏、社交、视频等领域的应用都无法在主链上直接运行。大规模的计算必须在链下进行。

那么,如果不是基于区块链运行应用,跟传统的App有什么区别?

这里的解决思路是,从实际场景的需求本质出发,而不是在技术上进行死磕,陷入死胡同。我们没有办法就所有事情都达成全局共识,而实际上,我们也没有必要就所有事情达成全局共识。

大多数情况下,我们只需达成局部共识。只有极其重要的数据才需要达成全局共识。大多数事情,往往都是小部分参与者之间才真正感兴趣的,只要这小部分参与者之间达成共识就可以了。比如,我们去超市买一瓶水,我们没有必要跟律师打电话,也没有必要让地球上的所有人都知道你买了一瓶水。只有在发生纠纷时才需要进行仲裁。

基于这种思路,产生了layer2 的解决方案,而Cartesi就是其中的一种解决方案。Cartesi不是公链,它是去中心化的通用计算平台,试图成为区块链的计算层,旨在为公链和dApp开发者提供通用计算服务。

Cartesi作为区块链的计算层,它将底层链智能合约执行所需的大量计算接手过来,让底层链发挥其安全特性,专注于价值存储和转移,专注于结算结果的存储;与此同时,dApp开发者基于Cartesi,可以使用熟悉的编程语言、工具、库、软件以及服务来开发dApp。dApp的大多数复杂计算逻辑都通过链下来解决,开发者只须专注于业务逻辑的构建,但与此同时,能够开发出类似于App体验的dApp应用。

有了其他layer2,为什么还需要Cartesi

Layer2 分担了layer1 的扩展性压力。layer2 的存在不仅是为了解决layer1 中全局共识资源高昂成本的问题,更是为了顺应这样的一种事实:并非所有的事情都需要达成全局共识。

只有跟该共识相关的群体才需要达成一种共识。部分参与者的协作可以在链下进行,但为了防止出现纠纷,一般情况下,layer2 的参与者需要在链下交互时存入押金,如果是以太坊链,一般会存入ETH。

通过质押资产,所有参与者在链下进行互动,然后将其互动操作的重要结果提交到主链,主链完成全局状态的更新。如果这个过程中,有任何参与者产生恶意行为,其他相关方可以向主链发起申诉以寻求解决。恶意行为一旦得到确认,恶意行为者的抵押资产可能会被扣除。

Layer2 的模式将layer1 不仅看作为价值存储和转移的地方,也视作为具有最高安全性的共识仲裁法院。而layer2 是各种局部参与者之间进行互动的地方,大家都受制于奖惩机制,受制于具有公信力的layer1 的制约。

Cartesi也有类似的思路,只须参与方才需要执行大量的链下计算,计算结果提交到链上合约进行验证,确保执行结果的可信。

虽然基本上layer2 都是这种思路,但Cartesi也针对layer2 的一些不足进行了改进。

比如layer2 方案要求主链可以解决可能出现的纠纷。有时候会出现糟糕的情况,比如需要在通道开启时,把大量计算传到主链,这些交易的关闭机制会限制最大计算量。Cartesi则允许Plasma或状态通道利用Cartesi的计算能力,也就是将计算通过Cartesi来解决,而不是转移到主链。在这些layer2 的解决方案中,如双方都需要密集计算才能完成争议处理,而主链很难解决这样的大量计算问题。

此外,Cartesi跟其他layer2 解决方案不同,它不一定要求dApp应用的各相关方同时在线。

这就是Cartesi相对于其他layer2 方案的不同之处,从本质上来说,它不仅是layer2 的解决方案,更是去中心化的通用计算平台,连接了公链和dApp的开发者,为双方提供计算服务。

Cartesi如何运作?

从整体的思路上,Cartesi跟多数layer2 方案有相似之处,不过在具体的解决方案上,Cartesi有它的独特之处。

  • Linux的开发环境

Cartesi推动了一种dApp的开发模式,它将dApp的开发环境提到了新的高度:转向了Linux开发环境。

Cartesi虚拟机旨在为dApp的大规模运行提供支持,所以,它要考虑解决当前智能合约虚拟机的问题。现有的智能合约虚拟机运算相对简单,比如执行账户余额的运算、计算哈希值或调用合约等。

而现实的商业应用需要能响应设备、分配内容、跟其他程序复杂交互、海量的计算执行等。有了操作系统的支持,这些应用可以有序运行。指令集体系结构和操作系统相互支持,硬件可以为操作系统提供硬件功能,操作系统通过这些功能来协同所有程序的运行。

当前的智能合约虚拟机还无法实现类似功能,它们并没有操作系统的支持。

为了解决这个问题,Cartesi引入了开源的RISC-V指令集体系结构,Linux内核已经移植到RISC-V上,RISC-V有成熟的编译器。

也就是说,Cartesi准备通过这种方式,将链外的计算能力引入链上。

同时,Cartesi节点还可以让dApp开发者在本地运行代码。在本地执行代码和在Cartesi虚拟机系统内执行代码,都会在Linux操作系统下运行。Linux可以提供复杂计算所需要的完整生态系统。

  • Cartesi虚拟机

基于Cartesi上开发的dApp包括链上和链下模块。其中链下模块在Cartesi节点内运行。当然,也可以在本地执行代码,但本地计算不可重现。要实现重现,必须运行在Cartesi虚拟机中,在Cartesi节点中执行代码。那么重点来了,这是Cartesi项目中需要关注的重点之一,它就是Cartesi虚拟机。

Cartesi虚拟机有两点值得关注:一是完全独立。二是计算可重现。它的独立性意味着可以实现确定性,无须担心外部输入以非确定性方式来改变机器的状态(键盘、时钟中断等)。它的计算可重现意味着其具有可信的特点。Cartesi虚拟机从相同的初始状态开始运行经过相同的处理器周期,最终会达完全相同的状态。

也就是说,Cartesi中的可重现计算运行在确定性的RISC-V虚拟机上。它受Cartesi节点控制,且自包含了Linux系统,节点通过一些确定的主机接口与Cartesi虚拟机进行交互。

对于Cartesi的dApp开发者来说,他们可以指定链下计算采用可重现的方式,Cartesi的节点会根据指定执行。dApp开发者可以请求节点提交计算结果,并在链上进行验证。在这种情况下,主链处理争议结果无须占用太多资源。

同时,Cartesi虚拟机需要考虑区块链的验证要求。为了实现可信,整体架构的实施必须容易审计和开放。这也是Cartesi采用RISC-V的重要原因。

RISC-V有很多社区开发者支持。他们搭建了软件的基础底层,如Linux操作系统的端口和GNU工具链。Cartesi虚拟机以确定性方式将其整个状态映射到物理内存。

Cartesi虚拟机的链下执行除了完成计算执行之外,还支持解决有关计算结果的争议。为了提供这些服务,Cartesi虚拟机的链下执行有可编程的接口。

Cartesi虚拟机也是透明的,任何人通过任一时刻的虚拟机状态,都可以预测下一个处理器周期指令完成后的状态。Cartesi的这种设计机制保证了可信计算。获得Cartesi虚拟机初始状态的不同各方在各自的Cartesi节点中运行Cartesi虚拟机都会获得完全一致的结果。Cartesi虚拟机的状态可以通过默克尔树表达,也意味着可以通过链上实现仲裁。

Cartesi虚拟机的链上和链下

其中链下Cartesi虚拟机主要由内存和各种驱动器组成。其中,Linux内核被加载到内存中,其中有的驱动器会包含Linux文件系统。驱动器被看作为Cartesi节点中的普通文件,Cartesi虚拟机将普通文件当作设备给Linux内核挂载,这些设备被挂载后,对于Linux下运行的程序来说,就相当于能读写文件和目录的文件系统。

通过默克尔树的状态哈希,Cartesi虚拟机将其状态在链上呈现。状态包括内存和驱动器、以及其他Cartesi虚拟机运行所需的内容。通过默克尔树的根哈希,可以判定局部的子状态是否正确。

  • 争议的解决机制

当dApp的参与方相互之间产生纠纷时,怎么办?首先,挑战方会存入抵押资产发起诉讼,如果被挑战方想要进行自我辩护,也需要存入同样价值的抵押资产。

然后双方陈述过程,链上通过根哈希状态的对比,进行判决。智能合约会查出双方在运行Cartesi虚拟机第一次产生不一致结果的指令。之后,智能合约通过在链上执行此条RISC-V指令,从而获得状态的根哈希,智能合约将其与双方的根哈希进行对比,这样可以判定谁的结果是正确的。

为了惩罚作恶者,获胜一方将获得对方的抵押资产。这可以防止作恶的行为。此外,在链上运行单个RISC-V指令相对轻松,因为查出第一次不一致的指令相对容易。链上的工作主要是保持哈希的更新,不用关心dApp的逻辑,也用不存储dApp的操作。同时,由于作恶存在成本,且也能被发现,这导致作恶行为会比较少见。

Cartesi与TrueBit

之前有个项目叫TrueBit,它也有类似的思考架构,将密集计算移至链下,并在链上进行验证来解决争议。虽然基本的思考架构类似,Cartesi跟TrueBit的具体解决方案存在不同。

TrueBit基于WebAssembly做的虚拟机,而Cartesi是基于RISC-V的指令集架构。前者是应用级别,后者是操作系统级别。WebAssembly会带来外部性,也就是不确定性,因为它用于应用间的协同、应用和用户或节点的操作系统的交互。而RISC-V更加底层,具有确定性。

此外,TrueBit更专注于智能合约计算能力的扩展,对运行环境更有约束,而真实场景的应用存在交互,Cartesi选择支持Linux的运行环境,RISC-V能提供更好的服务。

此外,在链下计算的动力方面,TrubeBit跟Cartesi存在很大差异。Cartesi的链下计算是依赖于智能合约背书,所有参与者都有责任执行链下计算,一旦出现争议,需要提交到链上解决。而TrueBit需要通过激励层的设计来解决纠纷。在TrueBit上,智能合约将计算的需求提交到由不可信方构成的市场,由其中的参与者执行链下计算并返回结果。为了保持成员的参与度,带有错误结果的计算诱饵会被投放到激励市场,这是相对低效的激励。

此外,Cartesi也考虑了应用中可能出现的大存储问题,通过Cartesi虚拟机,将代码和数据状态的哈希值提交到链上,计算只需在相关参与者节点中执行即可,这也使得Cartesi能够做到链下计算的跨链。这些是Truebit没有设计的。

Cartesi对于dApp开发者意味着什么?

Cartesi将密集计算从底层区块链中解放出来,将复杂的逻辑放到链下进行可重现计算。Cartesi虚拟机是确定性的计算模型,可以托管现代操作系统。Cartesi虚拟机上的标准工具链和操作系统是可用的。这为开发者提供了很多方便。

对于dApp 开发者来说,Cartesi意味着新的dApp开发范式。如果Cartesi能顺利落地,dApp的开发者们可以专注于业务本身的构建,而不用担心是否懂区块链的底层,因为dApp的开发者可以使用熟悉的编程语言和工具来开发dApp,这大大减轻了dApp开发者的研发成本。

与此同时,Cartesi节点为dApp开发者提供了大规模可信计算,开发者们可以使用可重现计算的Cartesi虚拟机。可信计算通过原语集成到公链智能合约,原语能够提供灵活性和复杂逻辑的计算能力。在Cartesi虚拟机计算中如出现有争议的结果,可以通过主链进行仲裁。

此外,由于大规模的链下计算,基于Cartesi构建的dApp可以实现在多个链上运行。

总言之,Cartesi对于dApp 开发者来说很友好,这将解锁去中心化应用的潜力,开发者能在熟悉环境下利用dApp的优势,构建出跟之前完全不同的应用。

结语

要想dApp达成App的用户体验,公链需要存储层和计算层的帮忙。关于存储层的项目,蓝狐笔记之前也提到过,这里不做赘述。而计算层方面也是值得关注的部分。

Cartesi的目标旨在成为区块链的计算层,为公链和dApp开发者提供去中心化的通用计算平台。

对于公链来说,Cartesi可以帮助其专注于底层链的安全和价值存储,帮助其构建更大的开发者生态;而对于dApp 开发者来说,基于Cartesi开发dApp,可以使用熟悉的编程语言和工具来进行开发,既能享受到dApp的优势,同时还能有App级别的用户体验。

随着区块链行业的深入发展,整个行业的生态拼图将会日趋完善,不仅有公链、dApp,也有为公链和dApp服务的存储层、计算层等。这些拼图相互补充和协作,最终推动区块链行业发生质变,从而将区块链的影响力提升到新的高度。

  • 相关推荐
  • 大家在看
  • 小米金融App正式更名为天星金融App

    今日,雷军宣布,小米金融业务“小米数科”品牌升级为“天星数科”,小米金融App 正式更名为天星金融App。

  • iOS14轻App在哪里 轻app使用方法介绍

    苹果iOS14系统加入了一个轻App功能(App Clips),这被不少用户认为是有点像小程序的功能,可以在不下载应用程序的同时,使用到该软件的核心功能,具体轻App要怎么使用呢,我们来一起看下轻App具体使用方法。

  • iOS14小组件app推荐 有哪些软件APP的小组件比较好用

    iOS14小组件成为了最受欢迎的一个功能,可以让很多应用的核心功能都直接呈现在桌面上,那么有哪些外观好看值得我们下载使用的APP软件呢,我们来一起看下吧。

  • iOS14App资源库可以编辑吗 app资源库怎么隐藏

    iOS14系统加入了很多个全新功能,比如小组件、画中画、双击背部截图等,都获得了不错的用户反馈,但是有一个app资源库功能却没有获得很多用户欢迎,不少用户想要删除app资源库或者隐藏,具体要怎么做呢,我们来看下app资源库能否被编辑隐藏。

  • iOS14小组件app推荐 实用好看的小组件app汇总

    iOS14新加入的小组件功能成为了新版本系统里最受欢迎的一个功能,这个功能可以让用户在iPhone桌面上自定义很多新的界面和功能,方便用户快速查看和启动一些功能,那么有哪些比较实用好看的小组件APP呢,我们来一起给大家推荐一些。

  • iOS14怎么取消app资源库页面 app资源库页面怎么关闭

    苹果iOS14加入了App资源库的新功能,这个功能就是将所有手机下载安装的app全部都显示在一个页面中,可以让用户找到想要的app软件,但很多用户表示不喜欢这个app资源库,那么如何将app资源库页面删除呢,我们来一起看下吧。

  • 首批18款App获颁安全认证 包括云闪付、苏宁易购等App

    【首批18款App获颁安全认证】据新华网消息, 9 月 20 日,云闪付、苏宁易购、中国移动、百度地图等 10 家企业的 18 款App(移动互联网应用程序)在京获颁安全认证证书,标志着我国App安全认证工作正式开展。

  • iOS14app资源库怎么隐藏应用 App资源库怎么不显示

    iOS14正式版上线后,用户发现增加了一个App资源库的功能,就是将手机内所有的App集中在一起显示,这个功能不少人表示不太喜欢想要关闭,那么如何关闭App资源库不显示呢,我们来一起看下吧。

  • 网赚APP的“俄罗斯套娃”游戏

    活跃在中老年人手机当中的网赚APP,正悄悄地侵占大家的时间及隐私,它甚至可以洗脑一个人。你以为这些APP白给大家钱,它们就是傻子?

  • 极光:8月新兴车企智能汽车app DAU榜单, Tesla登顶

    极光(Aurora Mobile, NASDAQ:JG)发布《 2020 年中国智能汽车行业研究报告》,从智能汽车行业概述、智能汽车app整体运营情况、智能汽车厂商案例分析、智能汽车app发展趋势等方面洞察 2020 年中国智能汽车行业。极光观点:1. 今年 8 月,智能汽车app用户月活规模达636. 49 万,同比增长76.6%;2.8 月新兴车企智能汽车app DAU榜单, Tesla登顶;3. 今年 8 月,蔚来app MAU规模达 20 万,小鹏汽车app MAU突破 10 万,理想汽车app MAU达4

  • 百度APP上线“购物”频道

    百度APP日前上线了“购物”频道,设有达人直播、发现好货等板块。

  • 知乎App首页新增“视频”专区

    今日,知乎App首页新增“视频”专区。此前,知乎上线视频创作工具,可通过用户提供的文字材料,自动配以与内容相对应的图片和动图,形成视频。该软件将逐步对全部用户开放。

  • 美妆鉴别服务开创者——心心App

    9 月初,广州警方破获了一起仿冒品牌化妆品团伙案件。据悉,该团伙所生产的假冒品牌化妆品主要流向了一些小化妆品店以及一些直播带货个体。一时之间,有关网购买到假货的新闻在网上再一次成为热议话题。对此,美妆鉴别服务开创者心心App表示,消费者网购美妆商品务必要谨慎为之,挑选正规平台,注意鉴别,排除假货。近些年,网购日益盛行。小到一些厨房用品,大到一些家电商品,人们习惯性地拿着手机随时随地在网上浏览,挑选自己?

  • Soul app :灵魂难求,“暗战”不休

    不久前Soul的崩溃事件登上了微博热搜,但围绕这一事件的讨论很快就不再局限于崩溃事件本身,闻声赶来的新老用户纷纷在微博上分享自己的使用体验,其中不少人表示“Soul变了”。虽然在国内陌生人社交APP中独树一帜,但Soul与其他家别无二致的是,从投身这条赛道起,“灵魂”与“荷尔蒙”的较量便不曾停止,甚至愈演愈烈。 在“荷尔蒙”的怂恿、刺激下,陌生人社交领域“牌桌之下的较量”也逐渐公开在大众视野中。 2019 年,Soul当?

  • ​百度App上线购物频道

    ​近日,百度App上线“购物”频道。该频道需要用户在“频道管理”——“可添加频道”中自行添加。百度APP购物频道页面包括了“达人直播”“发现好物”等板块。在该板块下方还有猜你喜欢、直播、发现好物等智能推荐。

  • 3400余款手机APP存安全隐患 涉嫌诈骗违法App达233款

    日前,上海市公安局网安总队对 5000 款移动App开展安全检查,检测出具有安全隐患的App应用多达 3400 多款。据悉,用户让这些App获取权限后,其中一款社交类App打开后并未索取任何权限,然而测试人员利用软件却捕捉到其窃取了手机中通讯录的 24 个联系人,并且还将联系人信息进行了上传。

  • 微信推全新“微信听书”APP 已开启内测

    10月16日消息,微信将推出一款听书APP“微信听书”,切入长音频赛道,目前已开启内测。有爆料称,微信听书的团队正在招募相关的创作者和机构进行合作,微信听书致力于为用户推荐有声

  • 微粒贷目前没有独立APP,小心落入骗子的陷阱

    虽然现在互联网上的贷款产品越来越多,但是鱼龙混杂,让人难以辨别好坏,稍有不慎可能就会落入骗子的圈套。在选择时,还是要考虑其安全性和是否靠谱。微粒贷作为微众银行旗下的小额信贷产品,不仅安全有保障,而且操作简单便捷,因此备受广大用户的青睐。但是也有一些不法分子,打着微粒贷的名号招摇撞骗,甚至制造出假冒微粒贷的APP进行诈骗。小伙伴们,一定要记住,微粒贷是采用的官方邀请制,目前是没有APP的。微粒贷微粒贷目前没有独立的AP

  • 医鹿App: 夜间问诊用户中65%是90后

    10月15日消息,今日,阿里健康医鹿App根据24小时问诊服务情况,发布《夜间在线问诊数据报告》(以下简称报告)。

  • 百度 App 低调上线“购物”频道

    百度App上线“购物”频道,包含当地好店、“达人直播”、“发现好物”等板块,货品已覆盖电子产品、日用百货、生鲜水果、美妆洗护、服饰家装等品类。该购物入口,需要用户主动进入“频道管理”添加。

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议
  • 热门标签

热文

  • 3 天
  • 7天