升级说明
WeBASE-Sign升级的必须步骤:
- 使用新的安装包,并将旧版本yml已有配置添加到新版本yml中;可通过命令对比新旧yml的差异
- 查看签名服务升级文档中对应版本是否需要修改数据表,若不需要升级则跳过 3.1 若需要升级数据表,首先使用
mysqldump
命令备份数据库 3.2 按照升级文档指引,操作数据表 bash stop.sh && bash start.sh
重启
各个版本的具体修改可参考下文
- 新增私钥托管与签名服务Docker镜像,
webasepro/webase-sign:v1.5.3
v1.5.0
- 支持导出私钥,增加配置项
supportPrivateKeyTransfer: true
,接口支持私钥传输(aes加密后的私钥),配置项为false
时不支持导出 - jar包升级:mysql-connector-java:8.0.22、bcprov-jdk15on:1.67
- 修复ECDSA签名结果序列化bug
- 增加数据签名接口
v1.4.2
- 使用新版java-sdk替换web3sdk
- 增加返回 WeBASE-Sign 版本号接口
v1.3.2
- 移除Fastjson,替换为Jackson 2.11.0。
- 升级web3sdk为2.4.1,并升级springboot等依赖项
- 新增
/user/import
接口,支持导入私钥,详情参考接口文档 - 新增
Credential
实例的缓存机制,优化签名性能
v1.3.0
- WeBASE-Sign的tb_user表新增两个字段: 私钥用户的唯一业务编号,和私钥用户所属应用编号
appId
如果WeBASE-Sign中有已存在的私钥数据,则在tb_user
表新增列sign_user_id
和app_id
后,还需要赋予其初始值,且sign_user_id
需赋予唯一值
登陆mysql后,进入到相应database中,以webasesign
的database为例;
如果有已存在的user的sign_user_id和app_id赋值,sign_user_id赋予唯一的随机值即可;
// app_id可以设置为一样,也可根据user具体标签赋予不同的app_id值
mysql> update tb_user set app_id = 'app_default' where 1=1;
// 为每个user的sign_user_id设置一个唯一的随机值
API更新
- WeBASE-Sign的新建私钥接口
/user/newUser
需传入signUserId
,appId
才可新建用户,且可以传值encryptType
指定该用户的类型为ECDSA或国密算法;
值得注意的是,现在WeBASE-Sign新建私钥用户后,不再返回privateKey字段
,即私钥不离开WeBASE-Sign数据库。
- WeBASE-Sign新增停用用户的接口
/user
(DELETE),可根据停用相应用户;