20201110 Fabric SDK区块链

介绍Fabric区块链的基础概念、架构及应用场景。涵盖交易、区块与链的基本定义,联盟链的特点,并深入探讨了Fabric在配置、部署及智能合约方面的关键技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Fabric区块链网络

Fabric整体架构

Fabric共识排序

Fabric账本存储

Fabric智能合约

 

配置文件,网络部署,合约交互。

链码编写,链码交互。

区块链基础知识,GO语言编程技能。

Fabric基础架构,部署运维,链码;

基础概念:

交易Transaction:一次状态转移操作,比如一次转账,一次对键值对的增删改查;

区块Block:交易的集合, 把某一时间段内的交易打包,就形成了一个区块。

链Chain:区块的顺序排列。 单链表结构。每个区块都又一个自己的hash,后一个区块有前一个区块的hash。

 

区块链分类:

1,公有区块链(PublicBlockChains)

世界上任何个体或者团体都可以发送交易,且交易能够获得该区块链的有效确认,任何人都可以参与其共识过程。公有区块链是最早的区块链,也是应用最广泛的区块链,各大bitcoins系列的虚拟数字货币均基于公有区块链,世界上有且仅有一条该币种对应的区块链。

2,联盟区块链(ConsortiumBlockChains),必须要有准入控制。Fabric就是构建联盟链的技术平台。

由某个群体内部指定多个预选的节点为记账人,每个块的生成由所有的预选节点共同决定(预选节点参与共识过程),其他接入节点可以参与交易,但不过问记账过程(本质上还是托管记账,只是变成分布式记账,预选节点的多少,如何决定每个块的记账者成为该区块链的主要风险点),其他任何人可以通过该区块链开放的API进行限定查询。

3,私有区块链(privateBlockChains);

 

区块链特点

1,去中心化;

2,去信任化;

3,数据共享;

4,不可篡改;不可篡改是基于“区块+链”(block+chain)的独特账本而形成的:存有交易的区块按照时间顺序持续加到链的尾部。要修改一个区块中的数据,就需要重新生成它之后的所有区块。

 

区块链平台:

Fabric是一个超级账本;

 

区块链应用场景

1)去信任(去中介),中介将会被区块链取缔。

2)价值转移而非拷贝;

3)数据共享;任何主体都能成为区块链中的一个节点。

 

区块链技术的组成部分

1,P2P网络协议,节点地位平等; gRPC对等服务,即是服务端又是客户端。

2,密码学

hash算法, 将不定长度的数据转化成固定长度的哈西值。

特点:正向快速,逆向困难;输入敏感;能够抗碰撞。

用固定长度的数据代替原始数据,确保数据的真实性。

加解密算法:AES RSA;

3,账本结构:区块包含交易体和区块头。区块头包含前一个区块的hash以及本区块中每次交易的hash。

如何存储账本?(账本,区块,交易)

账本是有一系列有序的、不可篡改的区块组成(交易日志组成)

状态转移是执行交易的结果。每个区块都包含多个有序的交易。

区块是有序的:理解:区块里的交易是有序存储的,区块是有序的。

账本的数据不可能被篡改,除非破坏哈希链。

4,共识算法(分布式一致性算法)

强一致性和最终一致性。

CAP原理,ACID原理

常见的共识算法

 

### 使用 Hyperledger Fabric 搭建区块链网络教程 Hyperledger Fabric 是一种模块化架构的企业级分布式账本技术平台,支持可插拔实现的各种组件,并提供了高度的灵活性和扩展性。以下是关于如何使用 Hyperledger Fabric 搭建区块链网络的具体方法。 #### 1. 准备工作 在开始之前,需要确保本地环境已经准备好必要的工具和依赖项。可以按照以下步骤完成初始化操作: - 创建一个用于存储 Fabric 工具的工作目录: ```bash mkdir ~/fabric-tools && cd ~/fabric-tools ``` - 下载并解压 Fabric 开发服务器的相关文件[^3]: ```bash curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz tar -xvf fabric-dev-servers.tar.gz ``` #### 2. 安装 Fabric 运行时环境 为了简化安装过程,可以通过官方提供的脚本来自动完成 Fabric 的安装。执行以下命令获取并运行安装脚本[^4]: ```bash curl -sSLO https://raw.githubusercontent.com/hyperledger/fabric/main/scripts/install-fabric.sh && chmod +x install-fabric.sh ./install-fabric.sh ``` 此脚本会自动下载所需的二进制文件以及 Docker 镜像,从而为后续的网络构建提供基础支持。 #### 3. 启动 Fabric 网络实例 通过 `startFabric.sh` 脚本启动一个基本的测试网络。该脚本位于前面提到的 `~/fabric-tools` 文件夹中。运行如下命令以启动网络: ```bash ./startFabric.sh ``` 这一步骤将设置好身份认证机制(CA)、通道配置以及其他必要参数,使得开发者能够迅速进入实际开发阶段[^1]。 #### 4. 设计与定制化 Fabric 网络结构 对于更复杂的场景需求,则需深入理解 Fabric 中的关键概念如 MSP (Membership Service Provider), 权限管理, 频道隔离等理论知识。这些内容可以帮助用户定义更加精细的安全模型及业务逻辑处理方式。 例如,在创建新的组织加入现有联盟或者调整已有成员间的访问控制关系时,就需要依据具体的应用背景重新规划相应的配置文档;同时也要考虑到性能优化方面的要求——比如合理分配资源给不同的 Peer 节点等等。 #### 5. 构建 Java 应用程序连接至 Fabric 网络 针对熟悉 Java 编程语言的技术人员来说,《Fabric java 区块链开发详解》是一份非常有价值的参考资料[^1]。它不仅涵盖了从零起步所需掌握的基础知识点介绍,还给出了详尽的实际案例演示说明怎样利用 SDK 实现客户端交互功能。 另外还可以参考开源项目 **fabric-starter** 提供的一整套完整的应用程序框架及其部署脚本集合[^2]。该项目旨在降低入门门槛的同时也为高级用户提供足够的自由度来自由修改适应特定用途。 #### 6. 可视化监控 —— Blockchain Explorer 最后如果想要直观地查看整个系统的运作状态的话,那么集成 Hyperledger Blockchain Explorer 就显得尤为重要了[^5]。其主要作用在于让管理员轻松跟踪交易记录、查询账户余额变化趋势图表展示等功能特性。 首先克隆仓库到目标机器上: ```bash git clone https://github.com/hyperledger/blockchain-explorer.git cd blockchain-explorer/example/net1/ ``` 接着依照指示依次拉取外部依赖库并将它们放置于指定位置之后即可顺利开启服务端口监听等待请求到来。 --- ### 总结 综上所述,借助上述指南便能顺利完成基于 Hyperledger Fabric 技术栈之上简易版私有链组建流程的学习之旅啦!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值