主页 > imtoken冷钱包怎么创建 > 分享 | 比特币、以太坊、Fabric、Corda等架构横向对比分析

分享 | 比特币、以太坊、Fabric、Corda等架构横向对比分析

imtoken冷钱包怎么创建 2023-04-06 05:53:27

本文约4900字+,阅读(观看)需28分钟

关于作者:

张正文:YI区块链核心开发者,DBFT共识机制作者,区块链技术和计算机安全专家,CISA信息系统审计师。曾就职于盛大和火币,从事信息安全和数字货币研发工作

我经常听到人们谈论区块链。 自2009年比特币诞生以来,各种区块链系统或基于区块链的应用被开发并应用到大量场景中。 区块链Chain技术本身也在不断变化和完善。

区块链也叫分布式账本比特币系统架构,对应的是中心化的账本,比如银行。 与中心化账本不同,分布式账本依靠所有参与节点对账本数据的冗余存储来保证账本的安全。 简单来说,区块链将使用三种底层技术:点对点网络技术、密码学技术和分布式共识算法。 通常,区块链系统还“免费”提供一种称为智能合约的功能。 虽然智能合约不是区块链系统的必要组成部分,但由于区块链固有的去中心化特性,可以为智能合约提供可信的计算环境。

为适应不同场景的需求,区块链系统在实际应用过程中往往需要进行各种修改以满足特定业务的需求,如身份认证、共识机制、密钥管理、交易频率、响应时间、隐私等然而,实际应用区块链系统的企业往往不具备进行此类改造的能力,因此市场上逐渐出现了一些定制专用区块链系统的框架。 自己业务的区块链系统。

本文将对目前市面上几种典型的区块链框架进行横向比较,看看它们有什么特点,它们之间有什么区别。 为了保持比较的公平性,本文将只讨论开源区块链框架。

各区块链架构简介

比特币系统架构_比特币之父能不能随意制造比特币_比特币比特币的行情

1比特币

比特币(bitcoin)起源于2008年一位名叫中本聪的人发表的一篇名为《比特币:一种点对点的电子现金系统》的文章,文中描述了一种他称之为“比特币”的电子货币及其算法. 在随后的岁月里,比特币不断成长和成熟,其底层技术也逐渐被认识和抽象出来,这就是区块链技术。 作为区块链的鼻祖,比特币在区块链家族中扮演着举足轻重的角色。 基于比特币技术开发的山寨币数量多如天上的星星。

从论文中可知,中本聪设计比特币的目的是实现一个完全基于对等网络的电子现金系统,使得在线支付可以由一方直接发起并支付给另一方没有任何中介。 中介机构。 综上所述,他希望比特币的设计能够实现以下目标:

● 在没有中央权威的情况下发行货币

● 无中介支付

● 维护用户的匿名性

● 交易不可撤销

从电子现金系统的角度来看,比特币已经基本实现了上述目标,但还存在一些技术问题有待解决,如可延展性攻击、区块容量限制、区块分叉、可扩展性等。

在应用场景方面,目前大量的数字货币项目都是基于比特币架构设计的。 此外,还有一些更实际的应用案例,如彩色币、tØ等。

彩色币,通过仔细追踪某些特定比特币的来龙去脉,可以将其与其他比特币区分开来,这些特定的比特币被称为彩色币。 它们具有一些特殊的属性,因此它们具有独立于比特币面值的价值。 利用彩色硬币的这一特性,开发人员可以在比特币网络上创建其他数字资产。 彩币本身就是比特币,不需要第三方存储和转移,可以利用现有的比特币基础。

tØ是比特币区块链在金融领域的应用。 它是由美国在线零售商Overstock推出的基于区块链的私募和公募股权交易平台。

2 以太坊

以太坊(ethereum)的目标是提供一个具有图灵完备语言的区块链。 在这种语言中,可以创建合约来编写任意状态转换函数。 用户可以创建基于区块链的应用,应用于货币以外的场景。

以太坊的设计思想并不是直接“支持”任何应用,而是图灵完备的编程语言意味着理论上任意的合约逻辑和任何类型的应用都可以创建。 综上所述,以太坊除了比特币的设计目标外,还需要实现以下目标:

● 图灵完备的合约语言

● 内置持久状态存储

目前基于以太坊的合约项目有数百个,比较著名的有Augur、TheDAO、Digix、FirstBlood等。

Augur 是一个基于以太坊区块链技术的去中心化预测市场平台。 用户可以使用数字货币进行预测和投注,依靠群众的智慧来预测事件的发展,可以有效消除交易对手和服务器中心化的风险。

限于篇幅,基于以太坊智能合约平台的项目不再介绍。 基于以太坊代码改造的区块链项目也不少,但几乎都是闭源项目,只能根据一些公开的特征来推断,本文不做讨论。

3面料

Fabric 是由 IBM 和 DAH 主导的区块链框架,是 Hyperledger 的项目成员之一。 它的功能类似于以太坊,也是一个分布式智能合约平台。 但不同于以太坊和比特币,它从一开始就是一个框架,不是公链,也没有内置代币(token)。

Hyperledger 是 Linux 基金会于 2015 年发起的一个开源项目,旨在推广区块链技术和标准。 成员包括:ABN AMRO、Accenture 和十几个不同的利益团体。 目标是让成员共同努力构建一个开放平台,以满足来自许多不同行业的各种用户案例并简化业务流程。

Fabric作为区块链框架,采用松耦合设计,将共识机制、身份验证等组件模块化,在应用过程中可以方便地替换为自定义模块。 此外,Fabric还利用容器技术在docker中运行智能合约代码(chaincode),这样几乎可以用任何高级语言编写智能合约。

以下是 Fabric 的一些设计目标:

● 模块化设计,组件可更换

● 运行在docker上的智能合约

目前,许多使用Fabric架构开发的概念验证(POC)项目正在实施过程中,一些金融机构也进行了尝试。 但由于项目刚刚起步,目前还没有成熟的应用。

4DNA

DNA(Distributed Networks Architecture,分布式网络架构),是由上海区块链初创公司“分布式科技”研发的区块链架构,可同时支持公有链、联盟链、私有链等不同应用类型和场景,快速与业务系统集成。

不同于以太坊和Fabric,DNA在系统底层支持多种数字资产。 用户可以直接在链上创建自己的资产类型,并使用智能合约来控制其发行逻辑。 对于大多数区块链应用场景来说,数字资产是必不可少的,为每一种数字资产开发一套基于智能合约的转账和发行逻辑是非常浪费和低效的。 因此,需要从区块链底层提供直接的数字资产功能。 对于那些完全不需要数字资产的应用场景,也可以基于DNA提供的智能合约架构,通过编写任意自定义逻辑来实现。

DNA的主要设计目标如下:

● 多种数字资产底层支持

● 图灵完备的智能合约和状态持久化

● 跨链互操作性

● 交易的终结

目前已有多家金融机构采用DNA架构开发区块链概念验证产品。 此外,还有一些区块链项目已经落地,比如小蚁区块链、法链。

Antshares是一条定位于资产数字化的公链,将现实世界中的资产和权利数字化,通过点对点网络进行登记发行、转账交易、清算交割等金融服务。 去中心化网络协议。 它采用基于社区的开发模式,在架构上与DNA保持一致,因此可以与任何基于DNA的区块链系统进行互操作。

LawChain是全球首个大型商业法定缴存区块链,是基于DNA区块链技术比特币系统架构,由多家机构共同建立和运营的证据记录和保存系统。 系统无中心控制点,数据一旦录入,单个机构或节点不可篡改,满足司法证据存证要求。

5Corda

Corda 由总部位于纽约的区块链初创公司 R3CEV 开发。 其发起的R3区块链联盟迄今已吸引了数十家巨头银行的参与,包括富国银行、美国银行、纽约梅隆银行、花旗银行、德国商业银行、德意志银行、汇丰银行、三菱日联金融集团、摩根士丹利、国民银行等澳大利亚银行、加拿大皇家银行、SEB、法国兴业银行等

从R3的成员构成也可以看出,Corda是一个专用于银行和同业业务的区块链架构。 虽然R3声称Corda不是区块链,但它在各种特性上都具有区块链的一些特征。

技术比较

1个数字资产

接下来将对上述区块链框架进行一系列的技术对比,从多个维度介绍它们的异同。

区块链内置的代币通常是一种经济激励模型,也是一种防止垃圾交易的手段。 比特币与生俱来且只有一个内置代币,因此比特币系统中的所有“交易”本质上都是转账,除非通过外部协议层将额外的数字资产添加到比特币中。

以太坊和 DNA 都有内置的代币。 除了上述经济激励和防止垃圾交易外,它们还为系统内置功能提供收费通道。 例如以太坊的智能合约运行需要消耗GAS,DNA数字资产的创建也需要消耗一定的代币。

以太坊和 Fabric 并没有内置对多种数字资产的支持,而是通过智能合约实现相应的功能。 这种方法的优点是系统设计可以非常简单,可以任意指定资产的行为,自由度高。 但是,这样的设计也会带来一系列的负面影响。 比如所有的资产创建者都要自己写重复的业务逻辑,用户没有办法统一操作自己的资产。

相比之下,DNA和Corda采用底层支持多种数字资产的方式,让资产创建者可以轻松创建自己的资产类型,用户也可以在同一个客户端管理所有资产。 对于逻辑更复杂的业务场景,还可以通过智能合约来增强资产的功能,或者创建一个与资产无关的业务逻辑。

2 账户系统

比特币之父能不能随意制造比特币_比特币比特币的行情_比特币系统架构

UTXO(Unspent Transaction Output)就是这样一种机制:每一种数字货币都会被登记在一个账户的所有权下,一种数字货币有两种状态,即未花费或已经花费。 当一种数字货币需要使用时,将其状态标记为已花费,并创建与之等值的新数字货币,并将其所有权登记在新账户下。 在这个过程中,标记为已花费的数字货币称为交易的输入,新创建的数字货币称为交易的输出。 在一个交易中,多个输入和多个输出,但输入的总和和输出的总和必须相等。 要计算一个账户的余额,只需将账户下注册的所有数字货币的面额相加即可。

比特币和Corda采用UTXO作为账户机制,而以太坊采用更直观的余额机制:每个账户都有一个状态,直接记录账户当前的余额,转账的逻辑是从一个账户中减去一部分余额从一个帐户中提取相应的余额并将其添加到另一个帐户中。 相减部分和相加部分必须相等。 DNA 在账户机制上兼容两种模式。

那么UTXO模式和balance模式各有什么优缺点呢? UTXO最大的优势是基于UTXO的交易可以并行验证和任意排序,因为所有的UTXO都是不相关的,这对区块链未来的可扩展性有很大的帮助,而基于余额的设计则没有这样的优势; 相反,余额设计的优势在于设计思路非常简单直观,便于程序实现,尤其是在智能合约中,处理UTXO的状态非常困难。 这也是为什么以智能合约为主要功能的以太坊选择了余额设计,而专注于数字资产的比特币、OnchainDNA、Corda则更倾向于UTXO设计。

关于身份认证,比特币和以太坊基本没有身份认证设计。 原因很简单,因为两者的设计思路都是强调隐私和匿名,反对监督和中心化,身份认证势必会引入一些中心化或弱化的中心化机构。 Fabric、DNA 和 Corda 都选择使用数字证书来验证用户身份。 原因是三者的设计目标都是应用于现有的金融体系,金融体系要考虑合规,接受监管。 此外,现有的金融系统已经大规模采用数字证书方案,可以快速与区块链系统集成。