区块链成熟度评测报告(3)——可靠性、易用性、可扩展性对比

简介:

可靠性对比

区块链的可靠性主要考察区块链网络、共享帐本、账户体系三个方面。

(一)区块链网络:商业区块链A、商业区块链B、Fabric均网络可靠

区块链网络主要测试三个指标:记账节点高可用、服务节点之间高可用、区块链网络的网络抖动是否影响系统服务等级。第一、二个指标的测试方法是通过脚本进行评测,设区块链中包含n个记账节点或服务节点,通过脚本依次停掉1~n个记账节点或服务节点,检查区块链网络是否依然能够正确执行交易、达成共识并记账或通过服务节点对外提供服务;第三个指标的测试方法是通过工具进行模拟评测,在规定的服务等级和网络规模下,通过模拟一定量的网络节点加入或退出,获得其所容忍得比例值。具体测试结果如下表。

AUFKSA5mx2tAAAAAAElFTkSuQmCC
测试结果表明,商业区块链A、商业区块链B、Fabric均支持记账节点和服务节点的高可用,且网络抖动不影响系统服务等级,三个区块链系统均网络可靠。

(二)共享帐本:商业区块链A、商业区块链B、Fabric均账本可靠

共享帐本主要测试三个指标:账本高可用、账本支持failover同步、账本备份恢复。第一、二个指标的评测方法是通过脚本进行评测,第三个指标的评测方法是根据白皮书与相关文档进行专家判断,具体来说,第一个指标的测试方法是假设区块链中包含n个记账节点,每个记账节点均有一份共享账本,通过脚本依次停掉1~n个记账节点,检查区块链网络是否依然能够正确执行交易、达成共识并记账,恢复被停掉的节点,检查是否自动同步为最新账本;第二个指标的测试方法是通过脚本停掉区块链网络中的某一个记账节点,经过10个区块的生成时间后通过脚本重新开启该节点,恢复被停掉的节点,检查是否自动同步为最新账本并恢复记账能力;第三个指标的测试方法是判断是否有备份和恢复的工具,若有,使用该工具进行备份导出操作,经过一段时间后,使用工具进行备份恢复导入操作,检查账本是否回到备份时的状态,并正常运行。具体测试结果如下表。

Aw0IwfXr7PrGAAAAAElFTkSuQmCC
测试结果表明,商业区块链A、商业区块链B、Fabric均支持账本高可用、账本支持failover同步、账本备份恢复,三个区块链系统账本可靠。

(三)账户体系:商业区块链A、商业区块链B、Fabric均账户可靠

账户体系主要测试一个指标:不同节点下的账户信息高可用。测试方法是利用脚本使某一账户所在节点失效,使用脚本对失效节点的账户进行模拟转账等交易行为,检查交易是否成功;若成功,则不同节点的账户信息高可用。具体测试结果如下表。

63DSsLWdnEQAAAABJRU5ErkJggg==
测试结果表明,商业区块链A、商业区块链B、Fabric均支持不同节点下的账户信息高可用,三个区块链系统账户可靠。

综合来看,区块链网络、共享帐本、账户体系三个方面,商业区块链A、商业区块链B、Fabric均可靠。

易用性对比

区块链的易用性主要考察区块链网络、智能合约、交易、账户体系、共享帐本五个方面。

(一)区块链网络:商业区块链A网络操作最简单,Fabric次之,商业区块链B不支持删除网络节点

区块链网络主要测试两个指标:网络搭建的复杂程度、增删节点的复杂程度。测试方法是根据白皮书与相关文档收集搭建多节点区块链网络或增删节点的具体步骤,模拟搭建多节点区块链网络或增删节点,计算搭建所需时间及搭建步骤复杂程度或增删步骤复杂程度。具体测试结果如下表。

LCehmWyKZLWrJExOwwFAoHhQG7MS+3d6Ryzni08A
测试结果表明,网络搭建的复杂程度方面,商业区块链A最快,10分钟以内,Fabric次之,4小时以内,商业区块链B最慢,8小时以内。增删节点的复杂程度方面,商业区块链A和Fabric均支持增删节点且不需要停机,商业区块链B不支持删除节点。

(二)智能合约:商业区块链A和Fabric智能合约操作简单,商业区块链B智能合约操作需通过中心节点

智能合约主要测试三个指标:智能合约支持的语言、注册智能合约复杂程度、部署智能合约复杂程度。第一个指标的测试方法是根据白皮书与相关文档收集智能合约支持的开发语言;第二、三个指标的测试方法是通过在某一个节点下进行智能合约注册或部署行为,记录所需流程,流程需要2步以上视为复杂。具体测试结果如下表。

lb5bxl2ZeQAAAABJRU5ErkJggg==
测试结果表明,三个区块链系统的智能合约分别支持不同的语言,智能合约注册和部署方面,商业区块链A和Fabric采用去中心化方式,商业区块链B采用中心节点方式,三个系统的过程均简单。

(三)交易:商业区块链A和Fabric交易操作简单,商业区块链B交易查询仅支持接口进行

交易主要测试两个指标:交易查询复杂度、交易发起复杂度。测试方法是通过在某一个节点下进行交易的查询或发起行为,记录所需流程,流程需要2步以上视为复杂。具体测试结果如下表。

0KsXFYcwL8AAAAABJRU5ErkJggg==
测试结果表明,交易查询方面,商业区块链A和Fabric支持接口、SDK进行查询,商业区块链B支持接口进行查询。

(四)账户体系:商业区块链A账户操作简单且健全,Fabric次之,商业区块链B仅支持注册操作

账户体系主要测试三个指标:注册复杂度、销毁复杂度、授权复杂度。第一、二个指标的测试方法是通过在某一个节点下进行注册或销毁行为,记录所需流程,流程需要2步以上视为复杂;第三个指标的测试方法是模拟将B账户授权给A账户,记录授权所需流程,流程需要2步以上视为复杂。具体测试结果如下表。

hBBCCCGEEMIMiCgLIYQQQgghhBkSURZCCCGEEEII
测试结果表明,商业区块链A账户体系易用性功能丰富,Fabric次之,商业区块链B仅支持注册。

(五)共享帐本:商业区块链A、商业区块链B、Fabric均支持账本检索

共享账本主要测试两个指标:共享账本的检索条件限定、建立索引。两个指标的测试方法都是根据白皮书与相关文档判断,具体来说,第一个指标的测试方法是判断是否支持检索,若支持,模拟账本检索,使用脚本工具计算平均检索时间。第二个指标的测试方法是判断是否支持建立索引,若支持,模拟对共享账本进行索引建立。具体测试结果如下表。

fu0xoE6HLu7u9PXN3Wo5CxJkiRJcjQqp5gkSZIkI
测试结果表明,三个区块链系统均支持通过id、关键字、时间区间、条件选择、溯源进行账本检索,但均不支持建立索引。

综合来看,区块链网络、账户体系方面,商业区块链A最易用且功能健全,智能合约和交易方面,商业区块链A和Fabric操作最简单,共享帐本方面,三个区块链系统均支持账本检索。

可扩展性对比

区块链的可扩展性主要考察网络节点、共识算法、外围开发、云平台集成四个方面。

(一)网络节点:商业区块链A和Fabric网络节点可扩展性高,商业区块链B不支持网络节点动态删除

网络节点主要测试三个指标:网络节点动态增加、网络节点动态删除、网络节点数量限制。三个指标的测试方法都是通过白皮书与相关文档进行专家判断,具体来说,第一、二个指标的测试方法是使用系统提供的命令尝试在网络中动态增加或删除一个节点,检查节点增加或删除后网络状态是否正常;第三个指标的测试方法是判断是网络节点是否有限制,若有限制,限制是多少,即为区块链网络规模,通过模拟不断动态增加网络节点数,检查网络规模到达节点数限制前,是否正常,若无限制,通过模拟不间断动态增加网络节点数,检查网络是否异常。具体测试结果如下表。

mvfWAAAAAElFTkSuQmCC
测试结果表明,商业区块链A和Fabric网络节点可扩展性功能完备,可扩展性高,商业区块链B不支持网络节点动态删除。

(二)共识算法:商业区块链A和Fabric共识算法可扩展性高,商业区块链B不支持可插拔自定义共识算法

共识算法主要测试六个指标:可插拔自定义共识算法、若采用PoW,挖矿难度能否自定义?、若采用PoW,需要多少个区块的确认才能保证一笔交易不会被撤销?、共识算法根据网络规模调整、共识算法根据参与方数量调整、共识算法根据交易吞吐量需求调整。六个指标的测试方法都是通过白皮书与相关文件进行专家判断,具体来说,第一个指标的测试方法是通过区块链的预留接口加载自定义的共识算法,检查网络中节点达成共识的情况;第二个指标的测试方法是通过区块链提供的接口进行自定义挖矿难度,检验不同挖矿难度下,交易达成共识所需时间是否不同;第三个指标的测试方法是判断是否采用PoW,若采用,需要等N个区块后才能真正确认交易,计算N个区块后该笔交易被丢弃的概率;后三个指标的测试方法是检查共识算法是否能够自定义配置,配置项中是否有根据网络规模、参与方数量或交易吞吐量进行调整的参数。具体测试结果如下表。

+9vHfue+0zjplCaGPCoMQYmpNbqRBCCCGEEEIYTr
测试结果表明,商业区块链A和Fabric支持可插拔自定义共识算法,共识算法可扩展性高,商业区块链B不支持可插拔自定义共识算法。

(三)外围开发:商业区块链A外围开发支持丰富,Fabric次之,商业区块链B仅支持SDK、API

外围开发主要测试三个指标:可插拔Plugin、ETL、 SDK和API,第一个指标的测试方法是可根据已有的Plugin进行安装与卸载来验证Plugin的可用性;第二、三个指标的测试方法是根据提供的ETL接口、SDK、API进行开发验证。具体测试结果见下表。

pAZ83xvOXDKF0OYPYyku+xHbLAQZi0j6ULVg4InM
测试结果表明,商业区块链A支持可插拔Plugin、ETL、 SDK和API开发,可扩展性好,Fabric不支持ETL开发,商业区块链B只支持SDK和API开发。

(四)云平台集成:商业区块链A和Fabric云平台集成支持范围大,商业区块链B云平台集成缺失

云平台集成主要测试三个指标:与云平台集成、与哪些云平台集成、提供相应的集成接口,第一个指标的测试方法是使用云平台进行集成验证;第二个指标的测试方法是分别进行不同种类的云平台验证;第三个指标的测试方法是使用相应的集成接口进行验证。具体测试结果如下表。

UX+r11rBNMwAAAABJRU5ErkJggg==
测试结果表明,商业区块链A和Fabric支持与众多主流云平台集成,且提供相应的集成接口,商业区块链B不支持与云平台集成。

综合来看,网络节点、共识算法、云平台集成方面,商业区块链A和Fabric可扩展性高,外围开发方面,商业区块链A广泛支持。



原文发布时间为:2018年01月04日
本文作者:区块链大本营
本文来源:CSDN区块链大本营,如需转载请联系原作者。

目录
相关文章
|
数据采集 安全 算法
阿里云Link Security为企业级区块链提供易用性安全解决方案
全球知名的市场研究公司Forrester,通过对包括阿里云在内的全球领先区块链企业进行调研,发布了区块链技术和市场分析报告,为企业如何基于区块链构建分布式信任体系、打造和增强数字化生态系统提供了一系列前瞻性和实用型的建议。
549 0
阿里云Link Security为企业级区块链提供易用性安全解决方案
|
安全 物联网 区块链
阿里云Link Security为企业级区块链提供易用性安全解决方案
近期,全球知名的市场研究公司Forrester,通过对包括阿里云在内的全球领先区块链企业进行调研,发布了区块链技术和市场分析报告,为企业如何基于区块链构建分布式信任体系、打造和增强数字化生态系统提供了一系列前瞻性和实用型的建议。
18448 0
|
9月前
|
存储 安全 区块链
区块链游戏系统开发(开发详细)/案例开发/设计功能/逻辑方案/源码平台
  区块链游戏系统开发是一个复杂而精密的过程。首先,需要进行需求分析和规划,确定游戏系统的功能和特性。然后,进行技术选型和架构设计,选择适合的区块链平台和开发工具。接下来,进行系统的搭建和编码,实现游戏逻辑和用户交互功能。最后,进行测试和优化,确保系统的稳定性和性能。
|
9月前
|
安全 Go 区块链
区块链游戏链游系统开发功能详情丨方案逻辑丨开发项目丨案例分析丨源码规则
 In recent years, with the continuous development of blockchain technology, NFTs (non homogeneous tokens) and DAPPs (decentralized applications) have emerged in the gaming industry.
|
9月前
|
存储 JavaScript 前端开发
区块链代币支付钱包(trx/trc20代币/usdt)对接开发
区块链代币支付钱包(trx/trc20代币/usdt)对接开发
|
10月前
|
存储 机器人 大数据
量化交易机器人系统开发(开发策略)及案例丨数字货币区块链交易所系统开发详细项目/方案设计/开发逻辑/源码版
  区块链的核心技术之一就是公开且透明的交易信息。一般情况下,在区块链内产生、流转和存储的信息是对所有节点用户开放的,其高度的透明化也使得区块内的所有人都能够查看数据的所有相关信息同时使用其应用。因此,区块链技术在信息共享与数据交换领域具有一定的优势。
|
10月前
|
存储 安全 区块链
区块链智能合约DAPP开发|DAPP合约代币项目开发(案例说明)
区块链技术使用了分布式网络来实现去中心化