在公链、私有链、联盟链这篇文章中跟大家介绍到,由于应用场景不同的需求,除了常见的公有链以外,还发展出了更适合企业、产业界使用的,私有链以及联盟链。今天带大家认识联盟链的代表— Hyperledger Fabric

Hyperledger Fabric 介绍

Hyperledger 是由Linux 基金会于2015 年10 月发起的计画,致力于以开源的方式开发以区块链为底层技术的分散式帐本架构,而Hyperledger Fabric 是由IBM 领头开发,并将技术捐赠给Linux 基金会。

不可能三角(Impossible trinity)

目前现有的区块链网络,在去中心化(Decentralization)、安全性(Security)与可扩展性(Scalability)三者中只能取其二,不可能兼具三种特性,因此这三个特性大家称它们为区块链的不可能三角(或称三元悖论)。

Decentralization + Security => 比特币、以太坊

为了保障区块链网络的去中心化与安全性,比特币与尚未升级成PoS 的以太坊都必须透过矿工来提供算力,来维护整个区块链的安全性,并且允许所有人来担任矿工赚取挖矿奖励,进而达到去中心化的理想。

但也因此造成了资料储存空间与验证交易的成本大幅提升,导致它们的可扩展性都非常低,比特币的交易速度TPS (Transaction Per Second)仅有7,以太坊的TPS 仅有14;而比特币每一个区块能容纳的资料量仅有1MB ,以太坊则有每个区块8,000,000 gas 的限制。

Decentralization + Scalability => P2P 网络

由于建立一个舍弃安全性的区块链系统是非常不合理的,但仍旧可以拿P2P 网络来作为例子,P2P 网络同样允许所有人成为网络中的节点。

当一份资料上传到P2P 网络中时,会被切割成许多部分并分散储存,当用户想要将资料下载时,就必须将存储于各地的资料碎片组合起来,但是P2P 网络并没有限制档案碎片的更改权限,因此有可能会造成下载到的档案不完整或是被恶意植入病毒等等的安全性问题。

Scalability + Security => Hyperledger Fabric

最后一个就是我们今天的重点,由于非常多的应用场景其实不需要去中心化的特性,反而希望在可扩展性跟安全性可以保障的前提之下,还能够兼具区块链不可篡改、可追溯的原生特性,因此联盟链的的概念就诞生了。

在联盟链网络中的节点是必须由已经被信任并授权的成员来担任,节点的数量相较公有链较少,舍弃了去中心化的这个特性,但也因此可以降低交易验证与资料存储的成本,进而提高联盟链的可拓展性。

模组化架构(Modular Architecture)

可以将Hyperledger Fabric 想像成是乐高积木的底座,它提供了一个最基础的架构,同时提供了许多不同形状的积木,像是共识机制的选择、授权节点的方式都能够视你的应用场景来决定你希望将哪些积木(功能)插上,将哪些不需要的积木卸除。

这样的设计让企业能够客制化,并搭建最适合自己应用场景的联盟链架构。藉由提供各种随插即用的套件,让Hyperledger Fabric 像是一个区块链的工具箱,各种工具都优化到可以即插即用,让企业内部的开发者不需要从最底层开始研究区块链,很大程度地为企业用户简化了使用区块链的门槛以及教育的成本。

许可制的商用区块链

公有链如比特币、以太坊,虽然能够提供资料的不可篡改以及溯源的特性,但是所有上传的资料都开放让所有人检视,这点让企业完全无法接受,诸如像企业内部的机密文件的传递、客户的个资…都是需要被保护的重要隐私资料。对一款商用区块链而言,去中心化是不必要的特性,因此企业能够透过Hyperledger Fabric 搭建只有被授权为可信任的节点才能参与的许可制商用区块链,如此一来敏感资料与机密资料的隐私就得以受到保障。

除此之外, Hyperledger Fabric 也提供了节点授权与验证的解决方案— Membership Service Provider (MSP),让用户能够直接采用。如上面提到的,公有链极低的TPS 与容量限制,如此低的效能完全无法满足企业的需求,因此在去中心化与可拓展性之间,企业无疑会选择可拓展性。

Flowchain X Hyperledger Fabric

Flowchain 是Hyperledger 的会员企业之一,由于Hyperledger Fabric 模组化的架构,我们可以很容易地将Flowchain 的PPKI 以及Flowchain OS 整合在Hyperledger Fabric 上,以Hyperledger 的高性能以及可扩展性作为基础,搭配Flowchain提供的物联网硬体身份验证、异质化硬体的解决方案,来达到真正的实时交易(Real-time transaction)以及企业级的大规模物联网应用。