# 版本迭代说明 ## 版本及特性 以下为各个版本及其发布的主要内容: 其中`v1.2.x`与`v2.x`均为LTS(Long Term Support,长期支持)版本。 ### v2.x版本及特性 | 版本 | 时间点 | 主要内容 | | ---------------- | ---------- | ------------------------------------------------------------ | | 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. 增加外部证书兼容 (见`身份权限管理/外部证书兼容`章节) | ### 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. 支持HotStuff流水线共识,当前支持在多链、存证交易场景下提供更高效的共识能力;
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. 存储模块支持内存加速,支持故障恢复; | ## Docker 镜像地址 **长安链·ChainMaker Docker Hub主页:** https://hub.docker.com/r/chainmakerofficial/chainmaker ChainMaker镜像列表: | 版本 | 镜像地址 | | ------------ | ------------------------------------------------------ | | 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 | ## 版本项目映射关系表 **v2.x:** [v2.1.0](#v2.1.0_pin) 、[v2.0.0](#v2.0.0_pin) **v1.x:** [v1.2.6](#v1.2.6_pin) 、[v1.2.5](#v1.2.5_pin) 、[v1.2.4](#v1.2.4_pin) 、[v1.2.3](#v1.2.3_pin)、 [v1.2.0](#v1.2.0_pin) 、[v1.1.0](#v1.1.0_pin) 、[v1.0.0](#v1.0.0_pin) **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.0.0 | 区块链浏览器后端 | 新 | | chainmaker-explorer-web | v1.1.1 | 区块链浏览器前端 | - | | chainmaker-cryptogen | v2.1.0 | 证书工具 | 新 | | chainmaker-tee | v2.0.0 | 隐私计算 | - | | chainmaker-ca | v1.2.0 | 证书CA服务 | - | | docker: chainmaker-rust-contract | v2.1.0 | 合约rust | 新 | | docker: chainmaker-go-contract | v2.1.0 | 合约go | 新 | | docker: chainmaker-cpp-contract | v2.1.0 | 合约cpp | 新 | | docker: chainmaker-solidity-contract | v2.0.0 | 合约solidity | - | | management-web | v2.0.0 | 长安链管理平台前端项目 | - | | management-backend | v2.1.0_alpha | 长安链管理平台后端项目 | 新 | | 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 | 合约go | 新 | | 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 | 合约go | - | | 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 | 合约go | - | | 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 | 合约go | - | | 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 | 合约go | 新 | | 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 | 合约go | 新 | | 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 | 合约go | 新 | | 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 | 证书工具 | 新 |