3. 功能概览¶
标签: 功能概览
FISCO BCOS为了支撑海量服务的需求,v3.0稳定版从系统架构、处理流程、执行、存储上进行了相应的设计,并推出3种不同形态满足不同区块链部署场景的差异化需求。功能概览如下:
| 整体架构 | |
|---|---|
| 架构模型 | 灵活自适应的区块链框架,目前包括轻量级的Air版本、适用于复杂业务场景的Pro版本以及可扩展的Max版本 |
| 群组架构 | 支持链内动态扩展多群组 |
| 分布式存储 | 支持海量数据存储 |
| 并行计算 | 支持基于DAG(有向无环图)、DMC(确定性合约并行算法)与块内分片技术 |
| 节点类型 | 共识节点、观察节点、轻节点 |
| 计算模型 | 排序-执行-验证 |
| 系统性能 | |
| 峰值TPS | 10万+ TPS(PBFT) |
| 交易确认时延 | 秒级 |
| 硬件推荐配置 | |
| CPU | 2.4GHz * 8核 |
| 内存 | 8GB |
| 存储 | 4TB |
| 网络带宽 | 10Mb |
| 账本模型 | |
| 数据结构 | 链式结构,区块通过哈希链相连 |
| 是否分叉 | 不分叉 |
| 记账类型 | 账户模型(非UTXO) |
| 共识算法 | |
| 共识框架 | 可插拔设计 |
| 共识算法 | PBFT |
| 存储引擎 | |
| 存储设计 | 支持KV和SQL |
| 引擎类型 | 支持rocksdb和TikvDB |
| CRUD接口 | 提供CRUD接口访问链上数据 |
| 网络协议 | |
| 节点间通信 | P2P协议 |
| 客户端与节点通信 | WebSocket协议 |
| 消息订阅服务 | AMOP协议 |
| 智能合约 | |
| 合约引擎 | 支持WASM和EVM |
| 合约语言 | 支持Solidity, C++和WBC-Liquid |
| 引擎特点 | 图灵完备,沙盒运行 |
| 版本控制 | 基于BFS支持多版本合约 |
| 密码算法和协议 | |
| 国密算法 | 支持 |
| 国密SSL | 支持 |
| 哈希算法 | Keccak256、SM3 |
| 对称加密算法 | AES、SM4 |
| 非对称加密算法 | ECDSA、SM2 |
| 非对称加密椭圆曲线 | secp256k1、sm2p256v1 |
| 安全控制 | |
| 通信安全 | 支持全流程SSL |
| 准入安全 | 基于PKI身份认证体系 |
| 证书管理 | 支持证书颁发、撤销、更新 |
| 权限控制 | 支持细粒度权限控制 |
| 隐私保护 | |
| 物理隔离 | 群组间数据隔离 |
| 场景化隐私保护机制 | 基于WeDPR支持隐匿支付、匿名投票、匿名竞拍、选择性披露等场景 |
| 隐私计算平台星隐(WeDPR) | 基于星隐构建一个密态隐私计算系统,可实现“原始数据不出域,数据可用不可见、可控可计量”,服务公共数据授权运营、金融联合风控营销、跨行业数据合作等场景 |
| 跨链协议 | |
| SPV | 提供获取SPV证明的接口 |
| 跨链协议 | 基于WeCross支持同构、异构跨链 |
| 开发支持 | |
| 开发建链工具 | 提供Air版本区块链部署工具, Pro版本区块链部署工具和Maxb版本区块链部署工具 |
| 合约部署与测试工具 | 交互式控制台 基于Java SDK的控制台 |
| SDK语言 | Java(推荐使用)、Go、Python、C++、C、Rust(待适配语言:Node.js、C#、iOS、Android) |
| 快速开发组件 | 提供Spring-boot-starter、Spring-boot-crud |
| 运维支持 | |
| 动态管理节点 | 支持动态新增、剔除、变更节点 |
| 动态更改配置 | 支持动态变更系统配置 |
| 数据备份与恢复 | 提供数据导出与恢复服务组件 |
| 监控统计 | 输出统计日志,提供监控工具 |