各种区块链协议之间的区别

时间:2017-01-17 07:11:59

标签: blockchain hyperledger ethereum corda

由于开发人员不断使用区块链的不同网络协议,如Hyperledger,multihain,Ethereum,Corda等。如果开发人员和社区将会欣赏社区。如上所述,区块链爱好者可以注入各种区块链之间的一些关键差异。

谢谢!

9 个答案:

答案 0 :(得分:38)

这是一个很好的问题,但不是一个简单的答案很容易解决的问题。

正如@ Mat0在上面评论的那样,一个不同之处在于各种平台用于达成共识的方法。一些使用工作证明(PoW),另一些使用拜占庭容错策略的变体(PBFT,SBFT等)。有些人使用PAXOS衍生策略。 Hyperledger Sawtooth Lake开发了一种名为Elapsed Time(PoET)的创新策略。一些例如Hyperledger Fabric允许可插入的共识实现,以允许实验和额外的多样性。

其他平台在实现数据机密性和事务执行的方式上有所不同。

诸如Hyperledger Fabric,Hyperledger Sawtooth Lake,Corda,以太坊等许多其他平台允许更全面的智能合约功能,而其他平台对合约操作的类型非常严格 - 例如各种仅支持未使用的事务输出(UTXO)协议中的有限操作集的平台。

有些更针对特定用例,而有些则更倾向于更具通用性。所有人都在寻求改善绩效和规模各方面的方法。

最后,一些旨在支持无权限的公共区块链网络,而另一些则更倾向于支持私人,许可网络(联盟网络),其中参与和成员资格受到严格控制。

Hyperledger专注于开发适合企业使用的区块链技术。该组织的成立旨在将相关甚至竞争技术汇集在一起​​,期望接近和共同治理将导致互操作性和逐步整合。

选择一个平台需要进行大量的研究,并清楚地了解您的使用案例和要求以及大量的实验。在一天结束时,将没有简单的答案。

答案 1 :(得分:27)

为了增加克里斯的评论,我大多同意这一点,我会扩展他对“UTXO”模型的评论。

在我们看来(我是R3的首席技术官),区分区块链平台的一个关键设计决策是它们是否使用我称之为“复制虚拟机”的比喻,或者它们是否基于交易输出的概念( “UTXO”模型)。

Mike Hearn在Corda的设计背景下写到了这一点:https://www.corda.net/2016/12/09/rationale-tradeoffs-adopting-utxo-style-model/

然而,我想提出的关键点是UTXO模型 - 至少在Corda中实现 - 使得能够运行全功能代码......支持的操作集不受任何限制。

这些差异主要表现在平台的非功能特征的背景下。

正如克里斯所说,平台选择应该由用例驱动:我相信我们在Corda中使用的UTXO模型特别适合各种金融服务场景(这就是我们做出选择的原因)采用那种架构!)。但是没有一种尺寸适合所有人。

答案 2 :(得分:11)

比特币技术堆栈 - 特别是在使用侧链和支付渠道(例如来自Blockstream和Lightning Network)进行增强时。

以太坊平台 - 目前是比特币堆栈背后第二个经过验证的平台。

Hyperledger Fabric - IBM及其他许多公司进行重大战略投资的结果,这些投资已进入大型企业客户的安装基础。

R3 Corda - 面向垂直的区块链技术(该公司更喜欢“区块链启发”,因为它强调此私人/许可分类帐产品与比特币区块链等公共/无权分类帐之间的显着差异)

数字资产 - 另一个垂直集中的区块链技术,在金融服务领域具有很高的知名度

虽然很难预测最终获胜者,因为它甚至可能不在市场上,但可以说明获胜者的样子。以下是获胜区块链平台的9个特征

开源 - 这有必要培养丰富多样的生态系统,并通过网络效应加速采用。

模块化架构,具有可编程性和可定制性的层次 - 如上所述,这可以培养生态系统并实现市场采用。

全球规模 - 如果区块链成为“货币互联网”的基础,可扩展性,性能和效率至关重要。

核心协议的多个实施 - 多个独立开发的实施确保协议被理解,定义明确并增加对可能的攻击的抵抗力(如2016年9月的以太坊平台所发生的那样)。这要求对核心协议进行准确而精确的规范,而不是依赖于未记录的一个代码库。

通过公共区块链部署加强 - 这是确保系统安全且“防弹”的唯一方法,因为它可以将其暴露在开放互联网上的最严重威胁中,就像两者都发生的那样比特币堆栈和以太坊平台。

可配置私有区块链部署并支持交易机密性 - 因为大多数企业不希望竞争对手或世界其他地方看到他们的交易。

运作治理 - 需要有一个有凝聚力的决策结构,能够以敏捷和连贯的方式响应系统的威胁。

高级智能合约功能 - 因为当前一代的智能合约技术依赖于传统语言(类似于Java或C#),这些语言不足以满足大额合同的严格要求(以及最好由元数据驱动或数学可验证的编程系统支持。)

适当的工具,用于开发,调试,部署,监控和管理基于智能合约的系统(最近在以太坊网络上的拒绝服务攻击强调了其重要性)。

答案 3 :(得分:7)

自2008年以来,比特币一词被Satoshi Nakamoto创造为一个新的电子和完全点对点的现金系统,没有受信任的第三方,对比特币和区块链技术的兴趣有所增加。在交易及其隐私和安全方面,研究人员认识到它是行业内的革命性技术,特别是在银行和金融领域,研究人员不遗余力地提出异乎寻常的协议,每一天都是新的,推进者比以前更好的协议。继续参与TheBlockchainAcademy.com上的区块链系列,我已经包含了6个主要的区块链协议,以便接受这项技术并提高区块链投资者和最终用户的认识。

<强> Hyperledger

Hyperledger是开源的区块链平台,由Linux基金会于2015年开始,旨在支持基于区块链的分布式账本。该协议的重点是为支持国际商业交易而开发的分类账,为领先的金融,技术和供应链业务提供服务,目标是改善许多性能和可靠性方面。该项目强调通过提供模块化框架来制定开放标准和协议,通过提供支持各种用途的各种组件,包括一系列具有自己的存储和共识模型的区块链,以及用于访问控制,合同和身份的服务。

<强>比特币

比特币的开始可以追溯到2008年11月,当时Nakamoto在美国邮件列表上发布了一篇论文,密码学家在那里共享或交换信息。题为“比特币:点对点电子现金系统”的论文提出了该协议的以下特征:

  1. 直接启用交易,无需任何可信任的第三方
  2. 启用不可逆交易
  3. 减少小额临时交易中的信贷成本
  4. 降低交易费用
  5. 防止双重支出
  6. 比特币是虚拟货币,也称为加密货币。这些是在探索由软件管理的数据中的价值时分发的。 2016年初见证了约1526万BTC的发行,相当于约70亿美元。制作比特币的主要技术包括哈希,数字签名,公钥加密,P2P和工作证明。这种混合已经开发出一种机制,可以防止重复付款和数据伪造,另外还有一种机制可以防止对电子货币操作系统至关重要的恶意用户没有中央权限。

    <强>复仇

    以太坊是一种面向公共,开源和区块链的分布式计算协议,具有智能合约(脚本)功能。该协议提供了一个称为以太坊虚拟机(EVM)的分散式虚拟机,它通过使用全局公共节点网络和名为ether的令牌(也称为gas)来执行Turning-complete脚本。气体用于防止网络上的垃圾邮件,并按照请求提供的激励比例分配资源。 Bloomberg将以太坊解释为所有人都使用的共享软件;但是,是防篡改的。纽约时报称,以太坊还被用作分散应用程序,智能合约和分散式自治组织的协议,并于2016年3月在其上开发了许多正常运行的应用程序。

    涟漪共识网络

    2012年发布的Ripple Transaction Protocol(RTXP)是基于开源分布式共识分类账,Internet协议和称为XRP(涟漪)的本地货币开发的。 Ripple可实现任何规模的即时,安全且几乎免费的全球金融交易,无需任何退单。该协议被认为能够支持令牌呈现加密货币,法定货币,商品和任何其他价值单位,如移动分钟,常用飞行里程等。到2017年底,Ripple预计将成为市场上第三大加密货币比特币和以太币之后的资本化。

    R3的Corda

    公司的Corda R3是分布式账本协议,它是从一开始就开发的,用于记录,监督和同步受监管金融机构之间的金融协议。通过大量的刺激和区块链系统的优势,没有任何设计选择可以使区块链不适合许多银行场景。 Corda的设计是在对团队成员进行大量分析和原型设计后得出的。它现在是一个开源协议,因为代码进一步成熟。

    Symbiont分布式分类帐

    该协议于2016年10月宣布为大会的软件开发工具包,该工具包是Symbiont智能合约系统的允许分布式分类帐部分。大会被认为是适用于机构融资的第一个分布式分类账。它是一种极其安全,高性能的拜占庭容错分布式分类帐,可在本地多节点网络中每秒处理持续的80,000个事务。正如Symbiont的联合创始人所说的那样,分散的系统应该不再缓慢,而且随着大会的召开,它已经实现了。

    您可以详细了解区块链并实施自己的区块链@ IBM Blockchain 101: A quick-start developer guide

答案 4 :(得分:1)

随着该领域迅速扩大,这是近期一些学术论文的主题。

例如,这些基于Consensus in the Age of Blockchains

  
      
  • 委员会成立 - 如何选择委员会成员,例如通过工作证明,股权证明,   可靠的硬件等
  •   
  • 一致性 - 系统就拟议价值达成共识的可能性;它可以强或弱
  •   
  • 奖励模式
  •   
  • 安全(交易,审查抵抗,DoS抵抗)
  •   
  • 考虑对手模型
  •   
  • 性能(吞吐量,可伸缩性,延迟)
  •   
  • 浓淡设置
  •   
  • 代码可用性
  •   

另见Blockchain Consensus Protocols in the Wild

答案 5 :(得分:1)

区分每个不同区块链的主要因素是一致性算法。一些算法用于公共链(例如:比特币区块链),而一些算法用于许可网络(例如:Ripple,Hashgraph)。

答案 6 :(得分:0)

我会大胆地说Confidence Coin可能是广播事件中最快的区块链技术。

  • 更好的编码。每次在交易中使用新地址时,都会将其保存到区块链数据库中,因此下次发现该地址时,将其替换为数值。比特币可以在1兆字节的块中编码大约2K笔交易,而Coco在相同空间中最多可以有10万笔交易。
  • 区块链P2P网络的主要问题是其规模,将每个新节点添加到系统中需要花费更多时间向每个人广播新块。截至2018年,比特币中有11,000个节点。可可速度的来源就在其皇家网络中。之所以称为皇家,是为了加入网络,您必须挖一个街区。它仅允许最佳池成为皇家网络的一部分。有趣的是,在比特币中,超过95%的区块由不到20个Pool开采,但是它们的消息不是遍历它们之间的直接通信,而是遍历整个11,000个节点。

免责声明:我是Coco的开发人员。

答案 7 :(得分:0)

这些区块链项目之间会有几个区别:

  1. 应用程序:他们关注的特定应用程序或域。一些区块链项目是公共基础区块链,例如以太坊,您可以在智能合约的支持下在其上开发自己的应用程序。而其他人可能专注于某些领域,例如娱乐,存储,金融等。

  2. 共识协议:正如其他人所提到的,不同的区块链项目可能使用不同的共识协议,例如:PoW,PoS,DPoS,BFT,DBFT等。被提议。虽然,老实说,到目前为止,只有PoW才能长期运行良好。

  3. TPS :它实际上与第二点有关,共识协议当然会影响性能/ TPS,但是,块设计以及分片,闪电网络等技术会显着影响TPS也一样用于改善可伸缩性的特定技术也可以使这些项目脱颖而出。

  4. 智能合约:用于开发智能合约的编程语言,合约是否安全,开发环境是否用户友好,这些也是应区分差异化因素的因素。区块链项目。

答案 8 :(得分:0)

这是一个非常广泛的问题。简而言之,每种协议都建立有规则,可以潜在地解决特定目标或业务用例挑战。

因此,可以通过区分每种协议的构建目的来缩小问题的答案。

区块链协议解决了分散账本 以太坊协议可解决分散账本,启用分散应用程序和智能合约 Ripple协议不仅解决了分散的分类账,智能合约,而且还解决了速度更快,交易更便宜的问题 Hyperledger Fabric解决了提供对分散分类账的受限访问的问题。 R3的Corda解决了无需采矿的金融部门分散账本

因此,每个协议都有试图解决其选择的主要目标的逻辑和规则。但是,基本概念仍然是每种协议的区块链。

希望这可以在较高水平回答您的问题。