@sambodhi
2018-11-16T21:23:23.000000Z
字数 3870
阅读 1445
作者 | Mohammed Nihal Ansari
译者 | Sambodhi
导读:公众对区块链的认识也许限于比特币或以太坊,但多数肯定不知道 Hyperledger(超级账本)。Hyperledger Fabric,是由 IBM 带头发起的一个联盟链项目,2015 年末移交给 Linux 基金会,成为开源项目。Linux 基金会孵化了很多区块链项目,Fabric 是其中最为出名的一个。一般人们说的超级账本,基本上就是指 Hyperledger Fabric。
自从比特币证明了它作为一个真正具有全球重要性的系统的价值以来,我的团队一直密切关注分布式系统领域。这是人类历史上的第一次,比特币系统让一个用户能够有机会参与这样的网络:这个网络可能包括地球上的每一个人。正是这种包容性,让比特币变得炙手可热,很快,比特币成为所有市场渗透的根源。这种包容性提出了一种解决方案的可能性,即在迄今被认为是孤立的组织之间提供实时数据共享。结果是,这项技术终于引起了巨头们的注意:企业 IT!在 2015 年末,由 Linux 基金会(Linux Foundation)发起,像 IBM 这样的主要 IT 组织开始评估比特币成为可能技术的能力。啊,区块链!
在 2015 年的最初研究期间,研究方向朝着将区块链应用于企业领域发展,业界大多数专家认为,区块链是一个系统,可以为企业日常处理的一些最具挑战性的问题提供解决方案,以无异议和透明的方式在多方业务场景中建立问责制的问题。这一问题一旦得到解决,就有望缩短周转时间,以及减少纠纷形式的损失。尽管有这样的承诺,但大多数专家认为,这项技术已经提前到来,并有望在 2027 年左右,也就是从现在开始的 10 年之后,才会被首次采用。
然而,由于 IBM、Microsoft 和 SAP 等大型 IT 企业对这项技术投入了大量资金,加速了这项技术的发展和采用。例如,IBM 和 SAP 都已发布一个商业版本的区块链平台,名为 “Hyperledger Fabric”,很有前途,对客户友好。本文将概述区块链技术、平台的相关知识,以及它能够为企业 IT 环境提供什么。
构成区块链的四个部分是:
区块链账本记录了它上面发生的所有事务,并在区块链网络中的多个节点或对等点复制自己。每个节点上都有一个完整的账本副本。保留整个账本的多个实例有很多好处。其中一些值得注意的是:
要实现这一点,你首先需要了解数字签名如何在公钥基础设施环境中工作。以这个例子为例:事务是由 Tom 发起的。这种事务可以是资金的转移,也可以是任意业务资产的转移。事务是使用 Tom 的私钥数字签名的,只有 Tom 可以访问私钥。然后,将事务广播到整个节点网络。接下来,每个节点必须验证 Tom 是否发起此事务的人。验证事务真实性所需的全部工作就是 Tom 的公钥,网络中其他人都可以访问该公钥。借助此公钥,验证 Tom 的私钥是否用于签署此事务是一个简单的一步过程,也就是确定 Tom 确实是触发该事务的人。如果此事务源自故意的骇客所为,那么事务中的数字签名在与 Tom 的公钥进行验证时,将无法匹配。如果骇客在某种程度上利用了 Tom 的事务并更改了其值,这将会导致数字签名被损坏,而当其他节点根据 Tom 的公钥验证事务时,就会发现这一被黑的事实。请注意,数字签名已存在数十年,甚至在比特币系统出现之前,就已经付诸实际应用了。
资产数据全部存储在区块链账本上。但是,还有第二层信息也被存储了。这个信息就是资产数据的加密哈希(SHA-256)。存储这个哈希是为了确保数据不会被有意的骇客或后门操纵。此外,哈希存储在整个区块链中,即,Block 2 将是迄今为止在区块链中记录的数据的哈希。这个块将包含计算过的哈希,以及前一个哈希计算过的哈希值。现在,如果一个骇客以某种方式更新其中一个块中的数据,那么整个区块链块的哈希指纹就会被破坏,系统将会立即报告。
到目前为止,民主数字共识是区块链最常被提及的特性。让我们重温一下什么是区块链:区块链是一个由连接节点组成的网络。每当在该网络发起事务时,当且仅当大多数节点同意事务中包含的信息时,它才会被提交到账本。在最初的比特币区块链中,这是通过一种被称为 “工作量证明”(Proof of Work)的方案实现的。以太坊引入了权益证明(Proof of Stake)和 DPOS。Hyperledger fabric 是区块链的企业版,依赖于 PBFT(Practical Byzantine Fault Tolerance,改进型实用拜占庭容错)。在区块链领域中,还有其他一些共识机制发挥作用,越来越多的加密货币不时被发明出来。
然而值得注意的是,区块链技术的一些构建模块早在 70 年代就已经存在了。比特币带来的是一个完全集成的系统,它利用了这些技术的功能,如分布、哈希和数字签名。
Hyperledger Fabric 是一个许可链的基础架构,最初由 IBM 和 Digital Asse 提供。它是一个模块化架构,提供了基础架构中节点之间角色的划分、智能合约(Fabric 中称为 “chaincode”)的执行,以及可配置的共识和会员服务。Fabric 网络由“对等节点” 组成,该节点执行 chaincode,访问账本数据,签署事务并提供应用程序的接口。“Orderer 节点”,确保区块链的一致性,并将认可的事务交付给网络的对等节点,以及 MSP 服务(通常作为证书颁发机构实现),管理用于验证成员身份和角色的 X.509 证书。
Fabric 通过安装适当的模块,支持开箱即用的 Go 和 JavaScript 中的 chaincode(通过 Hyperledger Composer,或 v1.1 以上的本地代码),以及其他语言(如 Java)。因此,与只支持封闭式智能合约语言的竞争对手相比,它更具备灵活性。
现在,我们总结一下 Hyperledger Fabric 的一些最突出的特征:
Hyperledger Fabric 是一个许可网络的框架,所有参与者都有已知身份。在考虑许可网络时,你应该考虑区块链用例是否需要遵守数据保护法规。许多用例(尤其是在金融部门和医疗保健行业)都受到数据保护法规的约束,这些法规要求了解网络成员的身份以及访问特定数据的成员身份。例如,考虑一家私募股权公司。根据定义,私募股权基金不在证劵交易所公开交易,其投资者通常是风险投资公司、私募股权公司或天使投资者。这个网络的参与者需要被了解,并且在资本投资上有信誉才能参与区块链。
Hyperledger Fabric 构建在模块化架构之上,这个架构将事务处理分为三个阶段:分布式逻辑处理(distributed logic processing )和协议(即 “chaincode”)、事务排序以及事务确认和事务提交。这种划分带来了几个优点:跨节点类型所需的信任和验证级别更少,并且优化了网络的可扩展性和性能。
由于竞争力、保护法规和私人数据的保护条例,决定了企业对某些数据元素有隐私方面的需求,这可以通过在区块链上的数据分区来实现。Hyperledger Fabric 支持的通道允许数据仅发送给需要知道数据的一方。
例如,许多金融实体表达了他们的担忧:竞争对手甚至能够看到正在处理的事务数量。一些金融机构认为加密技术并不足以保护他们的数据。考虑到一些金融工具可能需要 10 年甚至更长时间才能实现价值,随着时间的推移,加密技术才有可能会允许公开私人数据。通道提供了数据分区的功能,只有那些需要了解数据的人才能看到事物数量和数据本身。
CouchDB 提供了一套完整的查询语言,可用于查询业务理解语言中的账本。
Hyperledger Fabric 架构的模块化使网络设计人员能够插入他们首选的组件实现,这是一个优势。模块化最受欢迎的领域之一,就是 “自备身份”。一些跨业公司网络已经具备身份管理的功能,并希望重用而不是重建。架构的其他组件可以轻松地插入,包括共识或加密,有些国家 / 地区还有自己的加密标准。
HSM(Hardware Security Module,硬件安全模块)支持对于保护和管理数字密钥来进行强身份验证至关重要。Hyperledger Fabric 为密钥生成提供了经过修改和未修改的 PKCS11,它支持需要更多保护的身份管理等情况。对于处理身份管理的场景,HSM 增加了对密钥和敏感数据的保护。
比特币的前景无法预测。然而,企业区块链的未来前景被人们看好。它提出了通过建立问责制的可能性,这种问责制是由参与多方业务设置的组织之间的真正实时信息共享建立的。为了满足企业的需求,Hyperledger Fabric 在过去几年有了很大的发展,现在,已经囊括了企业可以依赖的大部分功能。Hyperledger Fabric 成为企业区块链的事实标准,看来只是一个时间问题。
原文链接:
https://medium.com/coinmonks/hyperledger-fabric-the-enterprise-blockchain-104f5e59f169