比特派钱包下载|fisco bcos
比特派钱包下载|fisco bcos
FISCO BCOS 2.0 技术文档 — FISCO BCOS 2.0 v2.9.0 文档
FISCO BCOS 2.0 技术文档 — FISCO BCOS 2.0 v2.9.0 文档
FISCO BCOS 2.0
latest
平台介绍
FISCO BCOS 区块链
版本信息
快速开始
搭建第一个区块链网络
开发第一个区块链应用
构建和管理区块链网络
关键概念
网络搭建
配置管理
网络维护
开发区块链应用
创建和使用账户
开发和使用智能合约
多种语言SDK
区块链功能接口列表
使用链上信使
开发期问题排查
使用工具
开发部署工具(build_chain.sh)
命令行交互控制台
WeBASE管理平台
区块链浏览器
运维部署工具
数据治理通用组件
多方协作治理组件
区块链应用开发组件
系统设计
整体架构
区块链交易流程
数据结构与编码协议
核心模块设计解析
社区
MVP
贡献者
合作伙伴
深入浅出FISCO BCOS
社区资源和更多开源工具
FISCO BCOS 2.0
»
FISCO BCOS 2.0 技术文档
Edit on GitHub
请根据需求选择FISCO BCOS的版本,并确认周边组件与其版本相匹配。
本文档版本 2.0:简单、易用、经典、稳定
====>> 切换至 3.0 版本文档
FISCO BCOS 2.0 技术文档¶
FISCO BCOS 是一个稳定、高效、安全的区块链底层平台,经过多家机构、多个应用,长时间在生产环境运行的实际检验。
注解
本技术文档适用于FISCO BCOS 2.x版本, FISCO BCOS 3.x技术文档请参考 FISCO BCOS 3.x技术文档(latest)
FISCO BCOS 2.x版本源码位于 master-2.0 分支,请参考 这里
generator 仅支持搭建2.x链,搭建3.x链请参考 这里
快速开始
了解FISCO BCOS区块链
FISCO BCOS 2.X新特性
搭建第一个区块链网络
开发第一个区块链应用
开发手册
关键概念
区块链网络搭建
区块链应用开发
FISCO BCOS Java SDK
问题排查
使用工具
开发部署工具:区块链网络快速部署工具
开发部署工具是提供给开发者快速搭建FISCO BCOS区块链网络的脚本工具。
命令行交互控制台:节点查询与管理工具
命令行交互控制台是提供给开发者使用的节点查询与管理的工具。控制台拥有丰富的命令,包括查询区块链状态、管理区块链节点、部署并调用合约等。此外,控制台提供一个合约编译工具,用户可以方便快捷的将Solidity合约文件编译为Java合约文件。
WeBASE:图形化的区块链管理工具
WeBASE(WeBank Blockchain Application Software Extension) 是一套管理FISCO-BCOS联盟链的工具集。WeBASE提供了图形化的管理界面,屏蔽了区块链底层的复杂度,降低区块链使用的门槛,大幅提高区块链应用的开发效率,包含节点前置、节点管理、交易链路,数据导出,Web管理平台等子系统。
区块链浏览器:区块链数据浏览工具
区块链浏览器将区块链中的数据可视化,并进行实时展示。方便用户以Web页面的方式,浏览当前区块链中的信息。本浏览器版本适配FISCO BCOS 2.0+,关于2.0+版本的特性可以参考此链接。在使用本浏览器之前需要先理解2.0+版本的群组特性,详情可以参考此链接。
运维部署工具:企业级用户的区块链管理工具
运维部署工具是为企业用户提供的部署、管理和监控多机构多群组联盟链的便捷工具。它面向于真实的多机构生产环境,为了保证机构的密钥安全,运维部署工具提供了一种机构间相互合作部署联盟链方式。
数据治理通用组件:释放数据价值
数据治理通用组件的全名是“WeBankBlockchain-Data数据治理通用组件”,它是一套稳定、高效、安全的区块链数据治理组件解决方案,可无缝适配FISCO BCOS区块链底层平台。它由数据导出组件(Data-Export)、数据仓库组件(Data-Stash)、数据对账组件(Data-Reconcile)这三款相互独立、可插拔、可灵活组装的组件所组成,开箱即用,灵活便捷,易于二次开发。
区块链多方协作治理组件:开启治理实践新起点
WeBankBlockchain-Governance区块链多方协作治理组件是一套轻量解耦、简洁易用、通用场景和一站式的区块链治理组件解决方案。 首批开源的有账户治理组件(Governance-Account)、权限治理组件(Governance-Auth)、 私钥管理组件(Governance-Key)和证书管理组件(Governance-Cert)。上述组件都提供了可部署的智能合约代码、易于使用的SDK和可参考的落地实践Demo等交付物。
区块链应用开发组件:助力低代码开发
WeBankBlockchain-SmartDev应用开发组件包含了一套开放、轻量的开发组件集,覆盖智能合约的开发、调试、应用开发等环节,包括智能合约库(SmartDev-Contract)、智能合约编译插件(SmartDev-SCGP)和应用开发脚手架(SmartDev-Scaffold)。开发者可根据自己的情况自由选择相应的开发工具,提升开发效率。
系统设计
整体架构
共识算法
交易并行
分布式存储
预编译合约
更多设计文档
社区资源
Github主页
深度解析系列文章
贡献代码
反馈问题
应用案例集
微信群 、公众号
更多开源工具
FISCO BCOS企业级金融联盟链底层平台: [GitHub] [Gitee] [文档]
WeBASE 区块链中间件平台:[GitHub] [Gitee] [文档]
WeIdentity 基于区块链的实体身份标识及可信数据交换解决方案: [GitHub] [Gitee] [文档]
WeDPR 即时可用,场景式隐私保护高效解决方案套件和服务:[GitHub] [Gitee] [文档]
WeCross 区块链跨链协作平台: [GitHub] [Gitee] [文档]
Truora 可信预言机服务:[GitHub] [Gitee] [文档]
webankblockchain-liquid(简称WBC-Liquid)智能合约编程语言软件:[GitHub] [Gitee] [文档]
WeBankBlockchain-Data 数据治理通用组件:
Data-Stash 数据仓库组件: [GitHub] [Gitee] [文档]
Data-Export 数据导出组件: [GitHub] [Gitee] [文档]
Data-Reconcile 数据对账组件: [GitHub] [Gitee] [文档]
WeBankBlockchain-Governance 多方治理协作组件:
Governance-Account 账户治理组件: [GitHub] [Gitee] [文档]
Governance-Authority 权限治理组件:[GitHub] [Gitee] [文档]
Governance-Key 私钥管理组件: [GitHub] [Gitee] [文档]
Governance-Cert 证书管理组件:[GitHub] [Gitee] [文档]
WeEvent 基于区块链的分布式事件驱动架构:[GitHub] [Gitee] [文档]
WeBankBlockchain-SmartDev 区块链应用开发工具:
SmartDev-Contract 智能合约库组件:[GitHub] [Gitee] [文档]
SmartDev-SCGP 合约编译插件:[GitHub] [Gitee] [文档]
SmartDev-Scaffold 应用开发脚手架:[GitHub] [Gitee] [文档]
DDCMS分布式数据协作管理解决方案::[GitHub] [Gitee] [文档]
Next
© Copyright FISCO BCOS 2019.
本技术文档适用于FISCO BCOS 2.x版本,FISCO BCOS 3.x版本技术文档请查看 这里, FISCO BCOS 1.3版本技术文档请查看 这里。
Revision e4c99c1c.
Built with Sphinx using a theme
provided by Read the Docs.
Read the Docs
v: latest
Versions
latest
stable
v2.8.0
v2.6.0
v2.5.0
v2.4.0
v2.3.0
v2.2.0
v2.1.0
v2.0.0
release-3.6.0
release-3.0.0-rc2
release-2-dev
release-2.9.0
release-2.8.0
release-2.7.0
release-2.1.0
release-1.3
dev
Downloads
epub
On Read the Docs
Project Home
Builds
FISCO BCOS 3.0 技术文档 — FISCO BCOS 3.0 v3.6.0 文档
FISCO BCOS 3.0 技术文档 — FISCO BCOS 3.0 v3.6.0 文档
FISCO BCOS 3.0
latest
平台介绍
1. FISCO BCOS 区块链
2. 关键特性
3. 功能概览
4. 版本说明
快速开始
1. 硬件和系统要求
2. 搭建第一个区块链网络
3. 开发第一个Solidity区块链应用
4. 开发第一个WBC-Liquid区块链应用
合约开发
1. Solidity合约开发
2. c++ 合约开发(预编译合约)
3. WBC-Liquid合约开发
4. 使用IDE
5. EVM OPCODE 兼容性描述
SDK教程
1. 多语言SDK
2. Java SDK
3. C SDK
4. Go SDK
5. Python SDK
6. Node.js SDK
7. Rust SDK
8. CPP SDK
9. C# SDK
10. SDK连接证书配置
搭链教程
1. 单群组区块链(Air版本)
2. 多群组区块链(Pro版本)
3. 可扩展区块链(Max版本)
4. 轻节点部署工具
5. 节点源码编译
6. 国产化支持
7. 使用docker部署区块链
应用开发
1. 应用开发指南
2. 区块链RPC接口
3. 账户使用与账户管理
4. 合约生命周期与权限管理
5. 控制台部署调用合约
6. SmartDev应用开发组件
7. 使用AMOP功能
8. 使用同态加密与群环签名
9. 智能合约安全实践
区块链运维
1. 一键建链工具
2. 监控工具
3. 控制台工具
4. 存储读写工具
5. 数据归档与恢复
6. 区块链管理平台
7. 区块链权限治理
8. 区块链扩容
9. 压力测试指南
10. 版本升级指南
11. 数据治理通用组件
12. 多方协作治理组件
13. 日志说明
14. 运维手册
高阶功能使用
1. 合约安全检测 SCStudio
2. 跨链协作平台 WeCross
3. 分布式身份 WeIdentity
4. 分布式事件框架 WeEvent
5. 可信预言机 Truora
6. 隐私保护方案 WeDPR
FISCO BCOS设计原理
1. 系统架构
2. 交易流程
3. 核心数据结构
4. 共识算法
5. 同步模块
6. 存储设计
7. 全方位并行
8. 智能合约引擎
9. 权限治理体系设计
10. 数据落盘加密
11. 数据归档设计
12. 国密支持方案
13. 网络包压缩
14. 安全控制
15. 硬件密码机
16. 兼容性方案
17. 合约命名服务CNS
18. 合约文件系统BFS
19. 公共网络组件BoostSSL
20. 链上信息传输协议AMOP
20. 链上信息传输协议AMOP
社区资源
1. MVP
2. 贡献者
3. PR 代码规范
4. 社区历史文章资源
5. 欢迎加入FISCO BCOS社区
6. 应用案例集
FISCO BCOS 3.0
»
FISCO BCOS 3.0 技术文档
Edit on GitHub
请根据需求选择FISCO BCOS的版本,并确认周边组件与其版本相匹配。
本文档版本 3.0:高性能、易拓展、高可用
====>> 切换至 2.0 版本文档
FISCO BCOS 3.0 技术文档¶
FISCO BCOS(读作/ˈfɪskl bi:ˈkɒz/) 是一个稳定、高效、安全的区块链底层平台,其可用性经广泛应用实践检验。开源社区至今已有5000+企业及机构、400+产业数字化标杆应用,覆盖文化版权、司法服务、政务服务、物联网、金融、智慧社区、房产建筑、社区治理、乡村振兴等领域。
FISCO BCOS开源社区致力打造开放多元的开源联盟链生态,至今为止,开源社区汇聚超过10万名成员共建共治,发展成为最大最活跃的国产开源联盟链生态圈之一,其中涌现出诸多对社区建设、代码贡献的优秀社区成员。截止2023年,开源社区共认定63位MVP,这些优秀的贡献者或是将FISCO BCOS技术落地到各领域应用中,助力产业数字化,或是在多渠道布道,将开源社区精神传播到更远的地方。
注解
本技术文档适用于FISCO BCOS 3.x版本, FISCO BCOS 2.x稳定版技术文档请参考 FISCO BCOS 2.x技术文档(stable)
FISCO BCOS 3.x版本源码位于 master 分支,请参考 这里
FISCO BCOS 2.x版本源码位于 master-2.0 分支,请参考 这里
快速开始
了解FISCO BCOS区块链
FISCO BCOS 3.X新特性
搭建第一个区块链网络
开发第一个Solidity区块链应用
开发第一个webankblockchain-liquid区块链应用
开发教程
Air版本区块链网络搭建
Pro版本区块链网络搭建
轻节点搭建
FISCO BCOS Java SDK
使用工具
开发部署工具:区块链网络快速部署工具
开发部署工具是提供给开发者快速搭建FISCO BCOS区块链网络的脚本工具。
命令行交互控制台:节点查询与管理工具
命令行交互控制台是提供给开发者使用的节点查询与管理的工具。控制台拥有丰富的命令,包括查询区块链状态、管理区块链节点、部署并调用合约等。此外,控制台提供一个合约编译工具,用户可以方便快捷的将Solidity合约文件编译为Java合约文件。
图形化的区块链管理工具
WeBankBlockchain WeBASE(WeBank Blockchain Application Software Extension, 简称WBC-WeBASE) 是一套管理FISCO-BCOS联盟链的工具集。WBC-WeBASE提供了图形化的管理界面,屏蔽了区块链底层的复杂度,降低区块链使用的门槛,大幅提高区块链应用的开发效率,包含节点前置、节点管理、交易链路,数据导出,Web管理平台等子系统。
数据治理通用组件:释放数据价值
数据治理通用组件的全名是“WeBankBlockchain-Data数据治理通用组件”,它是一套稳定、高效、安全的区块链数据治理组件解决方案,可无缝适配FISCO BCOS区块链底层平台。它由数据导出组件(Data-Export)、数据仓库组件(Data-Stash)、数据对账组件(Data-Reconcile)这三款相互独立、可插拔、可灵活组装的组件所组成,开箱即用,灵活便捷,易于二次开发。
区块链多方协作治理组件:开启治理实践新起点
WeBankBlockchain-Governance区块链多方协作治理组件是一套轻量解耦、简洁易用、通用场景和一站式的区块链治理组件解决方案。 首批开源的有账户治理组件(Governance-Account)、权限治理组件(Governance-Auth)、 私钥管理组件(Governance-Key)和证书管理组件(Governance-Cert)。上述组件都提供了可部署的智能合约代码、易于使用的SDK和可参考的落地实践Demo等交付物。
区块链应用开发组件:助力低代码开发
WeBankBlockchain-SmartDev应用开发组件包含了一套开放、轻量的开发组件集,覆盖智能合约的开发、调试、应用开发等环节,包括智能合约库(SmartDev-Contract)、智能合约编译插件(SmartDev-SCGP)和应用开发脚手架(SmartDev-Scaffold)。开发者可根据自己的情况自由选择相应的开发工具,提升开发效率。
系统设计
系统架构
两阶段并行拜占庭共识
合约文件系统BFS
更多设计文档
社区资源
Github主页
贡献代码
反馈问题
应用案例集
微信群 、公众号
更多开源工具
FISCO BCOS企业级金融联盟链底层平台: [GitHub] [Gitee] [文档]
区块链中间件平台:[GitHub] [Gitee] [文档]
WeIdentity 基于区块链的实体身份标识及可信数据交换解决方案: [GitHub] [Gitee] [文档]
WeDPR 即时可用,场景式隐私保护高效解决方案套件和服务:[GitHub] [Gitee] [文档]
WeCross 区块链跨链协作平台: [GitHub] [Gitee] [文档]
Truora 可信预言机服务:[GitHub] [Gitee] [文档]
webankblockchain-liquid(简称WBC-Liquid)智能合约编程语言软件:[GitHub] [Gitee] [文档]
WeBankBlockchain-Data 数据治理通用组件:
Data-Stash 数据仓库组件: [GitHub] [Gitee] [文档]
Data-Export 数据导出组件: [GitHub] [Gitee] [文档]
Data-Reconcile 数据对账组件: [GitHub] [Gitee] [文档]
WeBankBlockchain-Governance 多方治理协作组件:
Governance-Account 账户治理组件: [GitHub] [Gitee] [文档]
Governance-Authority 权限治理组件:[GitHub] [Gitee] [文档]
Governance-Key 私钥管理组件: [GitHub] [Gitee] [文档]
Governance-Cert 证书管理组件:[GitHub] [Gitee] [文档]
WeEvent 基于区块链的分布式事件驱动架构:[GitHub] [Gitee] [文档]
WeBankBlockchain-SmartDev 区块链应用开发工具:
SmartDev-Contract 智能合约库组件:[GitHub] [Gitee] [文档]
SmartDev-SCGP 合约编译插件:[GitHub] [Gitee] [文档]
SmartDev-Scaffold 应用开发脚手架:[GitHub] [Gitee] [文档]
DDCMS分布式数据协作管理解决方案::[GitHub] [Gitee] [文档]
Next
© Copyright FISCO BCOS 2019.
本技术文档适用于FISCO BCOS 3.x版本,FISCO BCOS 2.x版本技术文档请查看 这里。
Revision 4933bea1.
Built with Sphinx using a theme
provided by Read the Docs.
Read the Docs
v: latest
Versions
latest
v3.3.0
v3.0.0-rc3
v3.0.0-rc2
v3.0.0-rc1
release-3.6.0
release-3.4.0
release-3.3.0
release-3.2.0
release-3.0.0-rc4
release-3.0.0-rc3
release-3.0.0-rc2
release-3.0.0
release-3
Downloads
On Read the Docs
Project Home
Builds
FISCO BCOS
FISCO BCOS
中
HOME
About Us
Introduction
Constitution
news & events
Open Source
FISCO BCOS
Certification
Open Source Community
Members
Apply to join
Research
FISCO BCOS (Be Credible, Open & Secure) is a secure, reliable, easy-to-use, and high-performance financial-grade blockchain platform, which was launched by FISCO open-source working group in 2017. Now its open-source community has grown as the largest and most active consortium blockchain ecosystem in China, where thousands of institutions and ten thousands of individual developers collaborate together.
Github Source Code Documentation Components
Core Advantage
Secure & Reliable
Comprehensive security features (network, server, storage, application), access control, CA authentication, key management, OSCCA-approved cryptography suite, and penetrating auditing
Privacy Protection
Privacy protection on Full lifecycle of sensitive data, including access control, OSCCA-approved cryptography algorithms, homomorphic encryption, zero-knowledge proof, ring/group signature, etc.
High Performance
Scalable group architecture, distributed storage, precompiled contract, DAG parallel contract execution; 3 pluggable consensus algorithms (PBFT / Raft / rPBFT), 20k+ single-chain TPS, and parallel multi-chain capability expansion
Easy of Use
Rich documentation and use cases, multilingual SDK, secure and high-performance smart contracts to facilitate the smooth experience of chain setup, development, debugging, deployment, operation, monitoring, and audit
Reliable
Successful business applications in multiple scenarios, verified by many enterprise and institutional partners with production applications over years
Rapid Iteration
Active community to promote rapid iteration and core capabilities optimization, innovative features trailing for various community demands, and enhanced user experience
Developer Kit
WeBASE
WeCross
WeDPR
WeIdentity
WeEvent
SmartDev Contract
SmartDev Scaffold
SmartDev SCGP
Data Export
Data Reconcile
Governance Account
Truora
Liquid
OpenLedger
More
Use Cases
Copyright Protection
Provides comprehensive copyright protection with consortium chains facilitating end-to-end one-stop services for copyright registration, trading, protection and litigation.
Featured Case Studies
PeopleYun’s Media Copyright Protection Platform Copyright Trading Platform
Judicial Services
Provides real-time, authentic, and traceable data for judicial services, introduces judiciary nodes onto the chain, achieves authenticity, legality, and relevance requirements of evidences, and standardizes the evidence and trial process.
Featured Case Studies
WeSign by WeBank Arbitration Chain Securities Evidence Chain
Smart Governance
Provides blockchain solutions for government big data, public affairs management, market regulation, cross-departments/-region data sharing to promote efficient collaborative processing.
Featured Case Studies
Macau Smart City Real Estate Registry on Blockchain Government Integrity Management on Blockchain
Internet of Things
Solves end-to-end trust and value transfer issues, and enables devices interconnection and data sharing with Blockchain+ IoT.
Featured Case Studies
Cross-platform Interconnection Livestock Tracing & Insurance Platform
Recruitment
Improves recruitment efficiency by simplifying recruitment process based on tamper-proof and traceable on-chain applicant data.
Featured Case Studies
On-chain Talent Growth Platform Housekeeper Reputation System
Charity
Creates innovative governance mode of "service-governance", provides feasible and convenient means for people to actively participate in social governance.
Featured Case Studies
Eco-Travel Credit PlatformMutual Aid Consortium Chain
Smart Neighborhood
Provides innovative solutions for smart neighborhood to facilitate information sharing and financial co-management among property owners, property management companies, regulatory authorities and banks.
Featured Case Studies
Integrated Smart Neighborhood Service
Financial Services
Improves business robustness, adaptability and security, improve operation efficiency, and reduce costs and risks with Blockchain+ Finance Technology.
Featured Case Studies
Online Lending Institution Regulation PlatformWeBank Reconciliation PlatformSupply Chain Financial Platform
Case Description
Call for Use Cases
Industry Recognition & Awards
First prize of Shenzhen FinTech Special Award of 2018
Trusted blockchain Initiative certification on blockchain functionality and performance
First national consortium chain platform adopted by BSN
5 Steps To Build Your First Blockchain Application
Setup blockchain
Install blockchain console
Write smart contract
Compile and deploy smart contract
Develop blockchain application
Start
Download FISCO BCOS installation package
Description:
1.Environment Requirement:CentOS 7 or Ubuntu 18.04 64bit
2.Installation Guide:https://fisco-bcos-documentation.readthedocs.io/en/latest/docs/installation.html
Download
CONTACT US
Email: service@fisco.com.cn Tel: 0755-88243677
Copyright © 2016-2023 | FISCO All Right Reserved | 粤ICP备2020106014号
Follow Us on WeChat
搭建第一个区块链网络 — FISCO BCOS 2.0 v2.9.0 文档
搭建第一个区块链网络 — FISCO BCOS 2.0 v2.9.0 文档
FISCO BCOS 2.0
latest
平台介绍
FISCO BCOS 区块链
版本信息
快速开始
搭建第一个区块链网络
1. 搭建单群组FISCO BCOS联盟链
第一步. 安装依赖
第二步. 创建操作目录, 下载安装脚本
第三步. 搭建单群组4节点联盟链
第四步. 启动FISCO BCOS链
第五步. 检查进程
第六步. 检查日志输出
2. 配置及使用控制台
第一步. 准备依赖
第二步. 启动并使用控制台
3. 部署及调用HelloWorld合约
第一步. 编写HelloWorld合约
第二步. 部署HelloWorld合约
第三步. 调用HelloWorld合约
开发第一个区块链应用
构建和管理区块链网络
关键概念
网络搭建
配置管理
网络维护
开发区块链应用
创建和使用账户
开发和使用智能合约
多种语言SDK
区块链功能接口列表
使用链上信使
开发期问题排查
使用工具
开发部署工具(build_chain.sh)
命令行交互控制台
WeBASE管理平台
区块链浏览器
运维部署工具
数据治理通用组件
多方协作治理组件
区块链应用开发组件
系统设计
整体架构
区块链交易流程
数据结构与编码协议
核心模块设计解析
社区
MVP
贡献者
合作伙伴
深入浅出FISCO BCOS
社区资源和更多开源工具
FISCO BCOS 2.0
»
搭建第一个区块链网络
Edit on GitHub
搭建第一个区块链网络¶
标签:搭建区块链网络 区块链教程 HelloWorld 控制台调用合约
重要
相关软件和环境版本说明!请查看
本章介绍FISCO BCOS所需的必要安装和配置。本章通过在单机上部署一条4节点的FISCO BCOS联盟链,帮助用户掌握FISCO BCOS部署流程。请根据这里使用支持的硬件和平台操作。
注解
搭建全链路国密版本的链,请参考这里 。
FISCO BCOS支持x86_64和aarch64(ARM)架构的Linux和macOS,ARM架构需要编译源码获取fisco-bcos可执行程序。
1. 搭建单群组FISCO BCOS联盟链¶
本节以搭建单群组FISCO BCOS链为例操作。使用开发部署工具 build_chain.sh脚本在本地搭建一条4 节点的FISCO BCOS链,以Ubuntu 16.04 64bit系统为例操作。
注解
若需在已有区块链上进行升级,请转至 版本及兼容 章节。
搭建多群组的链操作类似, 参考这里 。
本节使用预编译的静态`fisco-bcos`二进制文件,在CentOS 7和Ubuntu 16.04 64bit上经过测试。
使用docker模式搭建 ,供有丰富docker经验和容器化部署需求的用户参考。
第一步. 安装依赖¶
开发部署工具 build_chain.sh脚本依赖于openssl, curl,根据您使用的操作系统,使用以下命令安装依赖。
安装macOS依赖
# 最新homebrew默认下载的为openssl@3,需要指定版本openssl@1.1下载
brew install openssl@1.1 curl
openssl version
OpenSSL 1.1.1n 15 Mar 2022
安装ubuntu依赖
sudo apt install -y openssl curl
安装centos依赖
sudo yum install -y openssl openssl-devel
第二步. 创建操作目录, 下载安装脚本¶
## 创建操作目录
cd ~ && mkdir -p fisco && cd fisco
## 下载脚本
curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.9.1/build_chain.sh && chmod u+x build_chain.sh
注解
如果因为网络问题导致长时间无法下载build_chain.sh脚本,请尝试 curl -#LO https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/FISCO-BCOS/FISCO-BCOS/releases/v2.9.1/build_chain.sh && chmod u+x build_chain.sh
第三步. 搭建单群组4节点联盟链¶
在fisco目录下执行下面的指令,生成一条单群组4节点的FISCO链。
请确保机器的30300~30303,20200~20203,8545~8548端口没有被占用。
注解
国密版本请执行 bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545 -g -G
其中-g表示生成国密配置,-G表示使用国密SSL连接
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545
注解
其中-p选项指定起始端口,分别是p2p_port,channel_port,jsonrpc_port
出于安全性和易用性考虑,v2.3.0版本最新配置将listen_ip拆分成jsonrpc_listen_ip和channel_listen_ip,但仍保留对listen_ip的解析功能,详细请参考 这里
为便于开发和体验,channel_listen_ip参考配置是 0.0.0.0 ,出于安全考虑,请根据实际业务网络情况,修改为安全的监听地址,如:内网IP或特定的外网IP
命令执行成功会输出All completed。如果执行出错,请检查nodes/build.log文件中的错误信息。
Checking fisco-bcos binary...
Binary check passed.
==============================================================
Generating CA key...
==============================================================
Generating keys ...
Processing IP:127.0.0.1 Total:4 Agency:agency Groups:1
==============================================================
Generating configurations...
Processing IP:127.0.0.1 Total:4 Agency:agency Groups:1
==============================================================
[INFO] Execute the download_console.sh script in directory named by IP to get FISCO-BCOS console.
e.g. bash /home/ubuntu/fisco/nodes/127.0.0.1/download_console.sh
==============================================================
[INFO] FISCO-BCOS Path : bin/fisco-bcos
[INFO] Start Port : 30300 20200 8545
[INFO] Server IP : 127.0.0.1:4
[INFO] Output Dir : /home/ubuntu/fisco/nodes
[INFO] CA Key Path : /home/ubuntu/fisco/nodes/cert/ca.key
==============================================================
[INFO] All completed. Files in /home/ubuntu/fisco/nodes
第四步. 启动FISCO BCOS链¶
启动所有节点
bash nodes/127.0.0.1/start_all.sh
启动成功会输出类似下面内容的响应。否则请使用netstat -an | grep tcp检查机器的30300~30303,20200~20203,8545~8548端口是否被占用。
try to start node0
try to start node1
try to start node2
try to start node3
node1 start successfully
node2 start successfully
node0 start successfully
node3 start successfully
第五步. 检查进程¶
检查进程是否启动
ps -ef | grep -v grep | grep fisco-bcos
正常情况会有类似下面的输出;
如果进程数不为4,则进程没有启动(一般是端口被占用导致的)
fisco 5453 1 1 17:11 pts/0 00:00:02 /home/ubuntu/fisco/nodes/127.0.0.1/node0/../fisco-bcos -c config.ini
fisco 5459 1 1 17:11 pts/0 00:00:02 /home/ubuntu/fisco/nodes/127.0.0.1/node1/../fisco-bcos -c config.ini
fisco 5464 1 1 17:11 pts/0 00:00:02 /home/ubuntu/fisco/nodes/127.0.0.1/node2/../fisco-bcos -c config.ini
fisco 5476 1 1 17:11 pts/0 00:00:02 /home/ubuntu/fisco/nodes/127.0.0.1/node3/../fisco-bcos -c config.ini
第六步. 检查日志输出¶
如下,查看节点node0链接的节点数
tail -f nodes/127.0.0.1/node0/log/log* | grep connected
正常情况会不停地输出连接信息,从输出可以看出node0与另外3个节点有连接。
info|2019-01-21 17:30:58.316769| [P2P][Service] heartBeat,connected count=3
info|2019-01-21 17:31:08.316922| [P2P][Service] heartBeat,connected count=3
info|2019-01-21 17:31:18.317105| [P2P][Service] heartBeat,connected count=3
执行下面指令,检查是否在共识
tail -f nodes/127.0.0.1/node0/log/log* | grep +++
正常情况会不停输出带有++++Generating seal的日志,即表示共识正常。
info|2020-12-22 17:24:43.729402|[g:1][CONSENSUS][SEALER]++++++++++++++++ Generating seal on,blkNum=1,tx=0,nodeIdx=1,hash=2e133146...
info|2020-12-22 17:24:47.740603|[g:1][CONSENSUS][SEALER]++++++++++++++++ Generating seal on,blkNum=1,tx=0,nodeIdx=1,hash=eb199760...
2. 配置及使用控制台¶
重要
控制台1.x 系列基于 Web3SDK 实现,控制台2.6之后 基于 Java SDK 实现,最新版本控制台基于 Java SDK 实现
2.6及其以上版本控制台使用文档请 参考这里 ,1.x版本控制台使用文档请 参考这里
可通过命令 ./start.sh --version 查看当前控制台版本
基于 Web3SDK 开发应用时将 solidity 代码转换为 java 代码时,必须使用 1.x 版本控制台,具体请参考 这里
在控制台链接FISCO BCOS节点,实现查询区块链状态、部署调用合约等功能,能够快速获取到所需要的信息。2.6版本控制台指令详细介绍参考这里,1.x版本控制台指令详细介绍参考这里。
第一步. 准备依赖¶
安装java (推荐使用java 14).
# ubuntu系统安装java
sudo apt install -y default-jdk
#centos系统安装java
sudo yum install -y java java-devel
获取控制台并回到fisco目录
cd ~/fisco && curl -LO https://github.com/FISCO-BCOS/console/releases/download/v2.9.2/download_console.sh && bash download_console.sh
注解
如果因为网络问题导致长时间无法下载,请尝试 cd ~/fisco && curl -#LO https://gitee.com/FISCO-BCOS/console/raw/master-2.0/tools/download_console.sh && bash download_console.sh
拷贝控制台配置文件
若节点未采用默认端口,请将文件中的20200替换成节点对应的channel端口。
# 最新版本控制台使用如下命令拷贝配置文件
cp -n console/conf/config-example.toml console/conf/config.toml
配置控制台证书
注解
使用1.x版本控制台时:
搭建国密版时,如果使用国密SSL请执行 cp nodes/127.0.0.1/sdk/gm/* console/conf/
搭建国密版时,请修改 applicationContext.xml 中 encryptType 修改为1
cp -r nodes/127.0.0.1/sdk/* console/conf/
第二步. 启动并使用控制台¶
启动
cd ~/fisco/console && bash start.sh
输出下述信息表明启动成功 否则请检查conf/config.toml中节点端口配置是否正确
=============================================================================================
Welcome to FISCO BCOS console(2.6.0)!
Type 'help' or 'h' for help. Type 'quit' or 'q' to quit console.
________ ______ ______ ______ ______ _______ ______ ______ ______
| \| \ / \ / \ / \ | \ / \ / \ / \
| $$$$$$$$ \$$$$$$| $$$$$$\| $$$$$$\| $$$$$$\ | $$$$$$$\| $$$$$$\| $$$$$$\| $$$$$$\
| $$__ | $$ | $$___\$$| $$ \$$| $$ | $$ | $$__/ $$| $$ \$$| $$ | $$| $$___\$$
| $$ \ | $$ \$$ \ | $$ | $$ | $$ | $$ $$| $$ | $$ | $$ \$$ \
| $$$$$ | $$ _\$$$$$$\| $$ __ | $$ | $$ | $$$$$$$\| $$ __ | $$ | $$ _\$$$$$$\
| $$ _| $$_ | \__| $$| $$__/ \| $$__/ $$ | $$__/ $$| $$__/ \| $$__/ $$| \__| $$
| $$ | $$ \ \$$ $$ \$$ $$ \$$ $$ | $$ $$ \$$ $$ \$$ $$ \$$ $$
\$$ \$$$$$$ \$$$$$$ \$$$$$$ \$$$$$$ \$$$$$$$ \$$$$$$ \$$$$$$ \$$$$$$
=============================================================================================
若1.x控制台启动失败,参考 Web3SDK启动失败场景
用控制台获取信息
# 获取客户端版本
[group:1]> getNodeVersion
ClientVersion{
version='2.6.0',
supportedVersion='2.6.0',
chainId='1',
buildTime='20200819 15:47:59',
buildType='Darwin/appleclang/RelWithDebInfo',
gitBranch='HEAD',
gitCommitHash='e4a5ef2ef64d1943fccc4ebc61467a91779fb1c0'
}
# 获取节点信息
[group:1]> getPeers
[
PeerInfo{
nodeID='c1bd77e188cd0783256ee06838020f24a697f9af785438403d3620967a4a3612e3abc4bbe986d1e9dddf62d4236bff0b7d19a935a3cd44889f681409d5bf8692',
ipAndPort='127.0.0.1:30302',
agency='agency',
topic=[
],
node='node2'
},
PeerInfo{
nodeID='7f27f5d67f104eacf689790f09313e4343e7887a1a7b79c31cd151be33c7c8dd57c895a66086c3c8e0b54d2fa493407e0d9646b2bd9fc29a94fd3663a5332e6a',
ipAndPort='127.0.0.1:57266',
agency='agency',
topic=[
_block_notify_1
],
node='node1'
},
PeerInfo{
nodeID='862f26d9681ed4c12681bf81a50d0b8c66dd5b6ee7b0b42a4af12bb37b1ad2442f7dcfe8dac4e737ce9fa46aa94d904e8c474659eabf575d6715995553245be5',
ipAndPort='127.0.0.1:30303',
agency='agency',
topic=[
],
node='node3'
}
]
[group:1]>
3. 部署及调用HelloWorld合约¶
第一步. 编写HelloWorld合约¶
HelloWorld合约提供两个接口,分别是get()和set(),用于获取/设置合约变量name。合约内容如下:
pragma solidity ^0.4.24;
contract HelloWorld {
string name;
function HelloWorld() {
name = "Hello, World!";
}
function get()constant returns(string) {
return name;
}
function set(string n) {
name = n;
}
}
第二步. 部署HelloWorld合约¶
为了方便用户快速体验,HelloWorld合约已经内置于控制台中,位于控制台目录下contracts/solidity/HelloWorld.sol,参考下面命令部署即可。
# 在控制台输入以下指令 部署成功则返回合约地址
[group:1]> deploy HelloWorld
transaction hash: 0xd0305411e36d2ca9c1a4df93e761c820f0a464367b8feb9e3fa40b0f68eb23fa
contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344
第三步. 调用HelloWorld合约¶
# 查看当前块高
[group:1]> getBlockNumber
1
# 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
"Hello,World!"
]
---------------------------------------------------------------------------------------------
# 查看当前块高,块高不变,因为get接口不更改账本状态
[group:1]> getBlockNumber
1
# 调用set设置name
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS"
transaction hash: 0x7e742c44091e0d6e4e1df666d957d123116622ab90b718699ce50f54ed791f6e
---------------------------------------------------------------------------------------------
transaction status: 0x0
description: transaction executed successfully
---------------------------------------------------------------------------------------------
Output
Receipt message: Success
Return message: Success
---------------------------------------------------------------------------------------------
Event logs
Event: {}
# 再次查看当前块高,块高增加表示已出块,账本状态已更改
[group:1]> getBlockNumber
2
# 调用get接口获取name变量,检查设置是否生效
[group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get
---------------------------------------------------------------------------------------------
Return code: 0
description: transaction executed successfully
Return message: Success
---------------------------------------------------------------------------------------------
Return values:
[
"Hello,FISCO BCOS"
]
---------------------------------------------------------------------------------------------
# 退出控制台
[group:1]> quit
Next
Previous
© Copyright FISCO BCOS 2019.
本技术文档适用于FISCO BCOS 2.x版本,FISCO BCOS 3.x版本技术文档请查看 这里, FISCO BCOS 1.3版本技术文档请查看 这里。
Revision e4c99c1c.
Built with Sphinx using a theme
provided by Read the Docs.
Read the Docs
v: latest
Versions
latest
stable
v2.8.0
v2.6.0
v2.5.0
v2.4.0
v2.3.0
v2.2.0
v2.1.0
v2.0.0
release-3.6.0
release-3.0.0-rc2
release-2-dev
release-2.9.0
release-2.8.0
release-2.7.0
release-2.1.0
release-1.3
dev
Downloads
epub
On Read the Docs
Project Home
Builds
FISCO BCOS 区块链 — FISCO BCOS 2.0 v2.9.0 文档
FISCO BCOS 区块链 — FISCO BCOS 2.0 v2.9.0 文档
FISCO BCOS 2.0
latest
平台介绍
FISCO BCOS 区块链
关键特性
架构
核心模块
性能
安全性
可运维性
易用性
社区开发工具
版本信息
快速开始
搭建第一个区块链网络
开发第一个区块链应用
构建和管理区块链网络
关键概念
网络搭建
配置管理
网络维护
开发区块链应用
创建和使用账户
开发和使用智能合约
多种语言SDK
区块链功能接口列表
使用链上信使
开发期问题排查
使用工具
开发部署工具(build_chain.sh)
命令行交互控制台
WeBASE管理平台
区块链浏览器
运维部署工具
数据治理通用组件
多方协作治理组件
区块链应用开发组件
系统设计
整体架构
区块链交易流程
数据结构与编码协议
核心模块设计解析
社区
MVP
贡献者
合作伙伴
深入浅出FISCO BCOS
社区资源和更多开源工具
FISCO BCOS 2.0
»
FISCO BCOS 区块链
Edit on GitHub
FISCO BCOS 区块链¶
标签:FISCO BCOS介绍 关键特性 开发工具
FISCO BCOS是由深圳市金融区块链发展促进会(以下简称“金链盟”)开源工作组牵头研发的金融级、国产安全可控的区块链底层平台。作为最早开源的国产联盟链底层平台之一,FISCO BCOS于2017年面向全球开源。
开源六周年至今,FISCO BCOS开源社区在技术创新、应用产业以及开源生态均取得了非凡成绩。
FISCO BCOS持续攻关核心关键技术,单链性能突破10万TPS。首创DMC算法大幅度提升性能、推出三种架构形态灵活适配业务需求;全链路国产化,采用国密算法与软硬件体系,支持国产OS,适配国产芯片和服务器,支持多语言多终端国密接入。拥有覆盖底层+中间件+应用组件的丰富周边组件。
底层平台可用性已经广泛应用实践检验,支撑政务、金融、医疗、双碳、跨境数据流通等关乎国计民生的重点领域落地超过400个标杆应用,在助力实体经济发展、促进公平与可持续等方面贡献力量。
社区以开源链接多方,截止2023年12月,围绕FISCO BCOS构建的国产开源联盟链生态圈已汇聚了超过5000家机构、超10万名个人成员,以及50家认证合作伙伴、500余名核心贡献者。社区认证了63位FISCO BCOS MVP, 发展了12个专项兴趣小组SIG,此外与上百所知名院校开展人才共育合作,培育区块链产业人才超8万人次,已发展成为最大最活跃的国产开源联盟链生态圈之一。
注解
FISCO BCOS以联盟链的实际需求为出发点,兼顾性能、安全、可运维性、易用性、可扩展性,支持多种SDK,并提供了可视化的中间件工具,大幅缩短建链、开发、部署应用的时间。此外,FISCO BCOS通过信通院可信区块链评测功能、性能两项评测,单链TPS可达两万。
关键特性¶
整体架构
架构模型
一体两翼多引擎
群组架构
支持链内动态扩展多群组
分布式存储
支持海量数据存储
并行计算
支持块内交易并行执行
节点类型
共识节点、观察节点
计算模型
排序-执行-验证
系统性能
峰值TPS
2万+ TPS(PBFT)
交易确认时延
秒级
硬件推荐配置
CPU
2.4GHz * 8核
内存
8GB
存储
4TB
网络带宽
10Mb
账本模型
数据结构
链式结构,区块通过哈希链相连
是否分叉
不分叉
记账类型
账户模型(非UTXO)
共识算法
共识框架
可插拔设计
共识算法
PBFT、Raft、rPBFT
存储引擎
存储设计
支持KV和SQL
引擎类型
支持leveldb、rocksdb、mysql
CRUD接口
提供CRUD接口访问链上数据
网络协议
节点间通信
P2P协议
客户端与节点通信
JsonRPC,Channel协议
消息订阅服务
AMOP协议
智能合约
合约引擎
支持Solidity和预编译合约
引擎特点
图灵完备,沙盒运行
版本控制
基于CNS支持多版本合约
灰度升级
支持多版本合约共存、灰度升级
生命周期管理
支持合约和账户的冻结、解冻
密码算法和协议
国密算法
支持
国密SSL
支持
哈希算法
Keccak256、SM3
对称加密算法
AES、SM4
非对称加密算法
ECDSA、SM2
非对称加密椭圆曲线
secp256k1、sm2p256v1
安全控制
存储安全
支持落盘数据加密存储
通信安全
支持全流程SSL
准入安全
基于PKI身份认证体系
证书管理
支持证书颁发、撤销、更新
权限控制
支持细粒度权限控制
隐私保护
物理隔离
群组间数据隔离
隐私保护协议
支持群签名、环签名、同态加密
场景化隐私保护机制
基于WeDPR支持隐匿支付、匿名投票、匿名竞拍、选择性披露等场景
跨链协议
SPV
提供获取SPV证明的接口
跨链协议
基于WeCross支持同构、异构跨链
开发支持
合约开发工具
WeBASE-IDE,ChainIDE
开发建链工具
提供一键搭链脚本工具
合约部署与测试工具
交互式控制台 基于Java SDK的控制台
SDK语言
Java、nodejs、go、python
快速开发组件
提供Spring-boot-starter
压测工具
SDK内嵌压测工具,支持Caliper
运维支持
运维建链工具
提供企业级联盟链部署工具
可视化数据展现
区块链浏览器
可视化节点管理
基于WeBASE,提供节点管理器
动态管理节点
支持动态新增、剔除、变更节点
动态更改配置
支持动态变更系统配置
数据备份与恢复
提供数据导出与恢复服务组件
监控统计
输出统计日志,提供监控工具
监管审计
基于WeBASE,提供监管审计入口
架构¶
FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能力的横向扩展,大幅提升性能,在安全性、可运维性、易用性、可扩展性上,均具备行业领先优势。
一体指代群组架构,支持快速组建联盟和建链,让企业建链像建聊天群一样便利。根据业务场景和业务关系,企业可选择不同群组,形成多个不同账本的数据共享和共识,从而快速丰富业务场景、扩大业务规模,且大幅简化链的部署和运维成本。
两翼指的是支持并行计算模型和分布式存储,二者为群组架构带来更好的扩展性。前者改变了区块中按交易顺序串行执行的做法,基于DAG(有向无环图)并行执行交易,大幅提升性能;后者支持企业(节点)将数据存储在远端分布式系统中,克服了本地化数据存储的诸多限制。
多引擎是一系列功能特性的总括,比如预编译合约能够突破EVM的性能瓶颈,实现高性能合约;控制台可以让用户快速掌握区块链使用技巧等。
上述功能特性均聚焦解决技术和体验的痛点,为开发、运维、治理和监管提供更多的工具支持,让系统处理更快、容量更高,使应用运行环境更安全、更稳定。
核心模块¶
FISCO BCOS采用高通量可扩展的多群组架构,可以动态管理多链、多群组,满足多业务场景的扩展需求和隔离需求,核心模块包括:
共识机制:可插拔的共识机制,支持PBFT、Raft和rPBFT共识算法,交易确认时延低、吞吐量高,并具有最终一致性。其中PBFT和rPBFT可解决拜占庭问题,安全性更高。
存储:世界状态的存储从原来的MPT存储结构转为分布式存储,避免了世界状态急剧膨胀导致性能下降的问题;引入可插拔的存储引擎,支持LevelDB、RocksDB、MySQL等多种后端存储,支持数据简便快速扩容的同时,将计算与数据隔离,降低了节点故障对节点数据的影响。
网络:支持网络压缩功能,并基于负载均衡的思想实现了良好的分布式网络分发机制,最大化降低带宽开销。
性能¶
为提升系统性能,FISCO BCOS从提升交易执行效率和并发两个方面优化了交易执行,使得交易处理性能达到万级以上。
基于C++的Precompiled合约:区块链底层内置C++语言编写的Precompiled合约,执行效率更高。
交易并行执行:基于DAG算法根据交易间互斥关系构建区块内交易执行流,最大化并行执行区块内的交易。
交易生命周期的异步并行处理:共识、同步、落盘等各个环节的异步化以及并行处理。
安全性¶
考虑到联盟链的高安全性需求,除了节点之间、节点与客户端之间通信采用TLS安全协议外,FISCO BCOS还实现了一整套安全解决方案:
网络准入机制:限制节点加入、退出联盟链,可将指定群组的作恶节点从群组中删除,保障了系统安全性。
黑白名单机制:每个群组仅可接收相应群组的消息,保证群组间网络通信的隔离性;CA黑名单机制可及时与作恶节点断开网络连接,保障了系统安全。
权限管理机制:基于分布式存储权限控制机制,灵活、细粒度地控制外部账户部署合约和创建、插入、删除和更新用户表的权限。
支持国密算法:支持国密加密、签名算法和国密通信协议。
落盘加密方案:支持加密节点落盘数据,保障链上数据的机密性。
密钥管理方案:在落盘加密方案的基础上,采用KeyManager服务管理节点密钥,安全性更强。
同态加密、群环签名:链上提供了同态加密、群环签名接口,用于满足更多的业务需求。
可运维性¶
联盟链系统中,区块链的运维至关重要,FISCO BCOS提供了一整套运维部署工具,并引入了合约命名服务、数据归档和迁移、合约生命周期管理等工具来提升运维效率。
运维部署工具: 部署、管理和监控多机构多群组联盟链的便捷工具,支持扩容节点、扩容新群组等多种操作。
合约命名服务: 建立合约地址到合约名和合约版本的映射关系,方便调用者通过记忆简单的合约名来实现对链上合约的调用。
数据归档、迁移和导出功能: 提供数据导出组件,支持链上数据归档、迁移和导出,增加了链上数据的可维护性,降低了运维复杂度。
合约生命周期管理: 链上提供合约生命周期管理功能,便于链管理员对链上合约进行管理。
易用性¶
FISCO BCOS引入开发部署工具、交互式控制台、区块链浏览器等工具来提升系统的易用性,大幅缩短建链、部署应用的时间。
开发部署工具
基于Java SDK的交互式的命令行工具console
区块链浏览器
为了便于不同语言开发者快速开发应用,FISCO BCOS同时支持Java SDK、Node.js SDK、Python SDK和Go SDK
社区开发工具¶
依托庞大的开源生态,社区内众伙伴秉承“来自开发者,用于开发者”的共建理念,在FISCO BCOS底层平台之上,自主研发多个趁手开发工具并回馈给社区,从不同业务层面需求上降低区块链应用开发难度和成本。以下作部分列举,欢迎更多机构或开发者向社区反馈更多好用的工具。
区块链中间件平台WeBASE:面向多种对象,如开发者、运营者,并根据不同的场景,包括开发、调试、部署、审计等,打造丰富的功能组件和实用工具,提供友好的、可视化的操作环境。
分布式身份解决方案WeIdentity:基于区块链的分布式多中心的技术解决方案,提供分布式实体身份标识及管理、可信数据交换协议等一系列的基础层与应用接口,可实现实体对象(人或物)数据的安全授权与交换。
分布式事件驱动架构WeEvent:实现了可信、可靠、高效的跨机构、跨平台事件通知机制。在不改变已有商业系统的开发语言、接入协议的情况下,实现跨机构、跨平台的事件通知与处理。
跨链协作方案WeCross:支持跨链事务交易,满足跨链交易的原子性,对跨链进行治理,可支持多方协作管理,避免单点风险。
场景式隐私保护解决方案WeDPR:针对隐匿支付、匿名投票、匿名竞拍和选择性披露等应用方案,提供即时可用场景式隐私保护高效解决方案,助力各行业合法合规地探索数据相关业务。
区块链数据治理组件解决方案:稳定、高效、安全的区块链数据治理组件解决方案,分别从底层数据存储层、智能合约数据解析层和应用层三个方面,提供了区块链数据挖掘、裁剪、扩容、可信存储、抽取、分析、审计、对账、监管等数据治理方面的关键能力。
区块链多方协作治理组件解决方案:可无缝适配FISCO BCOS的区块链治理组件解决方案。首批开源的四个组件分别从私钥丢失重置、合约权限细粒度管控、私钥和证书的全生命周期管控等方面着手,提供了可部署的智能合约代码、易于使用的SDK和可参考的落地实践Demo等交付物。
区块链应用开发组件解决方案:一套开放、轻量的开发组件集,覆盖智能合约的开发、调试、应用开发等环节,包含了Solidity智能合约开发工具库、 智能合约Gradle编译插件、应用开发脚手架。
ChainIDE:提供智能合约云端开发工具,帮助开发者节约边际成本,加速推送区块链应用落地。
FISCO BCOS区块链工具箱:与WeBase/Remix/VSCode/ChainIDE等IDE协同工作,提升开发体验与开发效率。
Ansible for FISCO BCOS 自动化生成企业级部署文件:本项目由为区块链开源项目 FISCO-BCOS 提供了自动化生成企业级配置文件的 ansible playbook。2 群组 3 机构 6 节点的环境,可以在 30 秒内(除下载时间)生成配置,极大简化了部署难度,避免了手工配置容易发生的错误。
Next
Previous
© Copyright FISCO BCOS 2019.
本技术文档适用于FISCO BCOS 2.x版本,FISCO BCOS 3.x版本技术文档请查看 这里, FISCO BCOS 1.3版本技术文档请查看 这里。
Revision e4c99c1c.
Built with Sphinx using a theme
provided by Read the Docs.
Read the Docs
v: latest
Versions
latest
stable
v2.8.0
v2.6.0
v2.5.0
v2.4.0
v2.3.0
v2.2.0
v2.1.0
v2.0.0
release-3.6.0
release-3.0.0-rc2
release-2-dev
release-2.9.0
release-2.8.0
release-2.7.0
release-2.1.0
release-1.3
dev
Downloads
epub
On Read the Docs
Project Home
Builds
Your browser does not support frames. We recommend upgrading your browser.
Click here to enter the site.
FISCO-BCOS · GitHub
FISCO-BCOS · GitHub
Skip to content
Toggle navigation
Sign in
FISCO-BCOS
Product
Actions
Automate any workflow
Packages
Host and manage packages
Security
Find and fix vulnerabilities
Codespaces
Instant dev environments
Copilot
Write better code with AI
Code review
Manage code changes
Issues
Plan and track work
Discussions
Collaborate outside of code
Explore
All features
Documentation
GitHub Skills
Blog
Solutions
For
Enterprise
Teams
Startups
Education
By Solution
CI/CD & Automation
DevOps
DevSecOps
Resources
Learning Pathways
White papers, Ebooks, Webinars
Customer Stories
Partners
Open Source
GitHub Sponsors
Fund open source developers
The ReadME Project
GitHub community articles
Repositories
Topics
Trending
Collections
Pricing
Search or jump to...
Search code, repositories, users, issues, pull requests...
Search
Clear
Search syntax tips
Provide feedback
We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
Sign up
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
FISCO-BCOS
172
followers
http://fisco-bcos.org/
service@fisco.com.cn
Overview
Repositories
Projects
Packages
People
More
Overview
Repositories
Projects
Packages
People
Pinned
FISCO-BCOS
FISCO-BCOS Public
FISCO BCOS(发音为/ˈfɪskl bi:ˈkɒz/)是一个稳定、高效、安全的许可区块链平台,已被广泛应用于现实的行业应用。截至目前,已拥有5000多家企事业单位,400多个产业数字化标杆应用,涵盖文化版权、司法服务、政府服务、物联网、金融、智慧社区、房地产建设、社区治理、乡村振兴等领域。FISCO BCOS (pronounced /ˈfɪskl bi:ˈkɒz/) is a st…
C++
2.3k
686
console
console Public
交互式区块链控制台,合约编译、部署、调用以及区块链管理Interactive client tool of FISCO BCOS
Shell
87
57
java-sdk
java-sdk Public
Java SDK of FISCO-BCOS
Java
44
57
FISCO-BCOS-DOC
FISCO-BCOS-DOC Public
FISCO BCOS 技术文档(安装部署、搭链教程、系统原理、社区资源)Document of FISCO BCOS
Python
169
246
Repositories
Type
Select type
All
Public
Sources
Forks
Archived
Mirrors
Templates
Language
Select language
All
Assembly
C
C#
C++
CMake
Go
HTML
Java
JavaScript
Python
Rust
Shell
Solidity
Vue
Sort
Select order
Last updated
Name
Stars
Showing 10 of 95 repositories
registry
Public
FISCO BCOS vcpkg ports
CMake
1
Apache-2.0
9
0
0
Updated Mar 7, 2024
FISCO-BCOS
Public
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.
C++
2,260
Apache-2.0
686
199
17
Updated Mar 7, 2024
FISCO-BCOS-SIG
Public
专项兴趣小组(Special Interest Group,简称SIG)信息展示
Shell
40
Apache-2.0
98
1
31
Updated Mar 7, 2024
go-sdk
Public
golang SDK of FISCO BCOS
Go
71
Apache-2.0
55
41
4
Updated Mar 7, 2024
java-sdk
Public
Java SDK of FISCO-BCOS
Java
44
Apache-2.0
57
65
(1 issue needs help)
4
Updated Mar 6, 2024
console
Public
交互式区块链控制台,合约编译、部署、调用以及区块链管理Interactive client tool of FISCO BCOS
Shell
87
Apache-2.0
57
38
(2 issues need help)
2
Updated Mar 6, 2024
FISCO-BCOS-DOC
Public
FISCO BCOS 技术文档(安装部署、搭链教程、系统原理、社区资源)Document of FISCO BCOS
Python
169
246
10
20
Updated Mar 5, 2024
bcos-c-sdk
Public
c-style sdk for FISCO-BCOS 3.0
C++
2
Apache-2.0
11
3
0
Updated Mar 5, 2024
code-generator
Public
An ABI code generator, which generate code by ABI definition string.
Java
1
Apache-2.0
1
0
0
Updated Mar 4, 2024
java-sdk-demo
Public
java sdk demo
Java
12
Apache-2.0
21
4
0
Updated Mar 2, 2024
View all repositories
People
Top languages
C++
Java
Shell
Python
CMake
Most used topics
fisco-bcos
sdk
blockchain
client
console
Footer
© 2024 GitHub, Inc.
Footer navigation
Terms
Privacy
Security
Status
Docs
Contact
Manage cookies
Do not share my personal information
You can’t perform that action at this time.
1. FISCO BCOS 区块链 — FISCO BCOS 3.0 v3.6.0 文档
1. FISCO BCOS 区块链 — FISCO BCOS 3.0 v3.6.0 文档
FISCO BCOS 3.0
latest
平台介绍
1. FISCO BCOS 区块链
2. 关键特性
3. 功能概览
4. 版本说明
快速开始
1. 硬件和系统要求
2. 搭建第一个区块链网络
3. 开发第一个Solidity区块链应用
4. 开发第一个WBC-Liquid区块链应用
合约开发
1. Solidity合约开发
2. c++ 合约开发(预编译合约)
3. WBC-Liquid合约开发
4. 使用IDE
5. EVM OPCODE 兼容性描述
SDK教程
1. 多语言SDK
2. Java SDK
3. C SDK
4. Go SDK
5. Python SDK
6. Node.js SDK
7. Rust SDK
8. CPP SDK
9. C# SDK
10. SDK连接证书配置
搭链教程
1. 单群组区块链(Air版本)
2. 多群组区块链(Pro版本)
3. 可扩展区块链(Max版本)
4. 轻节点部署工具
5. 节点源码编译
6. 国产化支持
7. 使用docker部署区块链
应用开发
1. 应用开发指南
2. 区块链RPC接口
3. 账户使用与账户管理
4. 合约生命周期与权限管理
5. 控制台部署调用合约
6. SmartDev应用开发组件
7. 使用AMOP功能
8. 使用同态加密与群环签名
9. 智能合约安全实践
区块链运维
1. 一键建链工具
2. 监控工具
3. 控制台工具
4. 存储读写工具
5. 数据归档与恢复
6. 区块链管理平台
7. 区块链权限治理
8. 区块链扩容
9. 压力测试指南
10. 版本升级指南
11. 数据治理通用组件
12. 多方协作治理组件
13. 日志说明
14. 运维手册
高阶功能使用
1. 合约安全检测 SCStudio
2. 跨链协作平台 WeCross
3. 分布式身份 WeIdentity
4. 分布式事件框架 WeEvent
5. 可信预言机 Truora
6. 隐私保护方案 WeDPR
FISCO BCOS设计原理
1. 系统架构
2. 交易流程
3. 核心数据结构
4. 共识算法
5. 同步模块
6. 存储设计
7. 全方位并行
8. 智能合约引擎
9. 权限治理体系设计
10. 数据落盘加密
11. 数据归档设计
12. 国密支持方案
13. 网络包压缩
14. 安全控制
15. 硬件密码机
16. 兼容性方案
17. 合约命名服务CNS
18. 合约文件系统BFS
19. 公共网络组件BoostSSL
20. 链上信息传输协议AMOP
20. 链上信息传输协议AMOP
社区资源
1. MVP
2. 贡献者
3. PR 代码规范
4. 社区历史文章资源
5. 欢迎加入FISCO BCOS社区
6. 应用案例集
FISCO BCOS 3.0
»
1. FISCO BCOS 区块链
Edit on GitHub
1. FISCO BCOS 区块链¶
标签:FISCO BCOS介绍
FISCO BCOS是由深圳市金融区块链发展促进会(以下简称“金链盟”)开源工作组牵头研发的金融级、国产安全可控的区块链底层平台。作为最早开源的国产联盟链底层平台之一,FISCO BCOS于2017年面向全球开源。
开源六周年至今,FISCO BCOS开源社区在技术创新、应用产业以及开源生态均取得了非凡成绩。
FISCO BCOS持续攻关核心关键技术,单链性能突破10万TPS。首创DMC算法大幅度提升性能、推出三种架构形态灵活适配业务需求;全链路国产化,采用国密算法与软硬件体系,支持国产OS,适配国产芯片和服务器,支持多语言多终端国密接入。拥有覆盖底层+中间件+应用组件的丰富周边组件。
底层平台可用性已经广泛应用实践检验,支撑政务、金融、医疗、双碳、跨境数据流通等关乎国计民生的重点领域落地超过400个标杆应用,在助力实体经济发展、促进公平与可持续等方面贡献力量。
社区以开源链接多方,截止2023年12月,围绕FISCO BCOS构建的国产开源联盟链生态圈已汇聚了超过5000家机构、超10万名个人成员,以及50家认证合作伙伴、500余名核心贡献者。社区认证了63位FISCO BCOS MVP, 发展了12个专项兴趣小组SIG,此外与上百所知名院校开展人才共育合作,培育区块链产业人才超8万人次,已发展成为最大最活跃的国产开源联盟链生态圈之一。
六年共生共进 缔造雨林生态 | FISCO BCOS开源六周年成绩单
FISCO BCOS MVP 名单
FISCO BCOS 2023年度贡献者榜单
Next
Previous
© Copyright FISCO BCOS 2019.
本技术文档适用于FISCO BCOS 3.x版本,FISCO BCOS 2.x版本技术文档请查看 这里。
Revision 4933bea1.
Built with Sphinx using a theme
provided by Read the Docs.
Read the Docs
v: latest
Versions
latest
v3.3.0
v3.0.0-rc3
v3.0.0-rc2
v3.0.0-rc1
release-3.6.0
release-3.4.0
release-3.3.0
release-3.2.0
release-3.0.0-rc4
release-3.0.0-rc3
release-3.0.0-rc2
release-3.0.0
release-3
Downloads
On Read the Docs
Project Home
Builds
重磅发布 | FISCO BCOS v3.0核心特性与技术实现
重磅发布 | FISCO BCOS v3.0核心特性与技术实现
中
HOME
About Us
Introduction
Constitution
news & events
Open Source
FISCO BCOS
Certification
Open Source Community
Members
Apply to join
Research
重磅发布 | FISCO BCOS v3.0核心特性与技术实现
Date: 2021-12-17 Source: 本站
近日,金链盟2021年度生态大会在深圳成功举办。会上,FISCO BCOS高级架构师李辉忠发布了FISCO BCOS v3.0,并介绍了新版本的核心技术特性。
FISCO BCOS v3.0从架构、算法、产品以及安全可控和隐私计算协同等多方位进行全面升级,满足数字经济时代对区块链系统可承载更大规模、更多场景、更广泛参与的产业应用需求。
v3.0 Github地址:
https://github.com/FISCO-BCOS/FISCO-BCOS/releases/tag/v3.0.0-rc1
v3.0 文档地址:
https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/
以下为演讲实录:
大家好,我是FISCO BCOS架构师李辉忠,来自微众银行,很荣幸站在这里,代表社区一众开发者,向大家介绍全新一代的FISCO BCOS。
去年的大会,我们向大家汇报了下一代FISCO BCOS的构想与技术路线,坚定地认为区块链要承担起为数据新基建构筑坚实互信底座的使命,这是我们一直以来的初心。
在数据新基建大背景下,推动数字产业化和产业数字化升级成为全行业共识。而区块链以其分布式、多中心、传递信任等特性,成为数据新基建不可或缺的基础组件。面对蓬勃发展的数字产业化和产业数字化进程,技术需要承载更大规模应用、更多业务场景和更广泛行业参与。这些需求的背后,对区块链底层技术提出了更高的要求:全新一代的区块链底层平台,需要更易治理、更安全、更灵活可扩展、更高效好用、更开放的技术体系。
全新发布的FISCO BCOS v3.0历经社区近一年的通力打磨,在架构、安全、扩展性、易用性以及开放协议等各个方面进行了全面升级,下面我将为大家介绍3.0的核心特性。
支撑大规模商用场景落地
v3.0采用全新的微服务架构设计,实现模块化分层治理与平行扩展。
总体架构分为5个层次,接入层负责网络,调度层是区块链内核,计算层负责交易验证,存储层负责数据存储,管理层则对整个系统提供发布、配置、控制等管理服务。通过微服务架构,v3.0实现了网络、调度、计算、存储、管理分层治理,每层可独立扩展,从而更好地支撑大规模商用场景。
应对海量交易上链
在应对海量交易上链方面,关键技术难点是加大区块链底层系统的吞吐量和降低交易处理时延。我们打个比方,区块链好比一条公路,交易就是路上跑的车辆。这条公路是单行通道还是多行道,是国道还是高速路,其所能承载的通行量大有区别。
v3.0对共识和调度进行了升级,实现流水线共识机制和混合调度,大幅提升系统整体的吞吐量,同时降低时延。流水线机制,将区块链系统最关键的交易处理流程拆分为打包、计算、提交三个阶段,每个阶段内部并行执行,阶段之间流水线衔接,充分使用CPU和IO资源利用率。
在计算阶段,我们提出业界首创的确定性多合约并行算法DMC(Deterministic Multi-Contract),可将交易验证扩展到多机并行,每台机器内还可再用DAG并行,这种混合调度机制可以实现集群化的交易验证。
大家可能好奇什么是DMC?延续刚才的比方,传统区块链就像一条单行道公路,交易处理就好比车辆从这公路上通行,只能排队逐一通过,效率极低。如果将道路扩建成多行道,就可以有效提升效率,而多行道上也需要合理调度才能避免造成拥堵,例如在出入口交汇处引入“拉链式”通行策略,可以快速有效地缓解堵塞。
确定性多合约并行就是一种类似“拉链式”通行的机制,内置在v3.0底层系统中,智能调度多种合约高效并行处理,且有序处理交汇冲突,从而大幅提升处理效率。
支持全平台国密接入
在安全方面,FISCO BCOS一直重视国密接入和国产化支持。但是对程序员来说一直有个痛点,为了适配国密和国产化,需要在不同平台、不同操作系统、不同编程语言间逐一适配开发,工作量巨大,而且每次核心逻辑更改都需要兼容各平台/系统/语言,头发掉一大把,苦不堪言。
为了更好地在多语言、多终端、全链路实现国密接入,v3.0构建了通用国密基础组件,将国密算法、国密通信协议、以及国产密码机接入协议封装成通用基础组件。在此基础上将区块链相关的网络、群组、账本、事件等逻辑用C++语言实现成一个独立共享库,并封装提供C语言接口。
基于这套底层C接口,可以快速对接开发不同语言、不同平台和系统的SDK,且这些多语言SDK无需关心底层逻辑,系统升级只需更新底层共享库,大大提升研发管理效率,保证了全平台的国产安全可控。
满足多样化业务需求
刚才提到我们需要满足多样化场景诉求,这方面我们深有感触。FISCO BCOS开源社区经过4年发展,生态内的产业角色逐渐丰富,这几年我们也遇到几类典型用户:一类是落地应用的机构用户,他们基于FISCO BCOS投产落地众多应用,而且应用的业务量越来越大;一类是运营平台的机构用户,他们基于FISCO BCOS构建了BaaS平台对外提供服务;还有一类是以个人开发者为代表的学习型用户。
这几类用户诉求存在比较大的差异:有大业务体量上链的机构需要区块链支撑海量计算和存储,可以承担较复杂系统的运维;BaaS平台的用户需要更好地区块链接入、隔离、计费机制等;而学习型用户则最需要简单易用、可快速上手的区块链工具。
对于不同用户的诉求,v3.0采用灵活可扩展的开发框架,根据不同场景用户需求专业定制。我们将发布3款不同类型的版本,分别是“轻便Air版”、“专业Pro版”和“大容量Max版”。
Air版:沿用FISCO BCOS v2.0的all-in-one设计,区块链底层所有能力打包成一个服务,可供学习型用户,在入门、开发、测试、POC验证等场景中快速上手使用。
Pro版:将接入层单独剥离,区块链核心能力通过多群组方式扩展,适用于常规生产业务,特别适合BaaS平台构建基于群组的区块链底层基础能力。
Max版:采用前面提到分层扩展微服务模式,适用大容量场景。
聚合生态众力高质量发展
在v3.0研发过程中,开源社区自发构建了多个专项兴趣小组,涵盖了每个关键模块,积极参与各环节研发的讨论,感谢大家的参与与共建。
值得一提的是,FISCO BCOS v3.0的开源协议全面改为Apache 2.0。和许多软件一样,在开源之初,FISCO BCOS从无到有的构建过程中,复用了一些优秀、流行的开源组件,最初采用GPL开源协议也是遵循部分复用组件的开源协议,是对开源社区规则的尊重和恪守。
FISCO BCOS不断迭代演进,为满足产业需求,此次v3.0已更新为更宽松的开源许可证Apache 2.0,鼓励社区更开放自由地协作起来。我们会坚持开源道路持续迭代,方便大家基于FISCO BCOS进行更多的技术研究和应用探索,欢迎大家踊跃参与到FISCO BCOS开源社区共建中,聚众力让FISCO BCOS更高质量地发展。
以上就是3.0核心特性,开源四年,我们的使命也在随着国家政策和社会需求的不断变化进行迭代,而作为数据新基建的互信底座,区块链核心使命是要助力数据要素流通,释放数据生产力。
我们都知道经典的三个哲学问题:“你是谁?”、“你从哪里来?”、“你要去哪里?”,数据要素流通也需要回答三个问题,也就是:“数据属于谁?”、“数据从哪里来?”、“数据要去哪里/做什么?”。这也就是涉及到数据确权、可信流转、数据计算的问题。
我们设想,在不久的将来,通过区块链构造信任网、隐私计算构筑计算网、分布式身份提供接入网,可以实现三网一体,为数据要素流通提供一种行之有效的解决方案。而在这个过程中,基于FISCO BCOS的区块链技术体系、WeIdentity分布式身份解决方案、DDTP分布式数据传输协议、WeDPR-PPC隐私计算解决方案等都是关键技术。
未来,我们将持续打造FISCO BCOS技术硬实力,同时联合生态众多力量,共同推动区块链技术不断进步,推动产业创新持续发展。谢谢大家!
Share:
Previous
Next
CONTACT US
Email: service@fisco.com.cn Tel: 0755-88243677
Copyright © 2016-2023 | FISCO All Right Reserved | 粤ICP备2020106014号
Follow Us on WeChat
金色观察|读懂FISCO BCOS的联盟链开源生态 - 知乎
金色观察|读懂FISCO BCOS的联盟链开源生态 - 知乎切换模式写文章登录/注册金色观察|读懂FISCO BCOS的联盟链开源生态金色财经区块链在这里,读懂区块链FISCO BCOS是国内企业主导研发、对外开源、安全可控的企业级金融联盟链底层平台。由金融区块链合作联盟(深圳)(简称:金链盟)成立的开源工作组协作打造,工作组成员包括博彦科技、华为、深证通、神州信息、四方精创、腾讯、微众银行、亦笔科技和越秀金科等金链盟成员机构。FISCO BCOS已于2017年正式对外开源。截止到2020年5月,汇聚了超1000家企业及机构、逾万名社区成员参与共建共治,发展成为最大最活跃的国产开源联盟链生态圈。应用项目覆盖文化版权、司法服务、政务服务、物联网、金融、智慧社区等领域。如今,基于FISCO BCOS方便的全面的开发工具,已经成为一个更开放的开源生态。FISCO BCOS设计思路FISCO BCOS以联盟链的实际需求为出发点,兼顾性能、安全、可运维性、易用性、可扩展性,支持多种SDK,并提供了可视化的中间件工具,大幅缩短建链、开发、部署应用的时间。此外,FISCO BCOS通过信通院可信区块链评测功能、性能两项评测,单链TPS可达两万。FISCO BCOS在2.0中,提出“一体两翼多引擎”架构,实现系统吞吐能力的横向扩展,大幅提升性能,在安全性、可运维性、易用性、可扩展性上具备行业领先优势。一体指代群组架构,支持快速组建联盟和建链,让企业建链像建聊天群一样便利。根据业务场景和业务关系,企业可选择不同群组,形成多个不同账本的数据共享和共识,从而快速丰富业务场景、扩大业务规模,且大幅简化链的部署和运维成本。两翼指的是支持并行计算模型和分布式存储,二者为群组架构带来更好的扩展性。前者改变了区块中按交易顺序串行执行的做法,基于DAG(有向无环图)并行执行交易,大幅提升性能;后者支持企业(节点)将数据存储在远端分布式系统中,克服了本地化数据存储的诸多限制。多引擎是一系列功能特性的总括,比如预编译合约能够突破EVM的性能瓶颈,实现高性能合约;控制台可以让用户快速掌握区块链使用技巧等。FISCO BCOS的核心部分FISCO BCOS的核心模块包括以下部分:共识机制:可插拔的共识机制,支持PBFT、Raft和rPBFT共识算法,交易确认时延低、吞吐量高,并具有最终一致性。其中PBFT和rPBFT可解决拜占庭问题,安全性更高。存储:世界状态的存储从原来的MPT存储结构转为分布式存储,避免了世界状态急剧膨胀导致性能下降的问题;引入可插拔的存储引擎,支持LevelDB、RocksDB、MySQL等多种后端存储,支持数据简便快速扩容的同时,将计算与数据隔离,降低了节点故障对节点数据的影响。网络:支持网络压缩功能,并基于负载均衡的思想实现了良好的分布式网络分发机制,最大化降低带宽开销。性能提升策略为提升系统性能,FISCO BCOS从提升交易执行效率和并发两个方面优化了交易执行,使得交易处理性能达到万级以上。基于C++的Precompiled合约:区块链底层内置C++语言编写的Precompiled合约,执行效率更高。交易并行执行:基于DAG算法根据交易间互斥关系构建区块内交易执行流,最大化并行执行区块内的交易。交易生命周期的异步并行处理:共识、同步、落盘等各个环节的异步化以及并行处理。FISCO BCOS安全解决方案考虑到联盟链的高安全性需求,除了节点之间、节点与客户端之间通信采用TLS安全协议外,FISCO BCOS还实现了一整套安全解决方案:网络准入机制:限制节点加入、退出联盟链,可将指定群组的作恶节点从群组中删除,保障了系统安全性。黑白名单机制:每个群组仅可接收相应群组的消息,保证群组间网络通信的隔离性;CA黑名单机制可及时与作恶节点断开网络连接,保障了系统安全。权限管理机制:基于分布式存储权限控制机制,灵活、细粒度地控制外部账户部署合约和创建、插入、删除和更新用户表的权限。支持国密算法:支持国密加密、签名算法和国密通信协议。落盘加密方案:支持加密节点落盘数据,保障链上数据的机密性。密钥管理方案:在落盘加密方案的基础上,采用KeyManager服务管理节点密钥,安全性更强。同态加密、群环签名:链上提供了同态加密、群环签名接口,用于满足更多的业务需求。FISCO BCOS的开发部署和运维开发部署工具FISCO BCOS引入开发部署工具、交互式控制台、区块链浏览器等工具来提升系统的易用性,大幅缩短建链、部署应用的时间。包含:基于JavaSDK的交互式的命令行工具console区块链浏览器为了便于不同语言开发者快速开发应用,FISCO BCOS同时支持JavaSDK、Node.jsSDK、PythonSDK和GoSDK运维工具联盟链系统中,区块链的运维至关重要,FISCO BCOS提供了一整套运维部署工具,并引入了合约命名服务、数据归档和迁移、合约生命周期管理等工具来提升运维效率。运维部署工具:部署、管理和监控多机构多群组联盟链的便捷工具,支持扩容节点、扩容新群组等多种操作。合约命名服务:建立合约地址到合约名和合约版本的映射关系,方便调用者通过记忆简单的合约名来实现对链上合约的调用。数据归档、迁移和导出功能:提供数据导出组件,支持链上数据归档、迁移和导出,增加了链上数据的可维护性,降低了运维复杂度。合约生命周期管理:链上提供合约生命周期管理功能,便于链管理员对链上合约进行管理。社区开源开发工具依托庞大的开源生态,社区内众伙伴秉承“来自开发者,用于开发者”的共建理念,在FISCO BCOS底层平台之上,自主研发多个趁手开发工具并回馈给社区,从不同业务层面需求上降低区块链应用开发难度和成本。以下为部分列举:区块链中间件平台WeBASE:面向多种对象,如开发者、运营者,并根据不同的场景,包括开发、调试、部署、审计等,打造丰富的功能组件和实用工具,提供友好的、可视化的操作环境。分布式身份解决方案WeIdentity:基于区块链的分布式多中心的技术解决方案,提供分布式实体身份标识及管理、可信数据交换协议等一系列的基础层与应用接口,可实现实体对象(人或物)数据的安全授权与交换。分布式事件驱动架构WeEvent:实现了可信、可靠、高效的跨机构、跨平台事件通知机制。在不改变已有商业系统的开发语言、接入协议的情况下,实现跨机构、跨平台的事件通知与处理。跨链协作方案WeCross:支持跨链事务交易,满足跨链交易的原子性,对跨链进行治理,可支持多方协作管理,避免单点风险。场景式隐私保护解决方案WeDPR:针对隐匿支付、匿名投票、匿名竞拍和选择性披露等应用方案,提供即时可用场景式隐私保护高效解决方案,助力各行业合法合规地探索数据相关业务。区块链数据治理组件解决方案:稳定、高效、安全的区块链数据治理组件解决方案,分别从底层数据存储层、智能合约数据解析层和应用层三个方面,提供了区块链数据挖掘、裁剪、扩容、可信存储、抽取、分析、审计、对账、监管等数据治理方面的关键能力。具体组建包含WeBankBlockchain-Data数据治理通用组件:Data-Stash数据仓库组件、Data-Export数据导出组件、Data-Reconcile数据对账组件。区块链多方协作治理组件解决方案:可无缝适配FISCO BCOS的区块链治理组件解决方案。首批开源的四个组件分别从私钥丢失重置、合约权限细粒度管控、私钥和证书的全生命周期管控等方面着手,提供了可部署的智能合约代码、易于使用的SDK和可参考的落地实践Demo等交付物。单独的治理组建名称为WeBankBlockchain-Governance多方治理协作组件:Governance-Account账户治理组件、Governance-Authority权限治理组件、Governance-Key私钥管理组件、Governance-Cert证书管理组件。区块链应用开发组件解决方案:一套开放、轻量的开发组件集,覆盖智能合约的开发、调试、应用开发等环节,包含了Solidity智能合约开发工具库、智能合约Gradle编译插件、应用开发脚手架。具体包含WeBankBlockchain-SmartDev区块链应用开发工具:SmartDev-Contract智能合约库组件、SmartDev-SCGP合约编译插件、SmartDev-Scaffold应用开发脚手架。ChainIDE:提供智能合约云端开发工具,帮助开发者节约边际成本,加速推送区块链应用落地。FISCO BCOS区块链工具箱:与WeBase/Remix/VSCode/ChainIDE等IDE协同工作,提升开发体验与开发效率。AnsibleforFISCO BCOS自动化生成企业级部署文件:本项目由为区块链开源项目FISCO-BCOS提供了自动化生成企业级配置文件的ansibleplaybook,可以在30秒内(除下载时间)生成配置,极大简化了部署难度,避免了手工配置容易发生的错误。其他工具还包含Truora可信预言机服务、Liquid智能合约编程语言软件、WeEvent基于区块链的分布式事件驱动架构等。编辑于 2021-10-18 15:07开源网站联盟开源项目赞同1 条评论分享喜欢收藏申请