Hyperledger Fabric(Hyperledger Fabric模型)

Hyperledger Fabric模型

本节概述了编入Hyperledger Fabric的关键设计特性,实现了对全面但可定制的企业区块链解决方案的承诺:git

  • 资产 - 资产定义为能够经过网络交换几乎任何具备货币价值的东西,从整个食品到古董车到货币期货。
  • 链码 - 链码执行与交易排序分开,限制了跨节点类型所需的信任和验证级别,并优化了网络可扩展性和性能
  • 分类帐特性 - 不可变的共享分类账为每一个通道编码整个交易历史记录,并包括相似SQL的查询功能,以便进行有效的审计和争议解决。
  • 隐私 - 通道和私有数据集合使私有和机密的多边交易成为可能,这些交易一般是相互竞争的企业和受监管的行业在共同的网络上交换资产所须要的。
  • 安全和成员资格服务 - 许可成员资格提供了可靠的区块链网络,参与者知道全部交易均可以由受权的监管机构和审计员进行检测和跟踪。
  • 共识 - 一种独特的共识方法可实现企业所需的灵活性和可扩展性。

资产

资产范围从有形(房地产和硬件)到无形(合约和知识产权),Hyperledger Fabric提供使用链码交易修改资产的能力。github

资产在Hyperledger Fabric中表示为键值对的集合,状态更改记录为通道分类账上的交易,资产能够用二进制和/或JSON格式表示。数据库

你可使用Hyperledger Composer工具在Hyperledger Fabric应用程序中轻松定义和使用资产。segmentfault

链码

链码是定义一个资产或不少资产的软件,以及修改资产的交易指令;换句话说,这是业务逻辑。链码是执行读取或更改键值对或其余状态数据库信息的强制规则,链码函数针对分类账的当前状态数据库执行,并经过交易提案发起,链码执行致使一组键值写入(写入集),这些写入能够被提交给网络并应用于全部对等点上的分类账。安全

分类帐特性

在fabric,分类账是全部状态转换的有序、防篡改的记录,状态转换是参与方提交的链码调用(“交易”)的结果,每一个交易都会生成一组资产键值对,这些键值对做为建立,更新或删除提交到分类账。网络

分类账由区块链(“链”)组成,用于以块的形式存储不可变的顺序记录,以及用于维护当前fabric状态的状态数据库。每一个通道有一个分类账,每一个对等点为其所属的每一个通道维护一个分类账的副本。composer

Fabric分类账的一些功能:函数

  • 查询和更新分类账使用基于键的查找,范围查询和组合键查询
  • 只读查询使用丰富查询语言(若是使用CouchDB做为状态数据库)
  • 只读历史查询 — 查询键的分类账历史记录,支持数据来源场景
  • 交易包括以链码(读取集)读取的键/值的版本以及以链码(写入集)写入的键/值
  • 交易包含每一个承认对等点的签名,并提交给排序服务
  • 交易从排序服务被排序到区块和“交付”到通道上的对等点
  • 对等点根据承认策略验证交易并执行策略
  • 在附加块以前,执行版本控制检查以确保自链码执行时间以来读取的资产的状态未发生更改
  • 一旦交易被验证并提交,就存在不变性
  • 通道的分类账包含定义策略,访问控制列表和其余相关信息的配置区块
  • 通道包含成员资格服务提供商实例,容许从不一样的证书颁发机构派生加密材料

有关数据库,存储结构和“查询能力”的更深刻了解,请参阅Ledger主题。工具

相关文章
相关标签/搜索