区块链联盟链森林 区块链 联盟链

皕利分享 76 0

本篇文章主要给网友们分享区块链联盟链森林的知识,其中更加会对区块链 联盟链进行更多的解释,如果能碰巧解决你现在面临的问题,记得关注本站!

区块链之联盟链(三) 认识Fabric

Fabric 是超级账本联盟推出的核心区块链框架,它适合在复杂的企业内和企业间搭建联盟链。根据超级账本联盟的目标, Fabric 被建设为一个模块化的、支持可插拔组件的基础联盟链框架。区块链联盟链森林

与以太坊系的Quorum不同,Fabric从一开始就只考虑企业间的应用。其独有的channel概念,将企业根据业务目的不同以不同的子网连接起来, 每一个子网对应一个channel,而每个channel有自己独立的区块链。而Quorum很显然是只有一个公网(所有企业节点都加入进去),企业与企业间的私有业务是通过Private Manager 完成的。

理解channel的最简单方法就是,将它类比为一个消息服务提供的Topic,实际上Fabic最早就是基于Kafka 的分布式消息服务来实现。

       在Fabric网络中,一个企业可以有一个或多个节点加入整个联盟链;一个企业可以加入1个或者多个Channel(子网);  一个节点可以加入1个或者多个channel。每个channel构成一个子网,所以Fabric 是 一种由子网组成的网络。

那么Fabric是怎么实现智能合约的执行和完成业务上链(将事务结果记录在区块链里)的呢区块链联盟链森林

与其它框架不同, Fabric 将整个过程分成区块链联盟链森林了三个阶段:

业务背书阶段 : 客户的请求发送的背书节点,通过智能合约完成业务的计算(但不更新状态),并完成背书;将背书结果返回个客户端。

业务的排序阶段 : 客户端将背书结果通过Channel被发送到排序节点(orderer),在排序节点完成事务的排序,并打包到block里,最后下发给所有连接到channel的节点。

业务验证并写入账本阶段 : 通过Gossip 网络,所有Channel的节点都会接收到新的block,节点会验证block中的每一个事务,确定是否有效:有效地将会跟新world state,无效的将会标志为“无效”,不会更新World state,但整个block会被完整的加入到帐本中(包括无效的事务)。

根据以上的描述,Fabric 节点实际可以分为  ,普通节点和Order节点:

 Peer, 普通节点, 完成背书(包括只能合约的执行)和验证.

orderer,  排序节点,完成排序。

加入orderer节点的Fabric网络可以被描述如下:

每一个Channel,都定义了所有属于channel的节点,但是并不需要所有节点都连接到Orderer 节点(节点间可以通过gossip 协议通讯来传播私有数据或事务).

       在区块链中,共识是区块链的基础。与公有链不同,联盟链的共识要求所有加入账本的事务是确定的、最终的,也就是不可以有分叉,区块与区块间的顺序是一定的,只存在唯一条链。在Fabric 中,这个客观需求正是由排序实现的,所有的事务将被提交给orderer节点获得确定的顺序,并最终打包成block进入帐本。 Fabric 从1.4.1开始支持基于Raft实现排序服务,  可以认为基于Raft实现共识。

基于RAFT的排序服务相对于早期的Kafka 具有更好的分布性,配置更加简单,是联盟链里常用的一个常用的达成共识的算法,Quorum就 默认使用RAFT作为共识层。简单的说,RAFT是一个leader和follower的模式, 所有加入RAFT网络的节点,任意时候都有一个leader,  只有这个leader有权决定事务的顺序,并打包成Block,其它节点只能作为follower提交事务和同步block。

基于FAFT网络,每个企业可以有一个或多个节点参与到Orderer中去。在Frabric中企业间的网络连接可以变化成如下形式:

       区块链的使用用户在以太网中被称作EOA(External of Account), EOA的载体是钱包。我们沿用这个概念,来看看Fabric是如何实现用户和发起事务的。Fabric中EOA是一个CA中心发布的certificate(x.509),一个Certificate代表一个Identity(这与以太坊还是有很大区别的, 以太坊中一个EOA其实是一个hash地址),EOA能够参与的channel以及被授权的操作是有channel的MSP( Membership Service  Provider)决定的(如下图)。

注:certificate 是一种密码学上验证身份的通用做法; certificate包含了个人的信息,公钥以及发布这个certificate的CA的签名。验证方只需要拥有这个CA的证书(包含CA的公钥),就可以验证这个签名是否正确,certificate的内容是否有篡改。简单的说,通过CA和Certificate,我们可以获得一个可验证的的身份和信任链。

      如上图,fabric中通要使用Wallet作为EOA的载体,一个Wallet中可以包含多个Identity(x.509 certificate)。 Identity 通过 CA提供的信任链来验证正确性。

  验证了身份之后, Fabric 通过MSP在区块链网络中解决该身份是否代表组织的成员和在组织内具有什么角色。例如,channel首先会验证当前用户Identity是否是有效地身份,然后通过MSP查看其所处的企业和具有的角色,最终确定该用户是否有权执行操作。

可以说,Fabric的访问控制是通过MSP来完成的。在每一个需要访问控制的地方都需要定义一个MSP。  例如,每个channel都定义一个MSP,这个MSP规定了在channel范围内资源的访问权限。 MSP 是Fabric里一个晦涩难懂的概念,也是其赋予企业间安全访问的基础。

前文提到, Fabric 将业务处理和上网分成了三个部分, 背书,排序,验证后加入账本。

其中背书是Fabric执行智能合约的阶段。以太坊中,智能合约是在EVM中执行的,有多种语言支持。 在Fabric,智能合约被称为chaincode: 一个chaincode 可以理解为是智能合约的容器,可以包含一个或多个智能合约, 不用于EVM, chaincode是在 JVM 或NodeJS中执行。

客户应用程序通过智能合约来访问账本,每一个可访问的智能合约都被安装在客户端可以访问的节点上,并被定义在channel里。(有只能合约的节点被称为背书节点,没有只能合约的节点被称未提交节点,提交节点只维护账本)

客户应用提交一个交易请求, 请求到达背书节点, 背书节点首先会验证客户的签名,确保客户的身份有权执行本次交易,接着执行交易提及的智能合约(chaincode),并生成一个背书响应(或者叫做交易提案,tran-proposal)。这个背书响应中通常包含World state 的读集合,写集合, 以及节点对本次交易的签名。这里与以太坊系联盟链最主要的不同是: 背书阶段只模拟交易,并不真正更新交易结果。 而真正更新交易在第三阶段完成。背书节点最后将生成的背书响应fanhui给客户端, 智能合约部分的执行就结束了。

通常一个交易的执行需要多方的签名,所以客户端需要将一个交易发送给多个背书节点,这些背书节点的选择需要满足背书策略的要求。

下图是一个包含有客户、背书节点,提交节点的网络示意图。

根据Fabric官方的参考文档,客户交易的正果过程可使用下图描述。

如上图,从1到3,为背书阶段,4为排序阶段,4.1,4,2, 5为验证提交阶段。 参考 Frabic的节点 概念,可以了解更多在交易细节的概念。  

总的来看, Fabric 更专注于企业间,通过上文,可以让大家对Fabric的基本构成与概念有一个总的了解。  Fabric本身并不神秘,都是使用的现有的企业间的技术。要更好的了解,建议参考阅读分布式消息系统和企业的安全基础设施(CA相关)的支持。与以太坊系联盟链实现比较,  Fabric 的子网更概念对于复杂企业间应用适应更强,但是其复杂的安全考量,使得运营成本很高,另外,Fabric 使用Certificate做为用户身份,有很大的局限性,在新的2.0里,Fabric对于此处将有所改变。

下一篇,我们将来看看Sawtooth , 由Inter 提供的区块链框架。

区块链之联盟链(一) 认识以太坊

区块链之联盟链(二) 认识Quotum

区块链之联盟链(三) 认识Fabric

区块链之联盟链(四) 认识Sawtooth

区块链,4种类型,知多少?

——你好,区块链联盟链森林我是心态,专注分享对区块链区块链联盟链森林的认知与投资思考。希望能帮到你。

区块链根据不同的使用需求和场景,区块链分为:公有链、联盟链、私有链和混合链4种类型。

1.公有链

公有链,是指全世界任何节点的任何人,在任何地理位置,都可以进入系统读取数据、发送交易、竞争记账等参与共识的区块链。没有任何机构或个人可以篡改其中的数据,因此公有链是完全去中心化的。

比特币和以太坊都是公有链的代表。公有链一般通过发行代币(Token)来鼓励参与者竞争记账(即挖矿),以确保数据的安全性和共识更新。

比特币平均每10分钟产生1个区块,且其POW机制很难缩短区块时间,POS机制相对而言可缩短区块时间,但更易产生分叉。所以交易需要等待更多确认才被认为安全。

一般认为,比特币中的区块经过6个确认后才是足够安全的,这大概需要1个小时。这样的确认速度难以满足商业级的应用。因此,ETH及EOS等支持更多写入速度的公有链正在不断发展。

2.联盟链

联盟链是指有若干机构共同参与和管理的区块链,每个机构都运行N个节点。

联盟链的数据只允许系统内不同的机构进行读写和交易,通过数字证书的方式实现基于PKI的身份管理体系交易或提案的发起,以参与方共同签名验证来达成共识,因此不需要工作量证明(POW),也不存在数字货币(代币),提高了交易达成的效率,节约了大量计算成本(算力硬件投入和电力能源消耗)。

通常情况下,参与联盟链的节点会被划分不同的读写权限,能支持每秒1000次以上的数据写入。

3.私有链

私有链与公有链完全去中心化不同,私有链的进入权限由某个组织进行控制,各个节点参与资格由该组织授权控制。

由于参与的各个节点是有限且可控的,私有链往往拥有很快的处理速度,能支持每秒1000以上的数据写入,同时降低内部各个节点的交易成本。

节点可以实名参与,因此具有确认身份的金融属性。私有链的价值主要是提供安全、可追溯、不可篡改、自动执行的运算平台,可以同时防范来自内部和外部对数据的安全攻击或篡改,这在传统的系统中是很难做到的。

私有链的应用场景一般在企业内部,如分公司的库存管理,各地数据的汇总统计等,也可以用在政府的预算和执行等可以被公众监督的领域。大型金融集团目前也倾向于使用私有链技术。

4. 混合链

当公有链和私有链的各自优势相结合时,就会出现混合链。混合链的开发难度大,但前景广阔。

未来市场上,一定会出现巨头型的底层技术和协议开发的公司,这些巨头公司会架设出不同用途的公有链、私有链或者联盟链,基于对性能和安全性及应用场景的不同需求,然后嫁接不同行业的应用。比如一条支持高并发的通信类公有链,一条侧重安全性的支付联盟链,等等。

(感谢阅读)

点个赞,点个关注,就是对区块链联盟链森林我最大的支持,咱们明天见。

公有链,私有链与联盟链有何不同

公有链向所有人开放区块链联盟链森林,私有链向满足特定条件区块链联盟链森林的个人开放区块链联盟链森林,联盟链向授权区块链联盟链森林的组织或机构开放。

公有链,也就是公共区块链(Public blockchains),是指全世界任何一个人都可以读取、任何一个人都可以发送交易且交易能够获得有效确认的共识区块链。

私有链,也就是完全私有区块链(Fully private blockchains),是指写入权限完全在一个组织手里的区块链,所有参与到这个区块链中的节点都会被严格控制。

联盟链,即联盟区块链(Consortium blockchains),是指有若干组织或机构共同参与管理的区块链,每个组织或机构控制一个或多个节点,共同记录交易数据,并且只有这些组织和机构能够对联盟链中的数据进行读写和发送交易。

扩展资料:

区块链有公有链,私有链与联盟链三种。

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。

区块链(Blockchain)是比特币的一个重要概念,它本质上是一个去中介化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含区块链联盟链森林了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。

参考资料:区块链 百度百科

区块链技术中的联盟链技术特点是什么?

金窝窝分析区块链中联盟链的技术特点如下:

联盟链是指有若干个机构共同参与管理的区块链,每个机构都运行着一个或多个节点,其中的数据只允许系统内不同的机构进行读写和发送交易,并且共同来记录交易数据。

联盟链技术特点

1.

低成本运行和维护

2.

高交易速度及良好的扩展性

3.

联盟维护、

比私有链更具可信度

根据网络划分区块链的分类包括

法律分析:根据网络范围划分区块链的分类包括公有链、联盟链、私有链,具体如下:

1、公有链:主要是指部署在互联网范围之内,没有特别的一个权限的一个设置,也没有其他的一些什么登陆上的一些条件,任何人都可以直接下载节点来使用,任何人也可以直接通过一个客户端来连接一个节点,是没有什么限制的,其中的数据,也能够被任意的访问;

2、联盟链:也就是由若干个节点成员来组成的一个联盟网络,这种类型,主要是使用在商业环境之下,比如说多个商家之间,政府的政务,银行,税务等,他们可以共同组成一个联盟,为某一个具体的场景服务,比如说像企业跟他的客户之间,供应商之间等等可以形成一个联盟网络,联盟链相对于公有链来讲,它一般是有一个身份鉴权的,并不是所有人都可以直接来联入联盟链这个网络的,它有一个身份鉴权,同时对于数据也有一些更多的保护;

3、私有链:更多的是在企业的内部,比如一个集团企业,它的各个部门之间,它的子公司之间,从这个角度来说,这三种,它们的一个主要的区分在于针对不同的应用场景,针对一个网络的分布范围所形成的一个网络部署的差别,它是一个灵活的概念,这三者之间是根据不同的网络范围,根据应用场景的一个划分,并不是一个严格意义上的界定。

法律依据:《中华人民共和国网络安全法》

第一条 为了保障网络安全,维护网络空间主权和国家安全、社会公共利益,保护公民、法人和其他组织的合法权益,促进经济社会信息化健康发展,制定本法。

第二条 在中华人民共和国境内建设、运营、维护和使用网络,以及网络安全的监督管理,适用本法。

写到这里,本文关于区块链联盟链森林和区块链 联盟链的介绍到此为止了,如果能碰巧解决你现在面临的问题,如果你还想更加了解这方面的信息,记得收藏关注本站。

标签: #区块链联盟链森林

  • 评论列表

留言评论