技术解析+代码实战,带你入门华为云政务区块链平台

华为云开发者社区 华为云开发者社区     2023-02-15     420

关键词:

摘要:政务区块链平台是行业区块链平台的初步实践,未来在区块链技术的发展下,还会打造面向其他领域的链管平台,构建多方协同的分布式账本,让区块链应用更便捷高效的为产业服务。

本文分享自华为云社区《技术解析+代码实战,带你入门华为云政务区块链平台》,作者:敏捷的小智。

1、行业区块链平台诞生背景

互联网时代下,区块链作为一种分布式的公开账本,具有去中心化、开放匿名、不可伪造篡改等特点,凭借其独特的信任机制和信息传递技术,在金融、医疗、教育等各个领域都有着广泛的应用,推动着科技领域的变革。

传统BaaS(Blockchain as a Service)平台将区块链集成为云服务提供给客户,想比于PaaS平台而言,充分利用了云计算的弹性、稳定性和灵活性;而行业区块链平台又是在BaaS平台之上的区块链中台应用,在业界标准不统一、架构参差不齐的大背景下,充分屏蔽了底层链在模型和部署流程上的差异,进一步节省了用户部署业务和应用的成本,实现了跨云服务的一站式异构链管理。即便是技术薄弱的用户也可通过此平台实现快速统一的规划建站,满足各类业务需求,解决了区块链技术人才短缺、运维人力成本高的难题。

2、政务区块链平台介绍

政务领域的用户具有主体多、环节复杂、信息量大等特点,传统数据共享模式下,业务办理效率和数据共享能力较低,不仅需要大量的人工审批,文件、库表在复制传递的过程中还可能引发数据不一致,信息泄露,时效性较弱,且不易管理。自2016年起,国家鼓励探索“政务上链”,利用区块链的数据共享模式实现政务数据跨部门、跨区域的共同维护和利用,推动政务数字化改革,实现智能化的社会治理。

政务区块链平台UGBaaS(Unified Governmental BaaS)是针对政务行业开发的新型链管平台,一个集中式的运营运维系统,允许用户平滑接入名下的各类区块链,实现统一的管理监控。它极大的简化了业务流程,包含身份认证管理、业务管理、凭证转换服务、数据采集和展现服务、合约仓库和应用仓库、内部api网关等功能模块,使得管理员可以轻松地治理底层资源,管理租户配额,一键部署联盟和智能合约,并监控底层链和节点。底层自然支持Hyperledger Fabric区块链,亦可纳管Ethereum、Quorum等异构链。

3、主要功能模块

管理员视角:

租户视角:

4、平台主要技术:

• 组件多活与多region容灾:

政务区块链平台部署在一个多节点高可用集群上,每个容器都有相同处理业务的能力,部分节点故障时服务仍能继续使用,达到一定的容灾性。平台内部需要存储大量数据,因此在部署时同期部署了分布式的数据库,均匀的部署在集群的每个节点上。数据库内部采用高一致性算法,并维护多个历史版本数据,在检测到当前监听的数据库节点健康状态异常后会自动建立新的客户端连接,切换连接源,保证数据的强一致性和高可用性。

• 双重缓存层与请求消息队列:

政务区块链平台组件对外开放一套标准政务接口,部署时会签发一套tls证书并提供下载方式,用户可以通过该证书连接到组件上,通过调用开放API运行相应功能。由于涉及大量接口调用,组件入口处设置了双重缓存层,保证不必要的底层接口调用,加强接口性能。当用户请求到达组件时,消息处理的流量控制器会拒绝容量外的请求,容量内的请求会按到达顺序依次下发,并在消费请求后以一定的qps继续填充队列,保证组件的稳定。

• 流程引擎与任务树:

平台内部需维护联盟、业务链、组织和底层BaaS平台相应的实体关系,通过映射的方式屏蔽了异构链模型上的差异(如子链、通道的区别,联盟、网络的概念,组织、节点等最小粒度),通过抽象任务模板对象封装每个业务操作对应的具体步骤,自动化的并行或串行执行区块链创建、邀请、通知、审批等任务。处理器在任务调度的时候根据反射自动匹配不同的任务类型,并通过分析嵌套深度解析任务下的子任务,生成多个并行任务流。自动化的流程引擎可以处理用户下发的特定任务、执行定时任务(如监控、日志、审计、告警、清理等)。任务执行需具备原子性,一旦任务失败会自动回滚该任务中已经执行的部分。任务下发后,用户可通过任务进度查询接口获取当前业务操作的处理进度,一旦任务失败会展示详细的执行记录和处理建议。树状的任务结构能够保证同级任务并发执行,任务的处理可以使用颜色标记法进行标记,每次执行允许一定的容错并设置超时时间,父节点在检测到全部子节点为某个非进行中状态时便会更新,由底向上,直至根节点状态变更完成。

• 异构区块链平台统一接入:

异构链统一接入主要有鉴权方式、模型差异、建链审批流程差异等难点。对于无管理面的自有区块链,政务区块链平台制订了一套统一接入接口,希望被平台纳管的区块链只需实现这套接口便可注册后接入;对于已有管理面并开放接口的区块链平台,政务区块链平台提供接口映射的注册方式,厂商可以通过注入模板自动将一个或多个自有接口映射到政务区块链平台的统一接口上,新链接入后平台会自动执行接入校验流程,通过默认的内置租户进行调测,检查新平台接口的连通性,并通过服务器健康状态的接口定期巡检平台的可用性。对于注册全部变更接口的接入方式,平台全生命周期的维护该平台下的所有区块链网络;也提供只注册管理类接口的纳管模式,使用户对接已部署的区块链。同时,未来还将考虑以跨链方式实现异构链的互联互通。

5、UGBaaS客户端sample代码:

从行业区块链平台新建实例处点击下载证书压缩包,ugbaascert/tls路径下包含client.crt client.key两个文件,示例代码如下

图1 证书导入代码

导入证书后,默认连接端口32623,url设置成政务接口文档中的接口,调用获取已注册组织列表接口并解析返回至结构体。

图2 获取已注册组织列表接口代码

使用政务区块链平台前均需调用组织注册接口/v1/ugbaas/orgs,注册组织和底层租户的对应关系(域信息、项目信息及aksk等,从IAM处获取),然后即可进行创建联盟、业务链、部署智能合约等操作。变更类操作均会返回操作ID,根据操作ID调用查询流程处理进度接口获取当前任务的进行状态。

结语:

区块链技术在数据共享、数据安全、隐私保护、确权确责等方面的技术优势,使其在政府、金融、供应链、交通等各个领域展现出广阔的应用前景。政务区块链平台是行业区块链平台的初步实践,未来在区块链技术的发展下,还会打造面向其他领域的链管平台,构建多方协同的分布式账本,让区块链应用更便捷高效的为产业服务。

点击关注,第一时间了解华为云新鲜技术~

区块链交易隐私如何保证?华为零知识证明技术实战解析

...云社区《区块链交易隐私如何保证?华为零知识证明技术实战解析》,作者:麦冬爸。什么是零知识证明?证明者在不泄露任何有效知识 查看详情

蚂蚁区块链平台baas技术解析与实践

...。在ATEC区块链行业研讨会分论坛上,蚂蚁金服区块链BaaS技术总监李书博做了主题为《BaaS入门到精通:区块链技术如此简单》的精彩分享。演讲中,李书博首先从技术方面介绍了蚂蚁区块链BaaS平台,随后从实践的角度介绍了客... 查看详情

华为区块链,构建可信政务服务

...济的重要手段。同时“十四五”中认为数字经济是一体化技术推动的经济模型,而区块链是其中的技术一环,区块链技术需要保障数据的确权关系,需要与其他技术融合&# 查看详情

云图说丨华为云区块链引擎服务:高安全的区块链技术服务平台,轻松部署,快速上链

...云图说】第251期华为云区块链引擎服务—高安全的区块链技术服务平台,轻松部署,快速上链!》,作者ÿ 查看详情

区块链技术:truffle开发入门(代码片段)

...f09;最受欢迎的一个开发框架,这是我们第一篇区块链技术文章介绍truffle的原因,实战是最重要的事情,这篇文章不讲原理,只搭建环境,运行第一个区块链程序(Dapp)。安装truffl 查看详情

baas是什么?区块链baas平台开发解决方案带你知晓

...构建,目前支持HyperledgerFabric、Iroha,提供的核心技术包括可插拔的分布式共识机制、分布式账本存储机制、安全多语言支持的智能合约引擎、跨链和链上链下的数据交互、安全隐私保护以及分布式身份管理等。服务管理... 查看详情

baas是什么?区块链baas平台开发解决方案带你知晓

...构建,目前支持HyperledgerFabric、Iroha,提供的核心技术包括可插拔的分布式共识机制、分布式账本存储机制、安全多语言支持的智能合约引擎、跨链和链上链下的数据交互、安全隐私保护以及分布式身份管理等。服务管理... 查看详情

区块链技术:truffle开发入门

...hereum)最受欢迎的一个开发框架,这是我们第一篇区块链技术文章介绍truffle的原因,实战是最重要的事情,这篇文章不讲原理,只搭建环境,运行第一个区块链程序(Dapp)。安装truffle$npminstall-gtruffle依赖环境NodeJS访问https://nodej... 查看详情

打造无证服务化:这个政务服务平台有点不一样

摘要:华为云携手深圳市华傲数据技术有限公司针对“数字政府建设”与“数字经济发展”两大场景,打造华傲可信政务区块链解决方案。本文分享自华为云社区《华为云携手华傲数据打造“无证服务”政务服务平台》&#... 查看详情

区块链入门到实战之区块链–应用发展阶段

...)在2005年提出的,他首次提出了加密货币概念(分布式账本技术的实现)。该分布式账本允许使用区块链技术进行金融交易,比特币是这项技术应用的突出例子 查看详情

学习hyperledgerfabric实战联盟链

第1章区块链技术基础本章介绍了区块链技术的相关基础技术要点,纯技术理论角度阐释区块链底层相关概念及所用技术1-1导学1-2区块链技术概述1-3区块链技术组成部分1-4拓展阅读推荐第2章HyperledgerFabric入门本章简单介绍了Hyperled... 查看详情

区块链中的restful链码调用api原理详解

本文适合于熟悉开源区块链技术HyperledgerFabric,以及希望更高效地使用华为云区块链服务的读者。当然,也欢迎任何对区块链技术有兴趣的读者阅读本文,相信读者们都能从中受益。2018年2月1日华为云发布企业级区块链开放平台... 查看详情

华为云区块链三大核心技术国际标准立项通过

...过立项。本文分享自华为云社区《华为云区块链三大核心技术国际标准立项通过》,作者:华为云PaaS服务小智。近日,国际电信联盟第十六研究组(ITU-TSG16 查看详情

区块链入门到实战之区块链–介绍

...个账本。这个账本是公开的,所有人都可以查看。区块链技术把先进的密码学与计算机科学相结合,确保没有人可以在不知情的情况下更改这些记录。一旦信息被添加到区块链,就不可能修改或删除它。因此,由于其 查看详情

区块链入门到实战之区块链–非对称加密

非对称加密技术也被称为公钥密码技术(简称PKI)。它使用2个成对的密钥:公钥 对外公开私钥 必须严格保密,保管好不能弄丢密钥本质上是一个数值,使用数学算法产生。可以用公钥加密消息,然后使用私钥解密;反过来... 查看详情

区块链入门到实战之区块链–发展历史

区块链的提出区块链技术是最早由计算机科学家斯图尔特·哈伯(StuartHaber)和w·斯科特·斯托内塔(W.ScottStornetta)于1991年提出。他们介绍了一种方案,用于在数字文档上加盖时间戳,防止文档被篡改。他们开发了一个系... 查看详情

区块链入门到实战之区块链–工作量证明(代码片段)

目的:解决艰难的任务,获取记账能力。区块链中,每个人手上都有账本,每个人都可以记账,但怎么能让这些账本的内容保持一致,让大家都认这个账,就需要共识机制。人类社会中,通常的共识机制是,如果某个人能完成某... 查看详情

华为云正式推出区块链服务!区块链技术将在数字经济时代大放异彩

在近日的华为全联接大会上,华为高级副总裁、华为云CEO张平安宣布,华为云正式推出区块链服务。张平安表示,使用全新研发的区块链引擎,单链条可以支持每秒5万条商品信息同时上链,吞吐量提升了10倍... 查看详情