10 月 23 - 25 日,QCon 上海站即将召开,9折优惠最后2天 了解详情
写点什么

解析区块链落地公有云服务的四要义

  • 2020-04-03
  • 本文字数:2371 字

    阅读完需:约 8 分钟

解析区块链落地公有云服务的四要义

Hyperledger Fabric 概述及选型说明

区块链不是一种新的技术,而是由多种技术构成的框架,包含共享账本、共识算法、数据安全隐私保护以及可编程、图灵完备智能合约,是一种防篡改的、共享的数字化账本,用于记录公有或私有对等网络中的交易,可以提高效率、降低成本、降低风险并且能促进互信,构建出一个多中心化,共识,可信,不可篡改并且可追溯的系统。


区块链分为公有链,私有链和联盟链。


公有链是任何人都可以参与使用和维护,信息是完全公开的。当引入许可机制,就可以实现私有链和联盟链。


私有链由集中管理者进行管理限制,只有内部少数人可以使用,信息不公开。


联盟链介于两者之间由若干组织一起维护一条区块链,该区块链的使用必须带有权限控制的限制访问,相关信息会得到保护。


区块链 Hyperledger Fabric 社区相对成熟稳定,华为云在 2016 年投入该社区,并基于此架构开发区块链服务,提供联盟链和私有链。

华为云平台架构及使用介绍

为解决区块链在企业级场景下的一些突出问题,包括系统性能、功能完备性、系统扩展性、易用性等,华为云区块链采用分层架构设计、云链结合、优化共识算法、容器、微服务架构与可伸缩的分布式云存储技术等创新技术方案。

华为云区块链服务包括 4 层 2 列

区块链资源层:华为云 IaaS 和华为云的基础设施资源层及应用服务层,为区块链系统提供无限扩展的存储、高速的网络、按需购买弹性伸缩和故障自动恢复的节点等区块链资源。


区块链服务平台:目前基于 Hyperleger1.0、docker 和 Kubernates 上构建,具有极强的可靠性和扩展性,后续根据市场需求逐步支持 Corda 和 Ethereum 等优秀区块链框架,为上层应用低成本、快速的提供高安全、高可靠、高性能的企业级区块链系统。


合约层:目前提供 Hyperledger 标准智能合约接口,用户可以根据不同应用场景构建不同的智能合约,后续将联合合作伙伴为用户打造通用场景智能合约库如供应链管理和溯源、供应链金融、数字资产、公益慈善和互联网保险等,企业可以在此基础上快速构建区块链应用场景。


业务应用层:为最终用户的提供可信、安全、快捷的区块链应用,用户可以使用华为云提供的各种解决方案(供应链金融解决方案、电商行业解决方案、游戏行业解决方案、零售行业解决方案、新能源行业解决方案等等),结合合约层快速搭建区块链应用。


区块链系统安全:由华为云安全提供,联盟链最重要的特点是节点的可控性和账本的安全,华为云安全可以为区块链节点、账本、智能合约以及上层应用提供全方位的安全保障。


软件开发云:用户可以使用软件开发云实现业务应用、智能合约从开发、测试到部署等 CI/CD 全系列流程。


通过这种分层架构设计华为云区块链服务为企业提供全方位的区块链服务,帮助企业快速简单的落地区块链场景。



用户通过华为云区块链服务 BCS 的配置页面,只需输入几个配置参数,点击确认,华为云应用服务根据参数和内置的最佳实践通过 Kubernetes 将区块链各个节点以 docker 容器运行方式自动部署到指定集群,只需要几分钟即可一键部署一个完整的企业级区块链系统。

将上述创建的私有链 扩展为联盟链也非常简单

华为云区块链服务利用了公有云基础设施,连接周边服务,每个联盟成员为华为云独立租户,他们的集群都是属于不同的 vpc,独立管理自己的节点和账本,区块链服务开发自己的邀请机制,联盟发起成员可以通过租户账号邀请的方式将其他华为云租户加入到现有的区块链系统通道中,通过绑定公网地址使不同 vpc 内部的节点可以通信,根据业务需求逐步扩大联盟链成员。


在部署区块链服务之后,用户可以使用软件开发云实现业务应用、智能合约从开发、测试到部署的 CI/CD 全系列流程。华为云区块链服务还提供图形化的界面和示例代码,帮助开发人员进行链代码的开发、安装和实例化;应用程序开发配置和构建;部署应用程序服务端和前端,调试业务等。

分布式系统共识问题

提升共识效率是区块链系统的核心问题。当前的 fabric 版本仅支持 solo 模式和 kafka 模式的共识算法,无法识别拜占庭错误。为了解决这个问题,华为云区块链服务集成了 PBFT 共识算法。


PBFT 算法为了克服 Primary Node 采用了复杂的全量点对点通信来监听各类异常行为,通信复杂度达到 O(n^2),同时额外增加了大量签名校验,带来繁重的系统开销,降低了共识效率、节点扩展性。


此外,在主节点选举或故障期间 PBFT 将无法正常共识,整个区块链系统服务能力将会大幅降低甚至无法服务。华为云区块链服务通过改进共识流程,保障区块链系统在节点故障和切主节点期间对外服务的稳定性,同时通过减少不必要的签名验证、简化共识流程,将通信复杂度从 O(n^2)减少到 O(n),有效提升了共识效率和扩展性。


华为云还提出了更高性能的适合于联盟链的 FBFT 快速拜占庭容错算法,提高其共识速度到 2000-1000tps。


密码学及安全技术


为了满足国内银行、金融业的需求,华为云区块链服务支持国密算法 SM2/3/4,同时满足合规要求。国密算法是国家密码局制定标准的一系列算法,2017 年 11 月 SM2/9 正式进入 ISO/IEC 标准。


区块链系统中,账本对参与组织是透明的。对于一些行业,如金融业,交易信息是敏感数据,非业务相关方不能查看,同时还要满足监管机构的监管要求,而大部分的区块链并没有满足隐私性要求。


华为云区块链服务提供带有零知识证明的同态加密技术:


  1. 同态加密库用公钥对交易数据进行加密保护,交易是密文运算,最终账本中加密保存,即使节点被攻破,获取到账本记录也无法解密;

  2. 提供范围证明校验,背书节点能够对密文进行背书,无需解密就能校验交易的正确性,从而识别出恶意交易风险,保证了智能合约的正确执行。华为开发出适用于 Hyperledger Fabric 平台的保密交易系统,通过改良的算法,比起使用传统的加法同态加密与基于环签名的范围零知识证明,性能大幅提升。


本文转载自华为云产品与解决方案公众号。


原文链接:https://mp.weixin.qq.com/s/Pf7rGCmuzvhuuurHRxOAlA


2020-04-03 13:331358

评论

发布
暂无评论
发现更多内容

分布式数据库下子查询和 Join 等复杂 SQL 如何实现?

TDengine

数据库 tdengine 时序数据库

如何正确的评测视频画质

百度Geek说

视屏质量

阿里超大规模 Flink 集群运维实践

阿里云大数据AI技术

大数据 flink 运维

GraphX 图计算实践之模式匹配抽取特定子图

NebulaGraph

图数据库 知识图谱 Nebula Graph

Hoo研究院|5月下半月区块链行业投资机构动向

区块链前沿News

Hoo

【Spring 学习笔记(六)】Spring Bean 后置处理器

倔强的牛角

Java spring 6月月更

3.0.0 alpha 重磅发布!九大新功能、全新 UI 解锁调度系统新能力

亚马逊云科技 (Amazon Web Services)

UI 系统 新功能 Tech 专栏

多云管理平台和运维管理平台有什么区别?两者一样吗?

行云管家

云计算 多云管理 云管理

百问百答第41期:应用性能探针监测原理-Java探针

博睿数据

智能运维 博睿数据 性能检测

趣步运动挖矿系统开发模式详情

开发微hkkf5566

淘金家园NFT链游系统开发模式详解

开发微hkkf5566

IET技能调研首次落地亚洲国家 为阿联酋工程技术发展提供洞察

E科讯

WEB3:什么是去中心化数据库

devpoint

分布式 去中心化 Web3.0 6月月更 InfoQ极客传媒15周年庆

5G、AI、云计算,什么是云渲染?

Finovy Cloud

人工智能 云服务器 GPU服务器

Websocket 10分钟快速入门

领创集团Advance Intelligence Group

websocket

一站式智能运维解决方案,企业系统的隐形守护者

云桌派

阿里云 IT 解决方案 智能运维 客户案例

web前端培训 SCSS 使用技巧总结分享

@零度

前端开发 scss

软件定义汽车时代下的云原生转型实战方法论

York

容器 云原生 车联网 软件架构 6月月更

云计算运维需要经常上夜班吗?需要倒班吗?

行云管家

云计算 运维 IT运维

函数计算异步任务能力介绍 - 任务触发去重

阿里巴巴中间件

阿里云 云原生 函数计算 FC

Apache Kyuubi 高可用的云原生实现

移动云大数据

高可用 云原生 Kyuubi

大数据培训Linux常用命令总结分享

@零度

大数据 Linux

Seata 企业版正式开放公测

阿里巴巴中间件

阿里云 云原生 seata

用 Golang 重写 rsync(2):方案的选择

百家饭隐私计算平台创业者

c golang

Data Summit 2022 大会资料分享(共23个)

墨天轮

数据库 AI 数据仓库 数据湖 BI

TiFlash 源码阅读(三)TiFlash DeltaTree 存储引擎设计及实现分析 - Part 1

PingCAP

代码注释的艺术,优秀代码真的不需要注释吗?

阿里巴巴中间件

阿里云 代码 技术分享

淘金家园NFT链游系统开发逻辑分析

开发微hkkf5566

工赋开发者社区 | 风口上的低代码,技术人需要考虑哪些?

工赋开发者社区

低代码 低代码开发 低代码开发平台

彰显个性│github和gitlab之自定义首页样式

自定义 主题 6月月更

解析区块链落地公有云服务的四要义_区块链_华为云产品与解决方案_InfoQ精选文章