LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 新闻观点 > Hedera共识服务:超越智能合约

Hedera共识服务:超越智能合约

2019-07-10 不详 来源:网络
数字领域由集中式的应用程序服务和集中式的数据服务器主导。我们希望运营这些服务的组织是值得信赖的,并且是诚实地对待他们的用户。例如,我们相信服务提供者按照接收到的顺序处理交易,交易不会被删除或延迟,不会对某些交易造成损害,也不会对其他交易造成额外好处,并且交易的顺序不会在事后被操纵或更改。

分布式账本技术通过消除对单个组织的信任来改善这种情况。分布式应用程序在一组计算机上运行,每个计算机由不同的组织管理。应用程序用户提交的交易顺序由对该顺序投票的计算机组决定,而不是由一个计算机操作员决定该顺序。在分布式应用程序中修改交易顺序需要大量计算机操作人员进行协作,而且这种协作的可能性远远小于单个组织。

分布式账本通常分为两类:公开账本和私有账本,以及开放账本和被允许账本。公共/私有是指谁可以使用网络服务。如果用户必须先注册并获得批准才能使用网络,则该网络被认为是私有的。如果没有,则网络是公共的。开放账本被允许账本指有能力在网络上运行计算机的人。如果计算机操作员可以匿名加入网络,那么网络就是开放的。否则,网络就是一个被允许的网络。

多年来,关于公共分类帐与私有分类帐的相对价值的争论一直很激烈。

一般来说,公共账本被认为是更分散的,因此更值得信赖。公共账本网络由相对较多的节点组成,每个节点由不同的实体管理,每个节点运行在不同的位置。

私有分类帐通常只有少数几个节点对交易的顺序进行投票,很多时候这些节点可能都在一个数据中心中,或者由同一个云提供商操作。因此,私有账本被认为不如公共账本可信,对攻击的抵抗力也较差。

总结: 公共分类帐比私有分类帐更具有分散性,因此更值得信赖。

当开发人员构建分布式应用程序时,他们通常希望在网络上的多台计算机上执行业务逻辑,并让每台计算机验证计算结果。这提高了对网络节点计算结果的信任。在公共网络中,执行这种通常被称为智能合约的软件是非常昂贵和低效的。账本试图通过将一些操作放入本地服务来解决这个问题,本地服务的运行速度比智能合约快得多。但是,如果公共账本不选择将功能放到本地服务中,那么开发人员将不得不忍受智能合约的低效率。开发人员在使用编程语言和工具时常常受到限制,而且他们必须与公共网络的所有其他用户共享服务器资源。另一方面,在专用网络上构建分布式应用程序的开发人员可以使用他们想要的任何编程语言和工具集,他们可能拥有专用专用的私有网络资源,他们的逻辑以原生服务的速度运行,而不是智能合约。

总结: 私有网络为开发人员提供了一组更好的选项,如果需要,可以完全专注于单个应用程序。在执行智能合约时,公共网络是受限的、昂贵的和低效的。

公共分类帐的一个潜在缺点是分类账中的信息是公开的。这意味着任何人都可以在未经允许的情况下下载一本账本并阅读其内容。在许多情况下,这是不可接受的。信息可以加密,但智能合约无法对信息进行操作。当然,这对私有分类帐来说不是问题,因为只有那些得到明确许可的人才能阅读分类账的内容。

总结:私有分类帐比公共分类帐更能保护数据隐私。

当开发人员决定构建分布式应用程序时,他们必须首先决定应用程序将运行什么网络。公共网络提供一组服务,使开发人员能够构建任意复杂的应用程序,这些服务在现有网络上立即可用。开发人员可以简单地开始开发应用程序。私有网络需要多方协作才能在多台计算机上安装分类账软件,以创建网络。这需要大量的资源、协调和网络所有成员的额外费用。

总结: 公共网络为开发人员提供了一个现有的可信平台。私有网络需要大量的前期和持续的成本来建立和维护网络中的服务器。

由于这些差异,在DLT市场中存在着两组不同的市场参与者和技术之间的分裂。在公共方面的例子包括来自Facebook, Ethereum, EOS, Stellar和其他人的天秤座。在私有方面是Hyperledger、R3中的Corda、EEA、Quorum等。

Hedera共识服务(HCS)结合HederaNodes节点和状态证明,通过提供这两类服务的优点,从而统一了公共和私有DLT市场。许多开发人员已经构建了在专用计算机上本地运行的集中式应用程序。HCS允许他们使用一个公共分布式网络来进行快速、公平、低成本的交易排序,这是不可改变的。此外,HCS提供了代码执行的分布式信任,而不需要智能合约。本质上,HCS允许开发人员将自己的本地服务添加到公共Hedera分类账中。应用程序的状态不是存储在公共账本上,而是存储在一台私人计算机中。本地服务的计算并不在公共账本上执行。计算是在一台私人计算机上进行的。因此,这两种功能都不需要公共账本的资源。

公用台账和专用台账都需要2/3以上的计算机操作员诚实,才能使网络可信。但当使用HCS时,你只需要超过2/3的诚实在公共方面(Hedera网络)。在私有方面,没有一台计算机必须诚实,因为它们可以根据来自公共网络的状态证明来证明自己的计算是正确的。任何计算机都可以用密码证明它的行为是正确的,因此它可以像公共网络一样获得信任。

HCS使得现有的集中平台(如现有的拍卖网站、股票交易所和MMO游戏)能够在保持集中的隐私和性能的同时,获得分散的信任。而且,使用像Hyperledger这样的DLT平台的应用程序可以使用HCS,从而获得公共网络的所有好处。

Hedera共识服务:

1. 提供公用网络的分布式信任
2. 使开发人员能够在高效和低成本的专用中央服务器上构建本机应用程序。
3. 在保护私有服务器中的私有信息的同时,允许使用公共网络进行信任

4. 消除与创建专用网络相关的前期和持续成本

图1:智能合约的当前架构。智能合约和应用程序状态直接执行并存储在分布式账本的节点上。因此,所有Dapps必须共享节点上的计算资源和文件存储,并且智能合约中的所有信息都是公开的。

图2:带有Mirror节点的Hedera协商共识服务。分布式应用程序可以在专用服务器上执行,私有信息仍然是私有的。

1. 应用程序客户机将带有消息和主题的交易提交到主节点
2. Hedera网络将消息按照一致的顺序排列
3. Mirror节点接收来自主节点的所有信息
4. Mirror节点发送应用程序主题的消息
5. 应用程序执行业务逻辑,并将结果发送到客户机软件

HCS将信息按照一致的顺序排列。为了确保应用程序正确地处交易务(例如,可以将代码执行托付给应用程序),有多种可用选项。

验证正确的应用程序代码

单节点的解决方案

1. 如果应用程序代码可用,则可以选择运行应用程序的副本,并从任何Mirror节点中处理相同的交易。这样任何人都可以检查应用程序代码的准确性。也就只需要一个诚实的参与者来确保计算的完整性

2. 如果应用程序代码不可公开使用,但是允许审核员运行应用程序的副本,那么审核员可以验证交易的正确处理结构

多节点的解决方案

可以创建一个应用程序节点网络,这些应用程序节点接收来自本地Mirror节点的消息流。应用程序节点和Mirror节点的集合称为应用程序网络:appnet。只要一个应用程序节点操作符是诚实的,就可以检测到消息流的错误处理。如果引发争议,可以对消息流的处理过程执行审计。消息流被保证是防篡改证明,因为状态证明是基于来自主节点的签名生成的。

当使用超账本结构时,应用程序更容易创建。Fabric可以帮助管理计算机集、它们如何连接以及它们如何协同工作的逻辑。

—-

编译者/作者:不详

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...