FISCO-BCOS

FISCO BCOS(发音为/ˈfɪskl bi:ˈkɒz/)是一个稳定、高效、安全的许可区块链平台,已被广泛应用于现实的行业应用。截至目前,已拥有5000多家企事业单位,400多个产业数字化标杆应用,涵盖文化版权、司法服务、政府服务、物联网、金融、智慧社区、房地产建设、社区治理、乡村振兴等领域。FISCO BCOS (pronounced /ˈfɪskl bi:ˈkɒz/) is a stable, efficient, and secure permissioned blockchain platform that has been widely used in real-world industry applications.

APACHE-2.0 License

Stars
2.3K

Bot releases are visible (Hide)

FISCO-BCOS - FISCO-BCOS v2.0.0-rc2

Published by JimmyShi22 over 5 years ago

v2.0.0-rc2

Please read the FISCO BCOS documentation.

New Feature

  • Parallel Computing Model: Parallel Transaction Template, Parallel Transaction Executor(PTE).
  • Distributed Storage System: AMDB, SQLStorage.

Update

  • Optimized transaction sealing logic to allow dynamic block size adjusting according to recent block generation time.
  • Optimized block downloading process.
  • Parallelized transaction encoding/decoding, transaction signature verification, and data commitment encoding.
  • Revised status codes of transaction execution for clarity.
  • Optimized storage module to support concurrent access.

Add

  • Packet compression.
  • Compatibility configuration.
  • Added chainID and groupID in transaction bytes code.
  • Added transaction bytes cache to transaction pool.
  • Added timestamp to the genesis block.
  • Provided more demos for precompiled contracts.
  • Support generating new chains with Docker images.

Fix

  • Core dump after asInt() exception during RPC calling.
  • Failure of handling out-of-gas transactions.
  • A transaction bytes can be replayed to the other group.
  • Performance degradation due to table insertion.
  • Other minor bugs.

Delete

  • Unnecessary logs.
  • Duplicated operations.

Compatibility

Compatible Version Description
FISCO BCOS node Downward compatible with FISCO BCOS 2.0.0 rc1, incompatible with FISCO BCOS 1.x This version is compatible with the configure files and data of v2.0.0-rc1, while new features will be disabled. To enable all the new features, a new chain need to be generated.
console 1.0.2+
Web3SDK 2.0.0-rc2+
generator 1.0.0-rc2
FISCO BCOS browser 2.0.0-rc2+
Solidity Max Supported Solidity version 0.5.2
AMDB 2.0.0+

请阅读FISCO BCOS文档

v2.0.0-rc2

新特性

  • 并行计算模型:可并行合约开发框架、交易并行执行引擎(PTE)
  • 分布式存储:AMDB、SQLStorage

更新

  • 优化了区块打包交易数的逻辑,根据执行时间动态的调整区块打包交易数
  • 优化了区块同步的流程,让区块同步更快
  • 并行优化了将交易的编解码、交易的验签和落盘的编码
  • 优化了交易执行返回码的逻辑,让返回码更准确
  • 升级了存储模块,支持并发读写

新增

  • 加入网络数据包压缩
  • 加入兼容性配置
  • 交易编码中加入chainID和groupID
  • 交易中加入二进制缓存
  • 创世块中加入timestamp信息
  • 增加了一些precompile的demo
  • 支持用Docker搭链

修复

  • RPC中处理参数时asInt异常造成程序退出的bug
  • 交易执行Out of gas时交易一直在交易池中不被处理的bug
  • 不同组间可以用相同的交易二进制重放的bug
  • insert操作造成的性能衰减问题
  • 一些稳定性修复

兼容性

兼容版本 说明
节点 向下兼容 FISCO BCOS 2.0.0 rc1,不兼容FISCO BCOS 1.x 此版本可直接跑在v2.0.0-rc1的配置和数据上,但不会有此版本的新特性,仅仅相当于稳定性提升。若需要用此版本的新特性,需重新搭链。
控制台 1.0.2+
Web3SDK 2.0.0-rc2+
generator 1.0.0-rc2
浏览器 2.0.0-rc2+
Solidity 最高支持 solidity 0.5.2
AMDB 2.0.0+



FISCO-BCOS - FISCO-BCOS v1.3.8

Published by morebtcg over 5 years ago

v1.3.8

请阅读FISCO BCOS 1.3版文档

  • 修复
  1. 修复了服务方SSL握手失败后,服务方无法接受新连接的问题
  2. 解决动态出块时间不正确的问题

FISCO-BCOS - FISCO-BCOS v2.0.0-rc1

Published by chaychen2005 over 5 years ago

v2.0.0-rc1

(2019-03-18)

Please read the FISCO BCOS documentation.

Architecture

  • Add
  1. Implemented multi-group architecture with indenpendent consensus and storage to for better scalability.
  2. Implemented distributed data storage to support storing node data in the remote distributed system, achieving the isolation of computation and storage, easy capacity expansion and data security.
  3. Implemented precompiled contracts support with a new C++ based solidity-compatible contract execution framework, improving the execution performance of solidity contracts.
  4. Implemented evmc extension framework to support different virtual machine engines.
  • Update
  1. Refactored and upgraded core infrastructure modules including P2P, consensus, synchronization, transaction execution, transaction pool and block management.

Protocols

  • Add
  1. Implemented CRUD API for solidity contract, compatible with the mainstream SQL-based business development process.
  2. Implemented asynchronous notifications for transactions, block events, and customized AMOP messages.
  • Update
  1. Upgraded ethereum virtual machine version to support solidity 0.5.2.
  2. Upgraded RPC module.

Security

  • Update
  1. Upgraded disk encryption with implementing key manager service for blockchain nodes.
  2. Upgraded security control for blockchain nodes by implementing node access and group access control.
  3. Upgraded fine-grained data permission control with permission control tables.

Misc

  • Add
  1. Implemented entry-level blockchain building tools.
  2. Implemented unit tests and integration tests for automated integration and deployment.

Compatibility

Version 2.0 introduces new internal block data formats and network protocols for new features and improved capabilities. For the users of version 1.3, the existing smart contracts can be directly reused on version 2.0, but extra data migration will be required to upgrade from version 1.3 to version 2.0.


请阅读FISCO BCOS文档

架构

  • Add
  1. 新增群组架构,各群组独立共识和存储,在较低运维成本基础上实现系统吞吐能力横向扩展。
  2. 新增分布式数据存储,支持节点将数据存储在远端分布式系统中,实现计算与数据隔离、高速扩容、数据安全等级提升等目标。
  3. 新增对预编译合约的支持,底层基于C++实现预编译合约框架,兼容solidity调用方式,提升智能合约执行性能。
  4. 引入evmc扩展框架,支持扩展不同虚拟机引擎。
  • Update
  1. 升级重塑P2P、共识、同步、交易执行、交易池、区块管理模块。

协议

  • Add
  1. 实现一套CRUD基本数据访问接口规范合约,基于CRUD接口编写业务合约,实现传统面向SQL方式的业务开发流程。
  2. 支持交易上链异步通知、区块上链异步通知以及自定义的AMOP消息通知等机制。
  • Update
  1. 升级以太坊虚拟机版本,支持Solidity 0.5.2版本。
  2. 升级RPC模块。

安全

  • Update
  1. 升级落盘加密,提供密钥管理服务。开启落盘加密功能时,依赖KeyManager服务进行密钥管理。
  2. 升级准入机制,通过引入网络准入机制和群组准入机制,在不同维度对链和数据访问进行安全控制。
  3. 升级权限控制体系,基于表进行访问权限的设计。

其他

  • Add
  1. 提供入门级的搭链工具。
  2. 提供模块化的单元测试和端对端集成测试,支持自动化持续集成和持续部署。

兼容性说明

2.0版本与1.0版本数据和协议不兼容,合约兼容。如果要从1.3版本升级到2.0版本,需要做数据迁移。



FISCO-BCOS - FISCO-BCOS v1.3.7

Published by morebtcg over 5 years ago

v1.3.7

请阅读FISCO BCOS 1.3版文档

  • Fix
  1. 网络断连后,不自动重连的问题
  2. PBFT view change触发逻辑(fast viewchange / disconnect 两处修改)
  3. RPC 接口去掉admin_peers和admin_nodeInfo以外的接口
  4. 日志提示错误的文件描述符
  5. 偶发的5s没有任何操作日志的问题

FISCO-BCOS - FISCO-BCOS v1.3.6

Published by morebtcg almost 6 years ago

V1.3.6

请阅读FISCO BCOS文档

(2018-12-19)

  • Fix
  1. 交易队列大小限制参数配置化
  2. pbft打包入口逻辑判断去掉依赖同步
  3. 交易池丢弃算法调整
  4. shutdown超时问题
  5. 增加RPC接口:获取交易队列当前大小
  6. 拼写错误更正:maxBlockTransactions
  7. PBFT消息包不发给观察节点
  8. 交易广播,不广播给观察节点
  9. vesion输出编译的信息(时间、commit)
  10. 移除区块的广播机制,使用PUSH模式同步区块
  11. P2P建立连接时,不适用对方上报的端口
  12. 增加leveldb的参数配置到config.json
  13. cd 修复日志滚动的bug

FISCO-BCOS - FISCO-BCOS v1.3.5

Published by morebtcg almost 6 years ago

V1.3.5

请阅读FISCO BCOS文档

(2018-12-06)

  • Update
  1. systemcontract的ConfigAction用tool.js设置时,默认10进制
  2. 搭链时生成的节点,默认eventlog关闭
  3. RPC接口eth_getTransactionReceipt的返回字段,带上16进制前缀"0x"
  4. tools/scripts/下,在生成创世块文件时,默认生成god账号
  5. 调整节点日志生成格式,默认只生成全局日志和stat日志
  • Add
  1. 增加静态编译的fisco-bcos程序,安装时默认采用静态程序
  • Fix
  1. 修复readthedocs文档问题
  2. p2p修复Session::write可能造成coredump的问题
  3. 修复PBFT转发包时,时间戳较大无法转发的问题
  4. PBFT转发包时,只转发直接广播的包
  5. motivate viewchange的处理逻辑从广播改为给单节点回包
  6. 移除p2p自动更新bootstrapnodes.json的逻辑
  7. p2p节点间不再互通节点列表
  8. 修复ChannelServer断连时可能coredump的问题
  9. 移除PBFT自动调整区块大小的逻辑
  10. 修复Ok.sol合约中的溢出问题
  • Delete
  1. 删除dfs和minupnp

FISCO-BCOS - FISCO-BCOS v1.5.0 pre-release

Published by morebtcg about 6 years ago

V1.5.0 (2018-10-17)

请阅读FISCO BCOS 1.5版本文档

  • New Feature
  1. 新的配置文件格式
  2. 新的搭链流程和文档
  3. 新增大容量数据存储功能AMDB
  • Update
  1. 优化p2p模块
  2. 修改config.json文件,简化节点配置
  • Add
  1. 增加libinitializer初始化模块,优化程序的配置和初始化逻辑,简化搭链
  2. 增加libprecompiled预编译模块,可以使用C++扩展智能合约
  3. 增加libstorage分布式存储模块,实现分布式存储功能
  4. 增加libconsole控制台模块,实现控制台功能
  5. 新增静态编译的功能,可以静态编译和动态编译
  6. 新增build_chain.sh脚本,一键快速搭链功能
  7. 更新FISCO BCOS使用手册和增加AMDB使用说明文档

FISCO-BCOS - FISCO-BCOS v1.3.4

Published by fisco-dev about 6 years ago

V1.3.4 (2018-09-14)

请阅读FISCO BCOS文档

  • New Feature
  1. 全新的说明文档,配套更加简洁的易用性脚本,帮助用户更方便的操作FISCO-BCOS
  • Update
  1. README 引导到新的说明文档
  2. 修改viewchange日志,减少motivated情况下的日志打印量
  • Add
  1. 增加新的目录tools,并配套新的易用性脚本
  2. 增加新的说明文档,在README中引导到新的文档中
  • Fix
  1. 修复Statelog多线程并发的问题
  2. 修复ecrecover不能返回正确的签名者地址的问题
  • Delete
  1. 放弃旧的快速部署节点的举例(sample目录)
  2. 放弃docker快速部署节点的举例(docker目录)
FISCO-BCOS - FISCO-BCOS v1.3.3

Published by fisco-dev about 6 years ago

V1.3.3 (2018-08-22)

请阅读FISCO BCOS文档

  • Update
  1. 优化StateMonitor,调整为单线程执行
  • Add
  1. 加上maxBlockHeaderGas的set操作的保护逻辑。当设置小于系统不可用的值时,将不会被设置。
  • Fix
  1. 内存泄漏问题
  2. bootstrapnodes.json在磁盘满时被清空的问题
  3. p2p线程初始化统计时可能阻塞的问题
  4. channel可能死锁无法工作的问题
  5. transaction格式非法导致asset退出的问题
  6. 修复区块链浏览器无法读取RPC接口的bug
FISCO-BCOS - FISCO-BCOS v1.3.2

Published by fisco-dev about 6 years ago

V1.3.2 (2018-08-06)

请阅读FISCO BCOS文档

  • Update
  1. 优化PBFT性能
  2. 优化节点的断连
  • Add
  1. 增加优先级队列功能
  • Fix
  1. 修复了节点的bootstrap.json中,配置了自身的外网ip导致网络连接异常的问题
  2. 移除了admin相关的rpc接口
  3. 修复AMOP可能导致程序异常的问题
FISCO-BCOS - FISCO-BCOS v1.3.1

Published by fisco-dev over 6 years ago

V1.3.1 (2018-07-09)

请阅读FISCO BCOS文档

  • Update
  1. 节点建立连接时过滤自身的ip端口
  2. 修复使用web3sdk会偶尔断开无法重连的bug
  3. 修复节点间连接会偶尔断开无法重连的bug
  4. nodejs支持发送国密算法交易
  • Add
  1. nodejs客户端通过开关支持国密算法发送交易
  • Fix
  1. 缓存bugfix
  2. 共识bugfix
FISCO-BCOS - FISCO-BCOS v1.3.0

Published by fisco-dev over 6 years ago

V1.3.0 (2018-06-25)

请阅读FISCO BCOS文档

  • New Feature
  1. CA证书链SSL连接协议
  2. 支持UTXO模型的转账功能
  3. 支持国密功能

注意: 如果老版本fisco-bcos需要使用1.3版本的新连接协议特性,需要进行相应的升级操作,具体请参考升级操作说明

  • Update
  1. 更新节点握手协议
  2. 升级NodeAction系统合约存储记账列表
  3. 升级CAAction系统合约存储注销证书列表
  4. 简化config.json配置文件
  5. 更新一键安装脚本及相关说明
  6. 更新docker镜像及相关说明
  7. 更新FISCO BCOS 用户手册说明
  8. 物料包工具更新:(1)适配新的连接管理 (2) god帐号地址不再固定, 改为在构建工具包时进行创建。
  • Add
  1. 增加P2P新版本SSL连接协议功能。
  2. 增加节点本地指定连接列表bootstrapnodes.json功能。
  3. 增加节点连接支持域名配置功能。
  4. 支持RPC addpeer增加新连接节点功能。
  5. web3sdk增加系统合约部署和调用工具。
  6. web3sdk增加命令行调用取块高,视图等rpc接口。
  7. 增加web3sdk使用SM3交易HASH运算功能
  8. 增加web3sdk使用SM2发送国密交易功能。
  9. 增加国密SM4数据落盘加密功能。
  10. 增加区块链共识使用SM2签名验签功能。
  11. 增加节点通信使用国密SSL功能。
  12. 增加生成国密证书及验证国密证书功能。
  13. 增加fiscl-solc使用国密SM3 Hash算法编译合约。
  14. 国密用户手册说明。
  • Fix
  1. 交易队列大小为10240
  • Delete
  1. 不再维护DFS客户端代码:移除tool目录中的DfsSample,DfsSDK,third-jars目录。节点中DFS功能相关代码暂时保留,但将不再维护,请社区慎重使用。如果有基于DFS做了一些功能的,可以继续使用老版本DFS。如果疑问请联系我们,讨论后续的维护方法。
FISCO-BCOS - FISCO-BCOS v1.2.0

Published by fisco-dev over 6 years ago

V1.2.0 (2018-05-21)

请阅读FISCO BCOS文档

  • New Feature
  1. 可监管的零知识证明
  2. 群签名和环签名
  3. 弹性联盟链共识框架
  • Update
  1. 规范日志打印行为,统一以英文方式输出。
  2. 为查询block的RPC接口增加更多的返回字段。
  3. FISCO BCOS用户手册更新:(1)在web3lib中需要增加cnpm install的操作 ;(2)config.js文件放入weblib3目录中。
  • Add
  1. 增加可监管的零知识证明验证功能。
  2. 增加群签名和环签名验证功能。
  3. 增加弹性联盟链共识框架的主体功能,在系统合约部分提供的和这个功能相关的合约,以及ConsensusControl.sol 这个规则示例。
  4. 增加打印监控日志的功能,适配于区块链浏览器的report agent。
  5. scripts/install_deps.sh 依赖脚本添加Linux Oracle Server的支持。  
  • Fix
  1. 区块链浏览器miner字段兼容问题。
  2. 修正一键安装脚本编译完成之后, 启动nodejs模块缺失的问题
FISCO-BCOS - FISCO-BCOS v1.1.0

Published by fisco-dev over 6 years ago

V1.1.0 (2018-04-02)

请阅读FISCO BCOS文档

  • Update
  1. js文件整理: 删除accounttool目录。将tool、systemcontractv2目录中的公共js代码放入web3lib中。
    为查询block的RPC接口增加更多的返回字段。
  2. FISCO BCOS用户手册更新, a. 在web3lib中需要增加cnpm install的操作 b. config.js文件放入weblib3目录中。
  3. 调整内置的fisco-solc版本(对应solc 0.4.11),并提供ubuntu的fisco-solc。
  • Add
  1. CNS添加对java客户端的支持。
  2. 添加支持CNS方式调用的rpc接口, CNS方式调用添加的新的接口如下
    eth_getCodeCNS => eth_getCode
    eth_getBalanceCNS => eth_getBalance
    eth_getStorageAtCNS => eth_getStorageAt
    eth_getTransactionCountCNS => eth_getTransactionCount
  3. 添加打印监控日志的功能,适配于区块链浏览器的report agent。
  4. scripts/install_deps.sh 依赖脚本添加Linux Oracle Server的支持。
  • Fix
  1. CNS调用合约支持合约重载的接口。
FISCO-BCOS - FISCO-BCOS v1.0.0

Published by fisco-dev over 6 years ago

我们将当前版本定为FISCO BCOS的1.0.0版本,后续我们将在此基础上持续进行版本更新。

目前版本的主要特性:

  1. 完整的区块链底层平台,包括节点管理、组网、证书管理、智能合约和系统合约的部署和调用、监控和统计日志等功能。
  2. AMOP(Advanced Messaging On-chain Protocol)链上链下通信系统
  3. 合约命名服务(Contract Name Service)
  4. 并行共识与并行计算的解决方案,支持多链架构
  5. 区块链浏览器
  6. Web3SDK:用以访问节点的Java API
  7. 两个应用样例:存证和链上数据导出

请注意:功能点4、5、6、7您需要到其他仓库查看https://github.com/FISCO-BCOS
更多请阅读[FISCO BCOS文档](https://fisco-bcos-documentation.readthedocs.io/zh_CN/release-1.3/

We decide to set the current version as FISCO BCOS 1.0.0,and we will keep updating based on this version.

Key features include:

  1. A complete blockchain platform including node management, networking, CA management, smart contract, system contract and monitoring.
  2. AMOP(Advanced Messaging On-chain Protocol).
  3. CNS(Contract Name Service).
  4. A solution of parallel consensus and parallel computing, supporting multi-chain structure for massive service.
  5. FISCO BCOS blockchain browser.
  6. Web3SDK: a Java API for accessing to the nodes.
  7. Samples: Evidence escrow and data-depot

Note: you need to check in other repositories from https://github.com/FISCO-BCOS for feature 4\5\6\7.
Read more: FISCO BCOS DOC

Package Rankings
Top 8.17% on Proxy.golang.org
Badges
Extracted from project README
codecov CodeFactor GitHub All Releases