开源进展 | 微众银行区块链中间件平台WeBASE v1.3.1发布_EBASE:dimecoin

作者:WeBASE

来源:微众银行区块链

WeBASE是一个体验友好、功能丰富的区块链中间件平台,通过一系列通用功能组件和实用工具,助力开发者快速搭建区块链应用的基础环境,提供可视化合约IDE和一站式联盟链管理台。

上一个版本,WeBASE对链上事件通知、私钥托管和交易上链等功能进行优化。结合社区开发者的反馈与底层FISCOBCOS的新增特性,我们在WeBASEv1.3.1中新增了动态群组管理、合约ABI导入、合约ABI解析、节点流量日志解析等功能;同时,控制台与节点前置的私钥也可以导入到WeBASE了。

目前,WeBASEv1.3.1已正式发布。本文带大家概括性地认识本次更新的关键特性,欢迎大家积极体验新版本,并将开发心得和建议反馈给我们。

动态群组管理

在过去的版本中,用户在各节点之间创建新群组时,需要到节点的部署机器上执行多个脚本与命令,才可以创建一个新的群组。用户能否更方便地对节点和群组进行运维和管理呢?WeBASEv1.3.1给出了答案。

WeBASEv1.3.1支持创建、启动、停止等动态群组管理功能,同时支持增、删、查、改等动态群组成员管理功能。

群组管理入口图示

群组管理页图示

小改变,大便利!如今,用户在WeBASE管理台中,为联盟链一个新区块链应用创建群组时,只需要像“拉聊天群”一样,在页面选中多个节点,输入配置即可“拉群成功”。

节点与群组图示

合约ABI导入

多机构共建联盟链应用时,经常会遇到这样的需求:区块链合约可能由某一个机构独立完成,而大家都需要调用此合约。

例如,机构A在自己的WeBASE中完成合约的编辑、编译、部署之后,机构B也需要调用这个合约,这个时候,机构B想要机构A提供合约原文,但是机构A又不想暴露具体的合约代码实现。

这个需求WeBASEv1.3.1安排上了!WeBASEv1.3.1加入合约ABI导入功能,这样一来,机构A就可以在不暴露合约代码实现的基础上,提供合约地址和合约ABI给机构B。机构B导入相应ABI和合约地址后,就可以像普通合约一样调用其方法了。

合约ABI导入图示

合约ABI编码器

智能合约的ABI(ApplicationBinaryInterface)实际上是智能合约的二进制接口标准,它定义了一个编码协议,不同语言都可以遵守这个协议编码合约交易。

随着社区的发展壮大,用户需求日渐多元。其中,我们发现不少用户想拥有自己熟悉语言的SDK。事实上,有些用户已经开始动手构建这样的SDK。但是开发过程中,用户反馈遇到了交易编码规则繁复、没有趁手ABI编码工具可以参照等困难。

WeBASEv1.3.1召唤了ABI编码器,让用户可以可视化地观察整个ABI编码过程。下面,我们导入一个?HelloWorld.sol合约的ABI,以此了解ABI编码器的各个功能。

合约ABI编码器图示

从上图的ABI窗口中可以看到?

HelloWorld?合约的?

set(uint256)?方法,下方则是解析之后得到ABI中包含了?

set?这个方法,输入?

set?方法的入参为?

0x123?后,可以看到下方的输出窗口出现了?

set?方法的签名?

0x8311131?,而入参则是补全到32位的十六进制的?

123?。

希望这个功能可以帮助到社区的这部分用户,也欢迎大家向社区贡献更好的方法。

私钥导入功能

随着FISCOBCOS开源社区的蓬勃发展,底层FISCOBCOS配套使用的工具越来越多,有FISCOBCOSconsole、WeBASE、Buildchain等等。这些工具的产生为应用构建带来极大便利,但同时也有用户反馈,这些平台中的私钥账号格式不一,账号不能兼容。

WeBASEv1.3.1提供多种私钥格式导入功能,让FISCOBCOSconsole和Buildchain等工具的私钥账号能够导入,方便跨平台的私钥管理和合约调用。同时,WeBASEv1.3.1也支持市面常用的私钥格式,兼容其他平台私钥。

私钥导入图示

新增交易通道

WeBASEv1.3.1新增交易通道,可通过WeBASE-Transaction的proxy分支搭建。WeBASE-Transaction用Web3sdk直连节点,支持平行扩展,支持WeBASE-Sign和区块链应用相关服务部署在同一区域,安全性大幅提升。

新增数据统计服务

WeBASEv1.3.1新增WeBASE-Stat。WeBASE-Stat通过WeBASE-Front采集CPU、内存、IO、群组大小、群组gas、群组网络流量的数据,记录在数据库。该服务供业务层在区块链运行过程中进行实时数据分析、健康度统计和监控,为运维管理提供数据支撑。

其他优化

优化:支持根据encryptType自动切换国密与非国密的solcJjar包进行合约编译

优化:移除自动删除无效群组数据的逻辑,通过群组管理手动删除

bugfix:链上事件通知中,订阅合约Event多个参数时订阅失败问题

bugfix:修复节点前置web页面中节点监控的入参错误问题

bugfix:修复公钥用户发交易时签名报空问题

bugfix:修复部署合约权限不足,导致合约地址为0x0的问题

即刻使用

最新代码和技术文档已同步更新,欢迎体验和star支持。

WeBASE代码仓库:https://github.com/WeBankFinTech/WeBASE

WeBASE国内镜像:https://gitee.com/WeBank/WeBASE

WeBASE技术文档:https://webasedoc.readthedocs.io/zh_CN/latest

WeBASE技术文档国内镜像:https://fintech.webank.com/developer/docs/webase

首次体验WeBASE,可参考一键部署文档:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE/install.html

如需升级已有版本,可参考:

WeBASE-Front升级说明:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Front/upgrade.html

WeBASE-Node-Manager升级说明:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Node-Manager/upgrade.html

WeBASE-Sign升级说明:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Sign/upgrade.html

向我们报告问题,欢迎提交issue:https://github.com/WeBankFinTech/WeBASE/issues

如需咨询技术问题,欢迎进技术群交流:关注本公众号,对话框回复【

小助手】进群

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-6:454ms