探索Hyperledger(1)

比特币是一个点对点的数字货币交易系统,以太坊是引入了智能合约的去中心化应用平台,在前述系列文章中我对这两个项目做了较为详细的介绍。比特币和以太坊的区块链都是公有的(Public),也就是说,任何个体都可以不受限制的加入,这源于其设计时所考虑的使用场景。对企业来说,有着各种不同的需求,本文将对另一类区块链项目——许可链(Permissioned)中的代表——超级账本(Hyperledger)做一介绍。

Hyperledger的愿景

There will never be one global chain-of-all chains that all industries convert to.

Hyperledger认为未来会有很多的公有链和数以百万计的私有链,每一个区块链都是为特殊的应用场景而设计使用。这些区块链并不彼此孤立,他们之间需要遵循某些标准进行互操作。每一个区块链可能采用不同的共识机制、不一样的智能合约编写语言,但理想状况下,他们底层的设计采用的是一套通用的技术。

由此,Hyperledger希望作为这样一个软件开源社区,推动并创建模块化的区块链通用技术。

A global, cross-industry community of communities advancing business blockchain technologies.

在其官方介绍中进一步阐释,Hyperledger的着眼点在于开源的企业级区块链技术,包括分布式账本技术(DLT,Distribute Ledger Technology),智能合约引擎,客户端及工具包库等。

企业级区块链(Business Blockchain)

企业级应用有其自身的特点。首先,商业活动需要在监管环境下进行,参与商业活动的主体身份需要明晰,不少国家在数字货币涉及反洗钱(AML)及身份识别(KYC)方面有法律要求。其次,由于商业环境中参与者身份明确,在某种程度上部分解决了信任问题,不诚信的行为将为企业带来声誉上的负面影响及潜在的经济制裁。因此,在解决信任问题时,并不需要采用比特币、以太坊系统(当前)的PoW共识机制,从而减少资源的消耗。

结合上述企业级应用的特点,企业级区块链在设计时将不同于我们之前所熟悉的比特币及以太坊。Hyperledger倡导的企业级区块链是许可受限的(Permissioned Blockchain),同时为了更好的通用性,在项目设计时尽量采用松耦合模式,方便企业根据自己的需要来进行开发配置。

许可受限的目的是对成员加入网络做一层控制,明确参与者身份,部分解决信任问题。这样的益处是一方面避免无关个体进入,另一方面有效防止恶意加入的攻击行为,同时将重点放在业务逻辑、吞吐量、信息安全及隐私保护方面。

Hyperledger官方文档中给出了其设想的模块化架构,将比特币、以太坊中我们熟悉的一些功能抽象出来形成不同的层级,包括:共识协议层、智能合约层、通信层(用于P2P消息传输)、数据存储抽象、加密算法抽象、认证服务、政策管理服务、API(供客户端及应用调用)、不同区块链间互操作等。

Hyperledger项目概览

当前Hyperledger总共有9个项目,其中5个为企业级区块链架构项目。Fabric已经公开发布了1.0版本,采用了模块化的架构设计,提供了可选性配置功能,如共识协议及成员管理服务等,剩余的几个项目都还没有正式的产品级发布。Sawtooth,可根据不同的网络情况选择共识机制的分布式账单平台;Iroha,作为Fabric和Sawtooth等项目的补充,着重于移动应用开发;Indy,提供区块链生态系统去中心化的身份管理;Burrow,基于以太坊虚拟机的智能合约引擎。

Hyperledger现状

Hyperledger由Linux基金会于2015年推动发起,于今已经两年。当下有近200家成员(其中30+来自中国)单位,成立了12个活跃的工作组,开发了5个企业级区块链架构项目,其中一个(Fabric)已经发布。金融、供应链和医疗等领域已有企业开始尝试部署使用Hyperledger的架构在其业务中。

本文为原创文章,未经允许谢绝转载。