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原理

常见的共识算法

fabric区块结构设计_区块链