自己动手部署区块链-hyperledger/fabric-01

Hyperledger(又名Fabric) 来源于伟大的IBM,从最初IBM将44,000行代码进行开源到现在,已经刚好有100个成员参与其发展,参考以下链接:
Hyperledger Community:(https://www.hyperledger.org/community)
Hyperledger mailing lists and archives:(http://lists.hyperledger.org/)
Hyperledger Slack:(http://hyperledgerproject.slack.com)
if you need an invitation, try our Slack inviter:(https://slack.hyperledger.org)
Hyperledger Wiki:(https://wiki.hyperledger.org/)
Hyperledger Code of Conduct:(https://wiki.hyperledger.org/community/hyperledger-project-code-of-conduct)
Community Calendar:(https://wiki.hyperledger.org/community/calendar-public-meetings)

本文主要简单介绍目前主流区块链技术的区别,重点介绍hyperledger(Fabric)的技术框架、安装、部署以及账本记录技术细节:
一、首先看看Fabric的架构:
Fabric 最新版本为0.6,架构见下图,1.0版计划在2017年1Q发布,架构会有比较大的变化。
这里写图片描述

说明:
a. 主要有三大组件构成:区块链服务组件(Blockchain)、链码服务组件(Chaincode)和成员权限组件(Membership);
b.Blockchain Services
Blockchain services才是真正的账本服务,采用HTTP/2上的P2P协议来管理。它采用哈希算法来维护账本的记录。由于是分布式账本,它支持各种共识算法,比如PBFT。
c.Chaincode Services
Chaincode services 会提供一种安全且轻量级的沙盒运行模式,来在VP节点上执行chaincode逻辑。这里使用Container环境,里面的base镜像都是经过签名验证的安全镜像,包括OS层和开发chaincode的语言、runtime和SDK层,目前支持Go、Jave和Nodejs开发语言。
d.Membership Services
简单讲就是个管理节点,类似于CA认证功能,对用户进行授权和认证,确保链上的交易不被非法获取。比如公钥加密,私钥解密就靠它来完成了,没有它的话,整个交易就是裸奔,其他用户可以知道谁和谁做了什么交易。另外还有审计功能。
其他组件:
e.Events
在blockchain网络里,VP节点和chaincode会发送events来触发一些监听动作。比如chaincode是用户代码,它可以产生用户事件。
f.API 和 CLI
提供REST API,允许注册用户、查询blockchain和发送transactions。一些针对chaincode的API,可以用来执行transactions和查询交易结果。对于开发者,可以通过CLI快速去测试chaincode,或者去查询交易状态。
二、看看主流区块链各自的特征与区别
主要对Bitcoin,Hyperledger,Ethereum和Ripple4大目前主流技术进行比较:
这里写图片描述
三、Fabric 环境部署与搭建
参见《自己动手部署区块链-hyperledger/fabric-02》

阅读更多

更多精彩内容