【Fabric学习】什么是HyperLedger Fabric?

这篇具有很好参考价值的文章主要介绍了【Fabric学习】什么是HyperLedger Fabric?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文总结自Fabric官方文档,描述了Fabric产生的背景、特性、主要组件。

背景

区块链是不可更改的交易账本,由同等节点(peer nodes)组成的分布式网络来维护。

  • 比特币:第一个使用区块链的应用;
  • 以太坊:引入智能合约来开发分布式应用。

二者都是公有链public / permissionless),所有人都可以参与,在链上匿名活动。

随着区块链技术的发展,越来越多的企业需求涌现。对于企业使用场合,我们需要考虑以下要求:

  • 参与者身份公开;
  • 网络需要有权限才能参与;
  • 高交易吞吐量;
  • 低交易确认延迟;
  • 交易隐私性、机密性。

其他的区块链平台都是适用于企业需求,而Fabric是为企业需求而设计的。

Fabric的出现是为了解决其他公链的隐私、效率问题。

Hyperledger Fabric

Fabric是一个开源、企业级、私有的(permissioned )分布式账本平台,专用于企业场景。

Fabric的特性,与其他区块链的不同在哪里:

  1. Linux基金会名下,良好的开源背景;
  2. 高度模块化可配置的架构;
  3. 允许使用通用编程语言编写智能合约,例如Java、Go、Node.Js。不需要学习其他DSL(领域特定语言)的成本;
  4. 私有性permissioned),相比于公链,参与者互相知道身份。参与者可能不会完全相信其他人,但网络可以在基于参与者之间存在的信任的治理模型下运行。
  5. 支持可定制的共识协议:根据不同使用场合、隐私需求,使用不同的共识协议,例如CFT、BFT。
  6. Fabric的共识协议可以不使用原生的加密货币

模块化

Fabric拥有模块化的架构,允许定制共识协议、身份管理协议(LDAP or OpenID)、密钥管理协议、密码库。

广义上,Fabric提供以下的模块化组件:

  • 可定制的ordering service:交易接收、被广播的顺序
  • 可定制的 membership service provider:管理用户的密码身份
  • 可选的peer-to-peer gossip service
  • 容器中运行的链码(Chaincode,即智能合约)
  • 支持不同的DBMS(关系型数据库)
  • 可定制的背书、验证策略

Permissioned vs Permissionless Blockchains

  • Permissionless的区块链中:所有人可以匿名参与。为了增加信任,引入挖矿机制交易小费来激励信任的产生。
  • Permissioned的区块链中:参与者有一定的信任,经过授权、审查,区块链可以采用CFT、BFT等传统共识策略,不需要进行消耗极大的挖矿。

智能合约

智能合约(Fabric中称为链码,“Chaincode”)是可信的分布式应用。

传统的智能合约

目前,现有的支持智能合约的平台(以太坊、Tendermint等)采用的都是order-execute交易架构

  1. 验证、排序交易,再传播给所有对等节点;
  2. 每个对等节点按顺序执行交易;

order-execute架构下的智能合约都要是确定性的(deterministic),否则无法达到共识;为了解决这个问题,以太坊采用了领域特定语言(Solidity)来消除非确定性操作。这阻碍了通用性。

Fabric的智能合约

Fabric引入了新的交易架构execute-order-validate,分为三个步骤:

  1. 执行交易,并检验正确性(为它背书);
  2. 排序交易(通过可定制的共识协议);
  3. 提交给账本之前,验证交易(通过app特定的背书政策)

Fabric中,app特定的背书政策(application-specific endorsement policy )规定了哪些节点需要为合约的正确执行做出保证。因此,一个交易只需要由部分背书节点执行。这提高了并行速度、系统的可扩展性。

步骤1消除了任何的不确定性,不同的执行结果会再排序前被过滤掉。因此,Fabric可以采用通用编程语言来编写智能合约。

Privacy

公链中,智能合约、交易数据都是公开的。

Fabric采用通道(channel)和隐私数据(private data)来实现隐私。文章来源地址https://www.toymoban.com/news/detail-802968.html

  • 通道:参与者使用通道建立一个子网络,只有网络的参与者能看见特定的交易。因此,处于通道中的节点才能访问链码、交易的数据。
  • 隐私数据:允许在同一个通道的参与者中分发。

到了这里,关于【Fabric学习】什么是HyperLedger Fabric?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Fabric 超级账本学习【5】Fabric2.4网络环境下——搭建Hyperledger Fabric区块链浏览器

    博主最近在搭建Hyperledger Fabric区块链浏览器过程中也学习了很多博主的搭建流程,踩了很多雷,踩了很多 坑,现将成功搭建好的Hyperledger Fabric区块链浏览器详细流程分享如下,帮助大家避雷闭坑 Hyperledger Explorer 是一个简单,强大,易于使用,维护良好的开源实用程序,可浏

    2023年04月23日
    浏览(36)
  • 【区块链学习】番外一:Hyperledger Fabric 2.x环境搭建

    由于疫情,只能乖乖滚回家了。回到家休息了几天,整理了一下家里的资源,找到一台win10老台式机,重装了Ubuntu18.04系统勉强够用。之前在实验室搭建过一次环境,这次希望少踩一些坑。 惯例,先附上hyperledger fabric的官方文档 更换镜像源(阿里云) 正式安装环境前,咱先把

    2024年02月02日
    浏览(36)
  • (Fabric学习八)部署区块链浏览器Hyperledger explorer

    区块链浏览器Hyperledger explorer: 区块链浏览器:官方网站https://github.com/hyperledger-labs/blockchain-explorer 可以看到他需要以下几个文件 : docker-compose.yaml test-network.json config.json 注意:如果从来没有设置过postgreSQL,那最好使用默认的账号hppoc和密码password,不然会报role \\\'你自己的定

    2024年02月09日
    浏览(35)
  • Linux搭建Hyperledger Fabric区块链框架 - Hyperledger Fabric模型概念

    2015年,Linux基金会启动了Hyperledger项目,目标是发展跨行业的区块链技术。 Hyperledger Fabric是Hyperledger中的一个区块链项目,包含一个账本,使用智能合约并且是一个通过所有参与者管理交易的系统。 Hyperledger Fabric 是分布式账本解决方案的平台,以模块化架构为基础,支持不同

    2023年04月08日
    浏览(40)
  • 区块链hyperledger fabric部署

      新建目录、下载、解压 配置环境   将指定版本的 Hyperledger Fabric 平台特定二进制文件和配置文件安装到 fabric-samples 下的  /bin 和  /config  目录中,下载指定版本的 Hyperledger Fabric docker 镜像 2.2.1 配置镜像源 注:以上curl主要是为了获得一个 bootstrap.sh 的脚本文件并执行,可能

    2024年02月11日
    浏览(33)
  • 搭建 Hyperledger Fabric区块链网络

    这里以下载最新版为例,得益于官网文档;网址为:教程 或者使用该命令下载指定版本  wget https://studygolang.com/dl/golang/go1.19.linux-amd64.tar.gz 之后解压到指定文件,一般为 /usr/local/下 ,需要配置环境变量

    2024年01月20日
    浏览(50)
  • 区块链技术和Hyperledger Fabric介绍

    1.1.1 起源 在比特币诞生之时,技术专家们开始研究比特币的底层技术,并抽象提取出来,形成区块链技术,或者称分布式账本技术。 1.1.2 定义 简称BT(Blockchain technology),也称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与

    2024年02月22日
    浏览(33)
  • Hyperledger Fabric项目搭建区块链浏览器Hyperledger-blockchain-explorer

    区块链浏览器官网:https://github.com/hyperledger/blockchain-explorer 如果虚拟机没有联网,导致下载不下来,也可以前往Fabric-explorer附件下载进行下载,之后在本地根据需要修改,修改后上传到虚拟机 此时目录结构如下图所示 3.1修改test-network.json—— 网络配置文件,包含身份的指定

    2024年02月08日
    浏览(36)
  • Hyperledger Fabric explorer区块链浏览器搭建

    https://github.com/hyperledger-labs/blockchain-explorer 官方浏览器的github地址 根据文档,采用docker容器的方法搭建explorer。 根据官方提供的文件,需要创建的目录结构如下: 这是官网提供的模板 这里的organizations就是你搭建区块链网络的证书配置文件crypto-config文件,因为之前的网络创建

    2024年02月11日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包