fabric官方文档注释(1)

相关词汇解释

  • Anchor Peer - 锚节点
    A peer node on a channel that all other peers can discover and communicate with. Each Member on a channel has an anchor peer (or multiple anchor peers to prevent single point of failure), allowing for peers belonging to different Members to discover all existing peers on a channel.

注意:allowing for peers belonging to different Members to discover all existing peers on a channel. (锚节点是可以被其他节点发现的,即一个组织中对外只暴露一个锚节点)

  • Chain - 链
    The ledger’s chain is a transaction log structured as hash-linked blocks of transactions. Peers receive blocks of transactions from the ordering service, mark the block’s transactions as valid or invalid based on endorsement policies and concurrency violations, and append the block to the hash chain on the peer’s file system.

注意:Peers receive blocks of transactions from the ordering service, mark the block’s transactions as valid or invalid based on endorsement policies and concurrency violations, and append the block to the hash chain on the peer’s file system. peer节点从排序服务节点接受交易区块,根据背书策略和并发有效性(防止双花)检测并标记交易有效或者无效,把区块加入到peer本地的hash链上。

  • Chaincode - 链码
    Chaincode is software, running on a ledger, to encode assets and the transaction instructions (business logic) for modifying the assets.

注意:Chaincode is software that encode assets 、modifying the assets
链码是一个编码资产、修改资产的软件

  • Channel - 通道
    A channel is a private blockchain overlay on a Fabric network, allowing for data isolation and confidentiality. A channel-specific ledger is shared across the peers in the channel, and transacting parties must be properly authenticated to a channel in order to interact with it. Channels are defined by a Configuration-Block.

注意
1、A channel is a private blockchain overlay on a Fabric network
2、Channels are defined by a Configuration-Block.
通道是一个fabric网络上的私有链
通道由配置区块定义

  • Commitment - 提交
    Each Peer on a channel validates ordered blocks of transactions and then commits (writes-appends) the blocks to its replica of the channel Ledger. Peers also mark each transaction in each block as valid or invalid.

注意:Each Peer on a channel validates ordered blocks of transactions and then commits (writes-appends) the blocks to its replica of the channel Ledger.
通道中的每个peer节点验证排好序的交易区块并把区块添加到peer本地的账本副本中去

  • Concurrency Control Version Check - 并发控制版本检查(CCVC)
    Concurrency Control Version Check is a method of keeping state in sync across peers on a channel. Peers execute transactions in parallel, and before commitment to the ledger, peers check that the data read at execution time has not changed. If the data read for the transaction has changed between execution time and commitment time, then a Concurrency Control Version Check violation has occurred, and the transaction is marked as invalid on the ledger and values are not updated in the state database.

注意:before commitment to the ledger, peers check that the data read at execution time has not changed. If the data read for the transaction has changed between execution time and commitment time, then a Concurrency Control Version Check violation has occurred, and the transaction is marked as invalid on the ledger and values are not updated in the state database.
交易提交前peer会检查交易读集的内容是否已经发生了改变
防止双花的方法

  • Configuration Block - 配置区块
    Contains the configuration data defining members and policies for a system chain (ordering service) or channel. Any configuration modifications to a channel or overall network (e.g. a member leaving or joining) will result in a new configuration block being appended to the appropriate chain. This block will contain the contents of the genesis block, plus the delta.

注意
1、Any configuration modifications to a channel or overall network (e.g. a member leaving or joining) will result in a new configuration block being appended to the appropriate chain.
2、This block will contain the contents of the genesis block, plus the delta.
通道中的任何配置的修改都会向(某个链上)添加一个配置区块
这个区块会包括创世区块以及增量

  • Consensus - 共识
    A broader term overarching the entire transactional flow, which serves to generate an agreement on the order and to confirm the correctness of the set of transactions constituting a block.

注意:
1、which serves to generate an agreement on the order
2、to confirm the correctness of the set of transactions constituting a block
共识用于产生排序规则
验证组成区块的交易的正确性

  • Current State - 当前状态
    The current state of the ledger represents the latest values for all keys ever included in its chain transaction log. Peers commit the latest values to ledger current state for each valid transaction included in a processed block. Since current state represents all latest key values known to the channel, it is sometimes referred to as World State. Chaincode executes transaction proposals against current state data.

注意: latest values for all keys ever included in its chain transaction log
当前状态是所有已经在当前账本交易日志中的最新键值

  • Dynamic Membership - 动态成员
    Fabric supports the addition-removal of members, peers, and ordering service nodes, without compromising the operationality of the overall network. Dynamic membership is critical when business relationships adjust and entities need to be added-removed for various reasons.

注意:addition-removal of members, peers, and ordering service nodes
动态成员是可以动态增加或删除的成员、peer节点以及排序服务节点(orderer节点)

  • Endorsement - 背书
    Refers to the process where specific peer nodes execute a transaction and return a YES-NO response to the client application that generated the transaction proposal. Chaincode applications have corresponding endorsement policies, in which the endorsing peers are specified.

注意:execute a transaction and return a YES-NO response to the client application that generated the transaction proposal. Chaincode applications have corresponding endorsement policies, in which the endorsing peers are specified.

背书指背书节点处理交易返回YES-NO给客户端节点用于生成交易提案的过程。与链码应用程序相关的背书策略指定背书节点

  • Endorsement policy - 背书策略
    Defines the peer nodes on a channel that must execute transactions attached to a specific chaincode application, and the required combination of responses (endorsements). A policy could require that a transaction be endorsed by a minimum number of endorsing peers, a minimum percentage of endorsing peers, or by all endorsing peers that are assigned to a specific chaincode application. Policies can be curated based on the application and the desired level of resilience against misbehavior (deliberate or not) by the endorsing peers. A distinct endorsement policy for install and instantiate transactions is also required.

注意:Defines the peer nodes on a channel that must execute transactions attached to a specific chaincode application, and the required combination of responses (endorsements).
Policies can be curated based on the application and the desired level of resilience against misbehavior (deliberate or not) by the endorsing peers. A distinct endorsement policy for install and instantiate transactions is also required.

背书策略定义了一个通道上的某个链码应用程序上必须处理交易的peer节点,可以指定具体数目或者按百分比。

背书策略可以根据链码应用以及网络所期待的对节点有意或无意的错误行为的应对能力来设置,背书策略需要在(链码)安装交易及实例化交易中指定。

背书策略更像是区块链中的共识过程

  • Fabric-ca
    Fabric-ca is the default Certificate Authority component, which issues PKI-based certificates to network member organizations and their users. The CA issues one root certificate (rootCert) to each member, one enrollment certificate (eCert) to each authorized user, and a number of transaction certificates (tCerts) for each eCert.

注意:Fabric-ca is the default Certificate Authority component, which issues PKI-based certificates to network member organizations and their users.
one root certificate (rootCert) to each member;
one enrollment certificate (eCert) to each authorized user;
a number of transaction certificates (tCerts) for each eCert.
Fabric-ca是fabric默认的证书管理组件,它向网络成员及其用户颁发基于PKI的证书。

给每个网络上的成员(peer、orderer等)颁发根证书
给每个授权(管理员)用户颁发注册证书
给每个注册证书颁发大量的交易证书

  • Genesis Block - 初始区块
    The configuration block that initializes a blockchain network or channel, and also serves as the first block on a chain.

注意Genesis Block是初始化区块链网络或channel的配置区块,也是链上的第一个区块。

  • Gossip Protocol - Gossip协议
    The gossip data dissemination protocol performs three functions: 1) manages peer discovery and channel membership; 2) disseminates ledger data across all peers on the channel; 3) syncs ledger state across all peers on the channel. Refer to the Gossip topic for more details.

注意:1) manages peer discovery and channel membership; 2) disseminates ledger data across all peers on the channel; 3) syncs ledger state across all peers on the channel.

Gossip协议有三个功能:

  • 管理(peer节点的消息)和通道上的peer节点

  • 向通道上的所有peer节点广播账本数据

  • 在通道上的所有peer节点同步账本状态(世界状态)

  • Instantiate - 实例化
    The process of starting a chaincode container.

注意启动链码容器的过程

  • Invoke - 调用
    Used to call chaincode functions. Invocations are captured as transaction proposals, which then pass through a modular flow of endorsement, ordering, validation, committal. The structure of invoke is a function and an array of arguments.

注意:Used to call chaincode functions, which then pass through a modular flow of endorsement, ordering, validation, committal. The structure of invoke is a function and an array of arguments.

注意invoke用来调用链码函数,(作为交易提案被获取到的),invoke会经过模块化的流程(背书、排序、验证、提交)。invoke的结构是一个函数和一个参数数组

  • Leading Peer - 主导节点
    Each Member can own multiple peers on each channel that it subscribes to. One of these peers is serves as the leading peer for the channel, in order to communicate with the network ordering service on behalf of the member. The ordering service “delivers” blocks to the leading peer(s) on a channel, who then distribute them to other peers within the same member cluster.

注意就是锚节点,一个组织暴露给外界的节点

  • Ledger - 账本
    A ledger is a channel’s chain and current state data which is maintained by each peer on the channel.

注意:a channel’s chain and current state data which is maintained by each peer on the channel.
注意账本包括(哈希)链和当前世界状态,很多时候只把账本归结为哈希链了

  • Member - 成员
    A legally separate entity that owns a unique root certificate for the network. Network components such as peer nodes and application clients will be linked to a member.

注意拥有网络唯一根证书的合法独立实体,如peer节点或app client(客户端节点)

  • Membership Service Provider - MSP
    The Membership Service Provider (MSP) refers to an abstract component of the system that provides credentials to clients, and peers for them to participate in a Hyperledger Fabric network. Clients use these credentials to authenticate their transactions, and peers use these credentials to authenticate transaction processing results (endorsements). While strongly connected to the transaction processing components of the systems, this interface aims to have membership services components defined, in such a way that alternate implementations of this can be smoothly plugged in without modifying the core of transaction processing components of the system.

注意client、peer加入fabric网络;client用证书验证交易;peer用证书验证交易模拟执行(背书)都需要用到msp提供的证书。fabric希望msp服务能够在不改变交易处理的核心组件的情况下自由的插拔。

  • Membership Services - 成员服务
    Membership Services authenticates, authorizes, and manages identities on a permissioned blockchain network. The membership services code that runs in peers and orderers both authenticates and authorizes blockchain operations. It is a PKI-based implementation of the Membership Services Provider (MSP) abstraction.

注意是基于PKI的msp的实现,PKI指公钥模块

The fabric-ca component is an implementation of membership services to manage identities. In particular, it handles the issuance and revocation of enrollment certificates and transaction certificates.
fabric自带的fabric-ca组件实现了成员服务,用来处理ECert(注册证书)和TCert(交易证书)的颁发和撤销

An enrollment certificate is a long-term identity credential; a transaction certificate is a short-term identity credential which is both anonymous and un-linkable.
其中ECert是长期的身份凭证,TCert是短期的身份凭证 身份凭证是匿名且不可链接的

  • Ordering Service - 排序服务或共识服务
    A defined collective of nodes that orders transactions into a block. The ordering service exists independent of the peer processes and orders transactions on a first-come-first-serve basis for all channel’s on the network. The ordering service is designed to support pluggable implementations beyond the out-of-the-box SOLO and Kafka varieties. The ordering service is a common binding for the overall network; it contains the cryptographic identity material tied to each Member.

注意是将交易排好序放入区块的一组节点的集合(orderer节点)ordering service独立于peer的处理流程之外,ordering service支持可插拔实现,当前默认的有solo和kafka。它是整个网络的纽带,包含着各个成员的加密材料。(更像是一个账本生成过程而不是区块链的共识)

  • Peer - 节点
    A network entity that maintains a ledger and runs chaincode containers in order to perform read-write operations to the ledger. Peers are owned and maintained by members.

注意维护账本、运行链码容器来对账本进行读写操作。由member拥有和维护。

  • Policy - 策略
    There are policies for endorsement, validation, block committal, chaincode management and network-channel management.

注意包括背书策略、校验策略、区块提交策略、链码管理策略、网络通道管理策略

  • Proposal - 提案
    A request for endorsement that is aimed at specific peers on a channel. Each proposal is either an instantiate or an invoke (read-write) request.

注意一个提案要么是链码实例化提案,要么是链码交互

  • Query - 查询
    A query requests the value of a key(s) against the current state.

注意查询世界状态中的键值,(就像查询数据库一样)

  • Software Development Kit - SDK
    The Hyperledger Fabric client SDK provides a structured environment of libraries for developers to write and test chaincode applications. The SDK is fully configurable and extensible through a standard interface. Components, including cryptographic algorithms for signatures, logging frameworks and state stores, are easily swapped in and out of the SDK. The SDK API uses protocol buffers over gRPC for transaction processing, membership services, node traversal and event handling applications to communicate across the fabric. The SDK comes in multiple flavors - Node.js, Java. and Python.

注意交易处理、成员服务、节点遍历、事件处理都是借助SDK API 使用grpc与fabric通信。目前支持node.js java python,(个人理解它就是应用程序中与链码交互的接口)

  • State Database - stateDB
    Current state data is stored in a state database for efficient reads and queries from chaincode. These databases include levelDB and couchDB.

注意保存世界状态的数据库

  • System Chain - 系统链
    Contains a configuration block defining the network at a system level. The system chain lives within the ordering service, and similar to a channel, has an initial configuration containing information such as: MSP information, policies, and configuration details. Any change to the overall network (e.g. a new org joining or a new ordering node being added) will result in a new configuration block being added to the system chain.

注意系统链是保存系统级定义网络的配置区块,存在于ordering服务中,类似一个通道,同样由通道初始配置信息 msp信息、策略和详细配置信息。对整个网络的所有变化都会在系统链上生成新的配置区块。

The system chain can be thought of as the common binding for a channel or group of channels. For instance, a collection of financial institutions may form a consortium (represented through the system chain), and then proceed to create channels relative to their aligned and varying business agendas.
系统链可以看作一个或一组通道的纽带,如金融机构的集合形成一个财团,根据业务建立通道

  • Transaction - 交易
    An invoke or instantiate operation. Invokes are requests to read-write data from the ledger. Instantiate is a request to start a chaincode container on a peer.

注意链码交互(读写 账本)和实例化操作(在一个peer上启动链码容器)都称为交易,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值