分布式身份解决方案WeIdentity开源以来,不断更新迭代,为开发者提供更便捷易用的使用体验。在3月24日最新发布的WeIdentity v1.6.0中,我们新增了可视化的安装部署,同时对数据传输方式进行新增和改进,使其支持BarCode方式编码数据并且能够建立可信通道传输,开发者将有更多选择来进行安全的数据传输。
本文将概述性介绍WeIdentity v1.6.0的特性,后续我们会结合分布式身份的应用场景对WeIdentity进行深入解读,敬请持续关注。
可视化部署
此前,为了解决开发者在部署过程中遇到的一些问题,如需要登录linux系统操作繁琐的命令,需要为命令粘贴数据,并记住部署的weId以及cptId等,我们提供了一个安装部署工具 weid-build-tool,协助开发者便捷部署合约及进行自动化配置。
WeIdentity v1.6.0 对weid-build-tool进行了升级,在之前基础上完善了可视化部署解决方案,且具备数据维护能力,开发者只需执行少量操作即可完成可视化部署:
-
仅需几步,即可完成从下载到安装启动服务
-
可以直接通过浏览器来配置节点信息、数据库信息
-
能够通过按钮一键部署合约,通过CNS来维护合约等
-
所有操作通过页面即可完成,极大降低维护成本
1. 下载安装脚本
wget -c https://github.com/WeBankFinTech/weid-build-tools/raw/develop/script/install_build_tool.sh
2. 安装部署
source ./install_build_tool.sh
3. 启动web服务(如果想使用命令模式,可以按照之前的模式操作)
./start.sh
智能合约地址链上管理
联盟链合约地址的链下自行管理及机构间自行传输,可能会增加合约地址泄露风险,也带来更高的合约维护管理成本。
WeIdentity v1.6.0 通过 CNS 进行合约链上管理,避免了合约地址传输风险。联盟链里的机构成员可以通过 WeIdentity 安装部署工具中的可视化管理工具维护、管理自己的合约地址,并且可以使用其他机构部署的合约地址。
此前,配置 WeIdentity 相关合约地址需要配置五个不同合约地址,在 WeIdentity v1.6.0 里,我们保留了多合约地址配置的同时,新增了 CNS 地址配置,也就是说,通过v1.6.0,开发者仅需配置 CNS 地址,即可在加载时自动到链上根据配置的 CNS 地址获取加载相关的合约。
新增支持条形码传输协议
此前,WeIdentity支持的传输协议有:QR CODE(二维码传输协议)、JSON(JSON传输协议)、PDF(PDF文件传输协议), WeIdentity v1.6.0 新增了 BARCODE(条形码传输协议),丰富了 WeIdentity 的传输协议。
WeIdentity 的传输协议旨在解决用户电子凭证传输过程中的安全可信问题,规范了数据传输的结构,简化了传输过程。
支持建立可信数据传输通道
WeIdentity v1.6.0 支持通信的双方进行身份认证并创建可信传输通道,以此来加密和安全地传输数据,认证方式分为单向认证和双向认证。作为数据传输的基础功能,该功能为开发者提供更为安全可靠的数据传输能力。
存证的额外信息存储
WeIdentity 创建的存证可以添加类似 log 记录的额外信息,用来记录和这个存证相关的业务信息,如存证的使用记录等。
开发者既可以在创建时通过createEvidence()的 log 参数项记录额外信息,也可以在存证创建成功之后,通过调用addLogByHash()或者addLogByCustomKey()方式记录额外信息,并且通过getEvidence()接口读取这些额外信息。
值得注意的是,WeIdentity 存证可以由不同的调用者创建并打上签名,因而不同调用者写入的log记录也是相互独立的。
基于Endpoint Service的数据授权机制
WeIdentity 内置了 CPT101 作为数据授权的凭证模板,它包括以下几项内容:授权发起方WeID、授权接收方WeID、授权有效期、授权服务地址(ServiceUrl)、授权资源UUID。
WeIdentity同时提供了一套基于Endpoint Service的授权机制示例,可以参考“WeIdentity Endpoint Service部署指引”,部署WeIdentity Rest Service和Endpoint Service,并参考“WeIdentity-Sample”,实现端点侧根据资源UUID查询资源的功能。
就绪之后,开发者就可以通过POST /weid/api/authorize/fetch-data,传入符合CPT101格式的授权凭证,进而访问数据了。Rest Service后台会验证CPT101授权凭证的合法性,验证通过后,便会通过回调方法访问端点侧的数据资源,并返回给Rest Service后台。
WeIdentity Endpoint Service部署指引:
https://weidentity.readthedocs.io/zh_CN/latest/docs/weidentity-endpoint-deploy.html
WeIdentity-Sample:
https://github.com/WeBankFinTech/WeIdentity-Sample/tree/master/src/main/java/com/webank/weid/demo/command/EndpointSample.java
除了上述新增特性之外, WeIdentity v1.6.0 还修复了一些问题,例如,对PDF Transportation中字体文件损坏增加了校验,会比对字体的MD5,如果文件不全则直接报错。
最新代码和技术文档已同步更新,欢迎体验和star支持:
github代码仓库:
https://github.com/WeBankFinTech/WeIdentity
gitee高速镜像:
https://gitee.com/WeBank/WeIdentity
文档仓库:
https://weidentity.readthedocs.io/zh_CN/latest/
我们也为更多用户提供了包括Demo在内的一站式体验流程,帮助快速部署和体验核心功能,了解WeIdentity的应用场景。如果您是开发人员,还可以进一步了解WeIdentity的参考实现,以及深入了解SDK的使用方式。
一站式体验链接:
https://weidentity.readthedocs.io/zh_CN/latest/docs/one-stop-experience.html
什么是WeIdentity
WeIdentity是一套分布式多中心的技术解决方案,可承载实体对象(人或者物)的现实身份与链上身份的可信映射、以及实现实体对象之间安全的访问授权与数据交换。
WeIdentity由微众银行自主研发并完全开源,实现了一套符合W3C DID规范的分布式多中心的身份可信协议,和符合W3C VC规范的可验证数字凭证技术,致力于促进泛行业、跨机构、跨地域间的身份认证和数据合作。
—END—
活动推荐