2. 版本迭代说明

2.1. 版本及特性

以下为各个版本及其发布的主要内容: 其中v1.2.xv2.x均为LTS(Long Term Support,长期支持)版本。

2.1.1. v2.x版本及特性

版本 时间点 主要内容
v2.2.0(当前文档) 2022.03.15 1. 支持文件存储区块数据模式,减小数据库负荷,提升查询效率
2. docker go虚拟机多进程重构,提升合约执行效率
3. 公钥模式支持TBFT共识算法
4. 底层国密算法支持tjfoc、gmssl、tencentsm可切换
5. 支持证书别名方式发送交易,进一步压缩交易体积
6. 同步模块支持快速同步模式,同步节点可无需再次执行交易
7. 推出流水线共识算法MaxBFT alpha版
v2.1.0 2021.12.22 1. 发布自研P2P网络Liquid
2. 发布新的合约引擎docker-go,支持golang语言
3. 支持更丰富的身份权限控制机制:permissionedWithCert, permissionedWithKey(新), public(新)
4. 支持java sdk国密通信,grpc支持国密tls通信
5. 支持数据落盘透明加密
6. 支持badger数据库
7. 支持节点、go sdk等硬件密码机&KMS
8. 支持更丰富的RPC Server限流功能
9. 支持2.x版本的跨链
10. 新增系统合约启用开关
11. 新增合约管理线上多签
12. 虚拟机、数据存储、交易池等模块从主项目拆出作为独立项目
13. 共识等模块代码优化调整
v2.0.0 2021.08.30 1. 区块、交易等数据结构重构
2. 系统合约、身份权限等模块代码重构
3. 拆分部分模块为独立项目,并启用go mod代替原有的git submodule
4. 增加外部证书兼容 (见身份权限管理/外部证书兼容章节)

2.1.2. v1.x版本及特性

版本 时间点 主要内容
v1.2.6 2021.12.09 优化以下问题:
1. 新增BadgerDB(状态数据库为badgerdb时,暂不支持合约内迭代器功能)
2. 优化对rsa证书的兼容性
3. 优化tbft共识活性问题
4. 优化raft共识存储wal
5. 优化网络模块启动顺序
6. tjfoc国密版本库升级至1.4.1
7. go sdk、java sdk支持按照高度订阅历史合约事件
8. go sdk增加证书管理交易接口
9. java sdk支持国密tls
v1.2.5 2021.09.23 优化以下问题:
1. wasmer内存回收
2. kv迭代器执行调度逻辑
3. 完善证书冻结/解冻功能
4. tbft异常处理机制
5. raft wal存储
6. go sdk对arm兼容性
7. 基础模块开放sm2的加解密接口
v1.2.4 2021.08.13 优化以下问题:
1. RAFT:单组织多节点配置时处理异常
2. WAL:存储和共识模块使用的WAL在断电损坏下的初始化加载异常
3. 合约引擎:wasmer内存管理异常修复、gasm虚拟机在某些场景下的内存越界问题
4. 合约事件:优化事件表索引
5. rocksdb:增加迭代器兼容
6. java-sdk:增加windows编译支持
v1.2.3 2021.07.16 优化以下问题:
1. 权限校验:证书管理类系统合约的权限校验调整
2. 同态加密:更换底层依赖库,优化对不同长度私钥的兼容性
3. 零知识证明:解决在某些较低的系统版本上编译时,需指定依赖库路径问题
4. DAG:高并发下合约业务逻辑依赖其他交易写集而主动返回失败时,记录读集
5. 隐私合约:增加并发限制配置,提升并发压力过大时系统的稳定性
6. SPV节点:增加对系统合约和管理用户合约类型交易的有效性验证
7. 升级:v1.1.0版本升级到v1.2.3适配
8. 升级:java sdk支持通过配置文件创建chainClient
9. 升级:nodejs sdk支持通过配置文件创建chainClient
10. 命令行工具:dpos增加cmc命令行工具
v1.2.0 2021.06.30 1. 支持spv轻节点
2. 支持跨链
3. 合约支持基于paillier的半同态运算
4. 合约支持基于bulletproofs的范围证明
5. 合约支持kv前缀查询
6. 支持历史数据归档、恢复、查询功能
7. 新增nodejs语言的SDK
8. 共识算法支持dPoS
9.支持隐私计算
v1.1.1 2021.05.21 1. 合约引擎(GASM&WASMER)支持SQL操作状态数据;
2. 新增区块链浏览器;
3. 网络模块修复动态创建新链时数据同步问题。
v1.1.0 2021.05.12 1. 支持EVM合约引擎,兼容以太坊合约生态;
2. 支持各类合约引擎的事件订阅机制和查询机制,增加智能合约易用性;
3. 支持Maxbft流水线共识,当前支持在多链、存证交易场景下提供更高效的共识能力;
4. 支持层级身份加密方案,满足联盟链数据层级可见性需求;
5. 优化网络模块配置,增加本地配置种子节点和信任根,共识节点IP变更无需链上配置更新;
6. 优化新旧版本兼容问题。
v1.0.0 2021.01.27 1. 可装配、高性能整体框架;
2. 支持GASM、WASMER、WXVM等三种合约引擎,golang、rust、c++等三种合约语言;
3. 支持SOLO、RAFT、TBFT等三种共识算法;
4. 支持基于冲突检测的块内智能合约交易并行执行;
5. 支持LevelDB、RocksDB、MySQL等存储引擎;
6. 存储模块支持内存加速,支持故障恢复;

2.2. Docker 镜像地址

长安链·ChainMaker Docker Hub主页:

https://hub.docker.com/r/chainmakerofficial/chainmaker

ChainMaker镜像列表:

版本 镜像地址
v2.2.0 docker pull chainmakerofficial/chainmaker:v2.2.0_alpha
v2.1.0 docker pull chainmakerofficial/chainmaker:v2.1.0
v2.0.0 docker pull chainmakerofficial/chainmaker:v2.0.0
v1.2.6 docker pull chainmakerofficial/chainmaker:v1.2.6
v1.2.5 docker pull chainmakerofficial/chainmaker:v1.2.5
v1.2.4 docker pull chainmakerofficial/chainmaker:v1.2.4
v1.2.3 docker pull chainmakerofficial/chainmaker:v1.2.3
v1.2.0 docker pull chainmakerofficial/chainmaker:v1.2.0
v1.1.1 docker pull chainmakerofficial/chainmaker:v1.1.1
v1.1.0 docker pull chainmakerofficial/chainmaker:v1.1.0
v1.0.0 docker pull chainmakerofficial/chainmaker:v1.0.0_r

2.3. 版本兼容一览

项目 \ 链版本 描述 v2.2.0 v2.1.0 v2.0.0 v1.2.6 v1.2.5 v1.2.4 v1.2.3 v1.2.0 v1.1.1 v1.1.0 v1.0.0
contract-sdk-rust rust合约sdk v2.1.0, v2.0.0 v2.1.0, v2.0.0 v2.0.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.1.1 v1.1.0 v1.0.0
contract-sdk-cpp cpp合约sdk v2.1.0, v2.0.0 v2.1.0, v2.0.0 v2.0.0 v1.2.5 v1.2.5 v1.2.4 v1.2.3 \ \ \ \
contract-sdk-tinygo tinygo合约sdk v2.1.0, v2.0.0 v2.1.0, v2.0.0 v2.0.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.0.0 v1.0.0 v1.0.0
contract-sdk-solidity solidity合约sdk \ \ \ \ \ \ \ \ \ \ \
contract-sdk-docker-go docker-go合约sdk 2.2.0, 2.1.0, 2.0.0 2.1.0, 2.0.0 2.0.0 \ \ \ \ \ \ \ \
sdk-java java sdk v2.1.0, v2.2.0 v2.1.0, v2.2.0 v2.0.0 v1.2.0, v1.2.3, v1.2.4, v1.2.6 v1.2.0, v1.2.3, v1.2.4 v1.2.0, v1.2.3, v1.2.4 v1.2.0, v1.2.3, v1.2.0 v1.1.0 v1.1.0 v1.0.0
sdk-go go sdk v2.2.0, v2.1.0,v2.0.0 v2.1.0,v2.0.0 v2.0.0 v1.2.4, v1.2.5,v1.2.6 v1.2.4, v1.2.5 v1.2.4 v1.2.0, v1.2.3 v1.2.0 v1.1.1 v1.1.0 v1.0.0
chainmaker-explorer 长安链浏览器后端 v2.1.0, v2.0.0 v2.1.0, v2.0.0 v2.0.0 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 \
chainmaker-explorer-web 长安链浏览器前端 v2.1.0 v2.1.0 v2.1.0 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 v1.1.1 \
chainmaker-cryptogen 证书工具 v2.2.0,v2.1.1,v2.1.0,v2.0.0 v2.1.1,v2.1.0,v2.0.0 v2.0.0 v1.2.6 v1.2.6 v1.2.6 v1.2.0 v1.2.0 v1.0.0 v1.0.0 v1.0.0
chainmaker-tee 隐私计算 \ \ v2.0.0 v1.2.6 v1.2.5 v1.2.4 v1.2.0 \ \ \ \
chainmaker-ca CA服务 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 v1.2.0 \
chainmaker-cross 跨链 \ v2.1.0 v2.1.0 \ \ v1.2.4 \ v1.2.0 \ \ \
management-web 管理台前端 v2.1.0 v2.1.0 v2.0.0 v1.2.4 v1.2.4 v1.2.4 \ \ \ \ \
management-backend 管理台后端 v2.2.0 v2.1.0 v2.0.0 v1.2.6 v1.2.5 v1.2.4 \ \ \ \ \
chainmaker-spv 轻节点 \ v2.1.0 v2.1.0 \ \ \ v1.2.3 v1.2.0 \ \ \
chainmaker-smartplugin web插件 v1.0.0 v1.0.0 v1.0.0 \ \ \ \ \ \ \ \

2.4. 版本项目映射关系表

v2.x: v2.2.0v2.1.0v2.0.0

v1.x: v1.2.6v1.2.5v1.2.4v1.2.3v1.2.0v1.1.0v1.0.0

v2.2.0 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v2.2.0 主项目 -
sdk-go v2.2.0 sdk
sdk-java v2.2.0 sdk
sdk-nodejs v2.0.0 sdk -
chainmaker-explorer v2.1.0 区块链浏览器后端 -
chainmaker-explorer-web v2.1.0 区块链浏览器前端 -
chainmaker-cryptogen v2.2.0 证书工具
chainmaker-tee v2.0.0 隐私计算 -
chainmaker-ca v1.2.0 证书CA服务 -
docker: chainmaker-docker-go-contract v2.2.0 合约golang
docker: chainmaker-rust-contract v2.1.0 合约rust -
docker: chainmaker-go-contract v2.2.0 合约tinygo -
docker: chainmaker-cpp-contract v2.1.0 合约cpp -
docker: chainmaker-solidity-contract v2.0.0 合约solidity -
chainmaker-cross v2.0.0 长安链跨链组件 -

v2.1.0 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v2.1.0 主项目 -
sdk-go v2.1.0 sdk
sdk-java v2.1.0 sdk
sdk-nodejs v2.0.0 sdk -
chainmaker-explorer v2.1.0 区块链浏览器后端
chainmaker-explorer-web v2.1.0 区块链浏览器前端 -
chainmaker-cryptogen v2.1.0 证书工具
chainmaker-tee v2.0.0 隐私计算 -
chainmaker-ca v1.2.0 证书CA服务 -
docker: chainmaker-docker-go-contract v2.2.0 合约golang
docker: chainmaker-rust-contract v2.1.0 合约rust
docker: chainmaker-go-contract v2.1.0 合约tinygo
docker: chainmaker-cpp-contract v2.1.0 合约cpp
docker: chainmaker-solidity-contract v2.0.0 合约solidity -
management-web v2.1.0 长安链管理平台前端项目 -
management-backend v2.1.0 长安链管理平台后端项目
chainmaker-cross v2.0.0 长安链跨链组件

v2.0.0 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v2.0.0 主项目 -
sdk-go v2.0.0 sdk
sdk-nodejs v2.0.0 sdk
chainmaker-explorer v2.0.0 区块链浏览器
chainmaker-explorer-web v1.1.1 区块链浏览器前端 -
chainmaker-cryptogen v2.0.0 证书工具
chainmaker-tee v2.0.0 隐私计算
chainmaker-ca v1.2.0 证书CA服务 -
docker: chainmaker-rust-contract v2.0.0 合约rust
docker: chainmaker-go-contract v2.0.0 合约tinygo
docker: chainmaker-cpp-contract v2.0.0 合约cpp
docker: chainmaker-solidity-contract v2.0.0 合约solidity
management-web v2.0.0 长安链管理平台前端项目 -
management-backend v2.0.0 长安链管理平台后端项目 -

V 1.2.6 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.2.6 主项目 -
chainmaker-sdk-go v1.2.6 sdk
chainmaker-sdk-java v1.2.6 sdk
chainmaker-sdk-nodejs v1.2.3 sdk -
chainmaker-cryptogen v1.2.6 证书工具
docker: chainmaker-rust-contract v1.2.0 合约rust -
docker: chainmaker-go-contract v1.2.0 合约tinygo -
docker: chainmaker-cpp-contract v1.2.5 合约cpp -
docker: chainmaker-solidity-contract v1.2.0 合约solidity -
chainmaker-ca v1.2.0 证书CA服务 -
chainmaker-spv v1.2.3 轻节点 -
chainmaker-cross v1.2.4 跨链服务 -
chainmaker-tee v1.2.3 隐私计算 -
chainmaker-explorer v1.1.1 区块链浏览器 -
chainmaker-explorer-web v1.1.1 区块链浏览器 -
management-web v1.2.4 长安链管理平台前端项目 -
management-backend v1.2.4 长安链管理平台后端项目 -

V 1.2.5 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.2.5 主项目 -
chainmaker-sdk-go v1.2.5 sdk
chainmaker-sdk-java v1.2.4 sdk -
chainmaker-sdk-nodejs v1.2.3 sdk -
chainmaker-cryptogen v1.2.0 证书工具 -
docker: chainmaker-rust-contract v1.2.0 合约rust -
docker: chainmaker-go-contract v1.2.0 合约tinygo -
docker: chainmaker-cpp-contract v1.2.5 合约cpp
docker: chainmaker-solidity-contract v1.2.0 合约solidity -
chainmaker-ca v1.2.0 证书CA服务 -
chainmaker-spv v1.2.3 轻节点 -
chainmaker-cross v1.2.4 跨链服务 -
chainmaker-tee v1.2.3 隐私计算 -
chainmaker-explorer v1.1.1 区块链浏览器 -
chainmaker-explorer-web v1.1.1 区块链浏览器 -
management-web v1.2.4 长安链管理平台前端项目 -
management-backend v1.2.4 长安链管理平台后端项目 -

V 1.2.4 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.2.4 主项目 -
chainmaker-sdk-go v1.2.4 sdk
chainmaker-sdk-java v1.2.4 sdk
chainmaker-sdk-nodejs v1.2.3 sdk -
chainmaker-cryptogen v1.2.0 证书工具 -
docker: chainmaker-rust-contract v1.2.0 合约rust -
docker: chainmaker-go-contract v1.2.0 合约tinygo -
docker: chainmaker-cpp-contract v1.2.0 合约cpp -
docker: chainmaker-solidity-contract v1.2.0 合约solidity -
chainmaker-ca v1.2.0 证书CA服务 -
chainmaker-spv v1.2.3 轻节点 -
chainmaker-cross v1.2.4 跨链服务
chainmaker-tee v1.2.3 隐私计算 -
chainmaker-explorer v1.1.1 区块链浏览器 -
chainmaker-explorer-web v1.1.1 区块链浏览器 -

V 1.2.3 项目映射表

项目名称 版本号 说明
chainmaker-go v1.2.3 主项目
chainmaker-sdk-go v1.2.3
chainmaker-sdk-java v1.2.3
chainmaker-sdk-nodejs v1.2.3
chainmaker-cryptogen v1.2.0 -
docker: chainmaker-rust-contract v1.2.0 -
docker: chainmaker-go-contract v1.2.0 -
docker: chainmaker-cpp-contract v1.2.0 -
docker: chainmaker-solidity-contract v1.2.0 -
chainmaker-ca v1.2.0 -
chainmaker-spv v1.2.3
chainmaker-cross v1.2.0 -
chainmaker-tee v1.2.3
chainmaker-explorer v1.1.1 -
chainmaker-explorer-web v1.1.1 -

V 1.2.0 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.2.0 主项目 -
chainmaker-sdk-go v1.2.0 sdk
chainmaker-sdk-java v1.2.0 sdk
chainmaker-cryptogen v1.2.0 证书工具
docker: chainmaker-rust-contract v1.2.0 合约rust
docker: chainmaker-go-contract v1.2.0 合约tinygo
docker: chainmaker-cpp-contract v1.2.0 合约cpp
docker: chainmaker-solidity-contract v1.2.0 合约solidity
chainmaker-ca v1.2.0 证书CA服务
chainmaker-spv v1.2.0 轻节点
chainmaker-cross v1.2.0 跨链服务
chainmaker-tee v1.2.0 隐私计算
chainmaker-explorer v1.1.1 区块链浏览器 -
chainmaker-explorer-web v1.1.1 区块链浏览器 -

V 1.1.1 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.1.1 主项目 -
chainmaker-sdk-go v1.1.1 sdk
chainmaker-sdk-java v1.1.1 sdk
chainmaker-cryptogen v1.1.0 证书工具 -
docker: chainmaker-rust-contract v1.1.1 合约rust
docker: chainmaker-go-contract v1.1.1 合约tinygo
docker: chainmaker-cpp-contract v1.1.1 合约cpp
docker: chainmaker-solidity-contract v1.1.1 合约solidity
chainmaker-explorer v1.1.1 区块链浏览器
chainmaker-explorer-web v1.1.1 区块链浏览器

V 1.1.0 项目映射表

项目名称 版本号 说明
chainmaker-go v1.1.0 主项目 -
chainmaker-sdk-go v1.1.0 sdk
chainmaker-sdk-java v1.1.0 sdk
chainmaker-cryptogen v1.1.0 证书工具
docker: chainmaker-rust-contract v1.1.0 合约rust
docker: chainmaker-go-contract v1.1.0 合约tinygo
docker: chainmaker-cpp-contract v1.1.0 合约cpp
docker: chainmaker-solidity-contract v1.1.0 合约solidity

V 1.0.0 项目映射表

项目名称 版本号 说明 描述
chainmaker-go v1.0.0 主项目
chainmaker-sdk-go v1.0.0 sdk
chainmaker-sdk-java v1.0.0 sdk
chainmaker-cryptogen v1.0.0 证书工具