区块链Fabric技术在托管业务中的运用初探

什么是Fabric技术

HyperLedger是IBM、Intel等多家公司正开展的一个区块链项目,包含了Fabric、Iroha等多项技术,其中最为活跃的是Fabric。

在"开源中国"网站,对Fabric的介绍如下:

HyperLedger Fabirc是一个开源的区块链实现,以企业级的安全机制和membership机制为特色,简单来说,Fabric之于区块链,很可能正如Hadoop之于大数据。

开源项目可以直接从代码来进一步理解,代码中提供的Demo不多,比较典型的是这个:chaincode_example2

总体来说代码并不复杂,具体不再展开,简述下这个Demo的功能:

chaincode_example02 主要执行三个核心函数,init、invoke、query。

init函数在起始过程中初始化两个账户A,B,并且在A,B账户上发行一定数量的资产。

invoke函数在A、B上进行转账。

query函数查询A、B函数上的账户余额。

Fabric的具体功能

下面具体描述下各个功能:

初始部署

这是一个无中心的分布式系统,会同时在银行和客户来进行部署并建立点对点的联系。

Init

主要作用是建立账户,第一步是银行和客户在本地节点建立账户。第二步是会把账户会自动传送到全部节点上。需要注意的是在技术上讲,账户只是一个数据的容器而已,可以类比Oracle里的表。

Invoke和Query

作用是向账户中添加和查询数据。Invoke的作用是当在本地账户中装入数据后,会将数据自动传输到全部节点上,如下图所示。从Demo代码来看,invoke的是二进制格式数据,也就是说并不限制数据的具体内容。

小结

我简单小结一下,Fabric从功能上主要作用如下:

  1. 提供分布式的部署方案。
  2. 自动将本地的数据操作(账户建立、数据插入等)自动传送到全部节点上。
  3. 提供数据查询,并确保数据的准确性和安全性。

    我理解这是一个数据交互层的解决方案。

托管业务中的应用

从Fabric的介绍里我提取了三个关键词:数据交互、分布式、安全。

我们从数据交互出发,托管人的数据交互,主要对象包括客户、交易所/登记公司、境外合作机构。其中托管人目前并不能左右交易所/登记公司的系统建设,所以暂时排除。对于银行业务来说,这是个统一的要求都需要的。

再来看分布式这个关键字,限制是需要在客户方部署程序,托管业务是对公业务,无论是客户还是合作机构都符合这个要求。

所以Fabric的应用场景是在于客户以及境外合作机构的数据交互。下面对这两个领域业内已经有的解决方案进行一下比较。

与深圳通直连和SWIFT的比较

这是目前托管业内最主流的数据交换方式,支持了实时消息交换(交易、对账等)以及文件交换两种方式。

Fabric 深圳通直连 SWIFT
数据支持 二进制消息 格式化消息/文件 格式化消息
传输性能 低(从现有应用看) 低(按流量收费)
安全保障 软件算法 加密网络 加密网络
部署成本 低(基于互联网) 高(需开通网络专线) 高(需开通专用网络)
开发成本 低(可仅关注业务逻辑) 中(需考虑较多技术因素) 低(可仅关注业务逻辑)

总体而言,Fabric部署和开发成本较低,但目前看性能偏弱。

这里想额外提一下前几天看到新闻说SWIFT组织正在推进区块链技术的运用,应该也是有了危机感。

小结

从现有的信息掌握来看,Fabric对于托管业务来说,总体上讲是一项改进型技术而非颠覆型技术。个人认为,相比现有的深圳通直连以及SWIFT,其最大的优势是在由于可基于互联网部署,推广运用的速度可以得到大大的加快,是一个更适合目前这个高速变化时代的技术。虽然本文只是针对托管业务,但其应用远不止此,舞台广阔。

区块链Fabric技术在托管业务中的运用初探的更多相关文章

  1. 区块链学习笔记:D02 区块链的技术发展历史和趋势

    对于区块链的技术发展历史,其实在我的印象中也就对比特币有所了解,也听过什么火币之类的玩意,但是具体是什么.怎么运作的就不清楚了... 这次的内容首先是讲解了区块链的技术演进,一张图一目了然,虽然里面涉 ...

  2. 区块链学习笔记:DAY01 区块链的技术原理

    其实很早之前就听过区块链,也看过有关区块链的介绍,那个时候的理解主要还是一句话:分布式记账 然后开始关注比特币,听了有几年了,对于其来历.用途其实一直都是一知半解. 这次的课算是第一次以一个学员的身份 ...

  3. 区块链Fabric 交易流程

    1. 提交交易预案 1)应用端首先构建交易的预案,预案的作用是调用通道中的链码来读取或者写入账本的数据.应用端使用 Fabric 的 SDK 打包交易预案,并使用用户的私钥对预案进行签名. 应用打包完 ...

  4. 看得懂的区块链,看不清的ICO人心

    比特币又开始下跌了,是狂欢尽头还是又一波调整,无从得知,背后的乱象会让监管者继续心烦,而这乱象对我来说,有时候会有些心寒. 你说我怎么可能想到,我一个写程序的人,突然有一天会发现,朋友圈里有一些搞技术 ...

  5. 看得懂的区块链,看不清的ICO人心【转】

    比特币又开始下跌了,是狂欢尽头还是又一波调整,无从得知,背后的乱象会让监管者继续心烦,而这乱象对我来说,有时候会有些心寒. 你说我怎么可能想到,我一个写程序的人,突然有一天会发现,朋友圈里有一些搞技术 ...

  6. 如何用区块链技术解决信任问题?Fabric 架构深度解读

    阿里妹导读:区块链技术,随着比特币的兴起而为大家所知.但是具体到技术本身,大家相对熟悉的几个词可能是“数据不可篡改”.“公开链”.“分布式数据”.“共识机制”等. 这篇文章将抛砖引玉,通过深度解读Hy ...

  7. 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1

    摘要: 全球开源区块链领域影响最为广泛的Hyperledger Fabric日前宣布了1.1版本的正式发布,带来了一系列丰富的新功能以及在安全性.性能与扩展性等方面的显著提升.阿里云容器服务区块链解决 ...

  8. HyperLedger Fabric 1.4 区块链开发平台(4.1)

    目前区块链开发平台分“公有链平台”和“联盟链系统”两类,“公有链平台”主要以以太坊为主的平台,可以在该类平台上进行代币的发行和根据各种模块搭建应用:“联盟链系统”主要以超级账本为主的开源系统,该类开源 ...

  9. 区块链开源实现hyperledger fabric架构详解

    hyperledger fabric是区块链中联盟链的优秀实现,主要代码由IBM.Intel.各大银行等贡献,目前v1.1版的kafka共识方式可达到1000/s次的吞吐量.本文中我们依次讨论:区块链 ...

随机推荐

  1. nginx 安装启动

    [root@localhost ~]# wget http://nginx.org/download/nginx-0.7.67.tar.gz --2010-09-24 14:48:12-- http: ...

  2. asp.net打印网页后自动关闭网页【无需插件】

    项目遇需要网页加载自动打印网页后需要自动关闭该网页,但是百度了好久发现都是需要插件什么的 于是就自己摸索摸索,用js弄了个定时器,意外的发现,当打印设置窗口弹出后,定时器就暂停了 不管你点击取消或者打 ...

  3. TOGAF架构内容框架之架构制品(上)

    TOGAF架构内容框架之架构制品(上) 4. 架构制品(Architectural Artifacts) 架构制品是针对某个系统或解决方案的模型描述,与架构交付物和构建块相比,架构制品既不是架构开发方 ...

  4. hdu1263 水果(结构体排序)

    Problem Description 夏天来了~~好开心啊,呵呵,好多好多水果~~ Joe经营着一个不大的水果店.他认为生存之道就是经营最受顾客欢迎的水果.现在他想要一份水果销售情况的明细表,这样J ...

  5. POJ 3342 - Party at Hali-Bula 树型DP+最优解唯一性判断

    好久没写树型dp了...以前都是先找到叶子节点.用队列维护来做的...这次学着vector动态数组+DFS回朔的方法..感觉思路更加的清晰... 关于题目的第一问...能邀请到的最多人数..so ea ...

  6. Linux 内核源码中likely()和unlikely()

    ikely()与unlikely()在2.6内核中,随处可见,那为什么要用它们?它们之间有什么区别呢? 首先明确: if (likely(value))等价于if (value)if (likely( ...

  7. java foreach实现原理

    在平时Java程序中,应用比较多的就是对Collection集合类的foreach遍历,foreach之所以能工作,是因为这些集合类都实现了Iterable接口,该接口中定义了Iterator迭代器的 ...

  8. Xamarin原生跨平台概述(精简概述,命中要害。PS:无图)

    Xamarin原生跨平台:原生界面.原生性能.原生API(与H5比较): 1.C#可以访问Andrid.IOS原生API,也可以调用C#系统类型,如Syetem,System.IO;2.原理:基于Mo ...

  9. Swift3.0服务端开发(四) MySQL数据库的连接与操作

    本篇博客我们来聊聊MySQL数据库的连接与操作.如果你本地没有MySQL数据库的话,需要你先安装MySQL数据库.在Mac OS中使用brew包管理器进行MySQL的安装是及其方便的.安装MySQL的 ...

  10. ELK采集之nginx 之高德地图出城市IP分布图

    1.采用拓扑: 角色扮演: Agent:采用logstash,IP:192.168.10.7 Redis队列: IP:192.168.10.100 Indexer:logstash,IP:192.16 ...