热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[置顶]区块链(三)--Bitcoin、Ethereum、HyperledgerFabric

前面两篇我们简单的介绍了一下Bitcoin和Ethereum,接下来就是最后一篇了–HyperledgerFabric(超级账本,以下简称Fabric)。这个超级账本和Bitcoi

前面两篇我们简单的介绍了一下Bitcoin和Ethereum,接下来就是最后一篇了–Hyperledger Fabric(超级账本,以下简称Fabric)。
这个超级账本和Bitcoin和Ehtereum不一样,Bitcoin侧重的是金融交易而Ethereum侧重的是公有平台,Fabric主打概念是商用区块链,主要目的是要让区块链技术落地,我们废话少说,直接来干的。

============================
1>>区块链技术落地
我说过区块链技术和物联网有点类似,虽然炒的火热但是拿不出什么成功的例子来。有人说不对啊,不是有Bitcoin和Ethereum么?其实它们只是成功的范本,并不是成功的实例,真正成功的实例是要和相关业务来结合的,就是所谓的应用落地。
现在区块链主要应用的区域就是数字金融方面,但并不是说它只能做这一件事情,不是每个公司都要做金融。
区块链可以分三种:公有链、联盟链、私有链。
Bitcoin和Ethereum都是典型的公有链,每个人都可以参与记录和挖矿,大家都是client只是各个节点的功能有所区别,而许多真实的应用场景中并不需要每个人都参与进来。
比如说我就是想用它做一个版权控制—几个大型的唱片公司合伙起来搭建一个业务平台,来记录我这个音乐的版权所有,这就是一个联盟链。它也没有必要搞很多个矿工节点,或者说它没必要采取POW的共识机制,因为这个东西就哥几个在用,当然激励机制还是可以保留的。其余的都是外围的用户(音乐人,歌手),你们肯定不需要记账,也不需要去参与什么统计之类的,同样的你所拥有的权限肯定没有公司管理者的高。
那么这个音乐版权联盟链(Music copyright Chains,简称MCC)必须要支持用户管理、权限管理、准入认证的功能,而这些在现有的公有链中是不存在的也不需要存在的,因为这些功能和去中心化的思想所违背。
私有链也是同样的问题,而真正的实际生产生活当中对于私有链和联盟链的需求要比公有链多很多。为什么?因为实际的应用当中绝大部分都是中心化的!
如何将区块链这个去中心化色彩浓厚的技术应用到中心化的场景中去?这是现有很多做区块链技术公司需要考虑的。Fabric就是针对商业化这一点来构建的,它是Linux 组织牵头,IBM研发的商用区块链品台。

2>>Fabric的特点
这里还是按照惯例甩给大家一条链接Fabric官方文档,它这个是全英文的,网上也有一些中文的介绍,大家可以结合着看。我这三篇文章主要讲的不是技术细节,而是各个平台的特性,这次我们就从节点类型来了解一下Fabric。

节点类型:Orderer、Peer、Client、fabric-Ca
先说一下这几个节点都是干什么的。
Orderer:区块链共识节点,主要作用就是完成交易同步和区块的生成,同时也保证区块链共识过程的安全性(安全性是由共识机制来保证的,目前Fabric自带的有三种共识机制:solo、kafka、PBFT)。
Peer:服务节点,这里所谓的服务是相对于外围的应用而言,主要分为两种,Endorser节点和Committer节点。Endorser节点主要是负责背书(提供交易合法性证明和权限验证),Committer节点负责记账。
Client:客户节点,这就是根据Fabric SDK开发的面向用户的终端。
fabric-Ca: 证书管理中心,通过证书(签名、加密、秘钥协商)来实现权限管理和加密通讯。

大家可以看出来Fabric的节点类型是要比Bitcoin和Ethereum更多,而且功能更细化。这主要是因为Fabric倡导模块化和可插拔的架构,鼓励大家DIY,其中Orderer里面的共识机制、fabric-Ca、包括Ledger(总账)的数据存储方式(ram、LevelDb)都是可以替换的。

它大概的架构就如下图:

这里写图片描述

Fabric自己的定位是商业链,主要是应用于联盟链和私有链,所以它将权限管理加入到了架构中。其次它将共识和记账的业务进行拆分,这也是一大特色之一,它可以做到一组共识服务节点同时支持多种业务场景(这个以后我们仔细讲解)。
好,Fabric我们就先讲这些,后续我还会继续深入讲解(深入到代码层面)Fabric,有兴趣的可以持续关注。


推荐阅读
  • 如果说以比特币为代表的货币区块链技术为1.0,以以太坊为代表的合同区块链技术为2.0,那么实现了完备的权限控制和安全保障的Hyperledger项目毫无疑问代表着区块链技术3.0 ... [详细]
  • 【区块链之技术实战】区块链开源项目合集:Hello,BlockChain!
    在前面的文章中,咱们更偏向于金融方向的技术实践的案例和应用场景来谈区块链,但是往往有同学会问了,这些前沿技术是不是离我们太远了࿱ ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 周鸿祎火力全开
    “在这个IoT时代,只是孤立地搞大数据,孤立地搞云,或谈AI,或做一个智能硬件,我觉得都是不完备的,必须将这几项技术综合运用起来,才是一个真正的IoT时代,也是IoT真正的春天。” ... [详细]
  • 朱晔的互联网架构实践心得S1E7:三十种架构设计模式(上)【下载本文PDF进行阅读】设计模式是前人通过大量的实践总结出来的一些经验总结和最佳实践。在经过多年的软件开发实践之后,回过头 ... [详细]
  • 博客_2018年博客总结
    本文由编程笔记#小编为大家整理,主要介绍了2018年博客总结相关的知识,希望对你有一定的参考价值。前言     ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了Swarm挖矿项目的发行机构有哪些组成?如何看待BZZ币未来的价值?相关的知识,希望对你有一定的参考价值。据小编了解,S ... [详细]
  • Flow 生态案例学习 | Emerald City为Flow上DAO、教育和开发铺平道路
    原文链接:https://www.onflow.org/post/emer ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 代理模式的详细介绍及应用场景
    代理模式是一种在软件开发中常用的设计模式,通过在客户端和目标对象之间增加一层中间层,让代理对象代替目标对象进行访问,从而简化系统的复杂性。代理模式可以根据不同的使用目的分为远程代理、虚拟代理、Copy-on-Write代理、保护代理、防火墙代理、智能引用代理和Cache代理等几种。本文将详细介绍代理模式的原理和应用场景。 ... [详细]
  • 【回顾】聚焦DTCC | 巨杉数据库与您相约DTCC 数据库技术大会
    2018年5月10-12日,第九届中国数据库技术大会(DTCC2018)将以“数领先机•智赢未来”为主题,设定2大主会场及20个技术专场,邀请来自国内外互联网、金融、教育等行业百余 ... [详细]
  • ndk开发!34岁安卓开发大叔感慨,不吃透都对不起自己
    前言众所周知,移动开发已经来到了后半场,为了能够在众多开发者中脱颖而出,我们需要对某一个领域有深入地研究与心得,对于And ... [详细]
  • 《构建高可用Linux服务器(第4版)》已面市
    首先感谢读者朋友们一路支持和捧场,《构建高可用Linux服务器(第4版)》已面市,在当当、天猫华章和京东、互动出版网及亚马逊 ... [详细]
  • 自动化运维工具Ansible的部署步骤详解
    本文来源于http:sofar.blog.51cto.com3535721579894,主要是看到这样一篇好文章,想留下来供各位同僚一起分享。一、基础介绍1、简介ansible是新 ... [详细]
author-avatar
一介山夫1986_878
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有