『壹』 区块链的TPS
众所周知,比特币每秒只能进行大约7笔交易,以太坊稍微好一些,也就10-20笔。作为一个支付系统,这是远远远远不够的,经常也有人拿这点来说事,认为区块链效率低云云。
其实现在有很多的方案在试图解决TPS的问题,比如说fabric可以到数千的TPS,石墨烯系列可以到上万的TPS,比特币和以太坊的Off-chain方案理论上支持无限的TPS。那么是不是说这些新的技术才是区块链的未来呢?这个问题总是很难回答,要说一大堆共识,分布式,安全之类的事情。
过年期间看了BM的一个访谈,他提到了VB的一个理论,Scalability,Decentralization和Security在区块链中不能兼顾,类似于分布式系统里面的CAP理论。
我发现这个理论用来解释区块链技术真是简单粗暴而有效。
比如说:联盟链通过准入机制,控制了验证节点的数量,通过牺牲Decentralization提升了Scalability;石墨烯系列的DPOS,RippleNet的共识也是同理;比特币通过提高每个区块的容量,也可以达到扩容的目的,但结果是对矿机提出了更高的要求,形成自然的准入门槛,实际上也是牺牲了Decentralization;比特币和以太坊挖矿难度都可以调整,降低挖矿难度实际上也可以提升Scalability,但付出的代价是抗攻击能力下降了,牺牲的是Security。
但这个理论放在off-chain类型的方案上就失效了,比如说闪电网络(雷电网络),以太坊的plasma还有R3 Corda(这个比较特殊,直接把链都省了)。对off-chain方案原理感兴趣的童鞋移步这里, http://www.8btc.com/ln-rn-corda 。大致方案就是交易双方锁定准备金,把海量的交易打包以后上链,链上只保存交易的最终结果。通过智能合约和线下的多重签名机制,作弊方将会被罚没准备金。
Off-chain方案看上去很完美,保证Decentralization和Security,同时无限扩展。
但天下没有免费的午餐,我们以闪电网络为例(事实上plasma我还没完全理解😅),至少它有下面几个缺点:
1.闪电网络中锁定的比特币只能用在闪电网络中,只有交易通道关闭的时候才能真正成为链上承认的货币,这在理论上会出现类似银行挤兑的情况。如果大家对闪电网络失去信心,集中关闭通道,会拖垮比特币网络。但,这个似乎也不是很大的问题,只要闪电网络没有爆出什么漏洞,比如说签名算法被攻破之类的。
2.交易是在链外执行,链上无法验证提交的交易是否最新版本,虽然脚本保证了提交旧版本交易的攻击者有被罚没准备金的风险,但前提是要防御者监控网络并提交更新版本交易的证据。也就是说从原来比特币的被动防御(私钥不丢失就能保证资金安全)转变成主动防御。从这个角度看也算是降低了Security吧。这个主动防御的操作交给用户也不太现实,最终必然会衍生出一些服务公司,代替用户保存链外交易凭证,并防止作弊。某种意义上面又从“去中介化的信任”转变为需要信任中介了。这个角度看,似乎也是牺牲了Decentralization。
3.闪电网络中只有保存最终的资金状态保存,中间的交易细节全部被忽略,支持者认为是保护了用户的隐私,反对者认为是损失了交易数据。
4.因为通道需要准备金维持,不可能任意两个用户间都存在交易通道,用户之间转账可以通过中转的方法,最终很可能会有大资金形成中心化的中转节点。
『贰』 各区块链架构的横向比较
各区块链架构的横向比较
时常听人们谈起区块链,从 2009 年比特币诞生至今,各式各样的区块链系统或基于区块链的应用不断被开发出来,并被应用到大量的场景中,而区块链技术本身也在不停地变化和改进。
区块链又被称为分布式账本,与之对应的则是中心化账本,比如银行。与中心化账本不同的是,分布式账本依靠的是将账本数据冗余存储在所有参与节点中,来保证账本的安全性。简单地说,区块链会用到三种底层技术:点对点网络技术、密码学技术和分布式一致性算法。而通常,区块链系统还会“免费附赠”一种被称为智能合约的功能。智能合约虽然不是区块链系统的必要组成部分,但由于区块链天生所具备的去中心化特点,使它可以很好地为智能合约提供可信的计算环境。
为了适应不同场景的需求,区块链系统在实际应用的过程中往往会需要进行各种改造,以满足特定业务的要求,比如身份认证、共识机制、密钥管理、交易频次、响应时间、隐私保护、监管要求等。而实际应用区块链系统的公司往往没有进行这种改造的能力,于是市场上慢慢出现了一些用于定制专用区块链系统的框架,采用这些框架就可以很方便地定制出适用于企业自身业务的区块链系统。
本文将对目前市场上几个典型的区块链框架进行横向对比,看看它们都有哪些特点,以及它们之间到底有哪些区别。为了保持对比的公正性,本文将只针对开源的区块链框架进行讨论。
各区块链架构的简单介绍
1、比特币
比特币(bitcoin)源自一名叫做中本聪(Satoshi Nakamoto)的人在 2008 年发表的一篇名为《比特币:一种点对点的电子现金系统》(Bitcoin: A Peer-to-PeerElectronic Cash System)的论文,文中描述了一种被他称为“比特币”的电子货币及其算法。在之后的几年里,比特币不断成长和成熟,而它的底层技术也逐渐被人们认识并抽象出来,这就是区块链技术。比特币作为区块链的鼻祖,在区块链的大家族中具有举足轻重的地位,基于比特币技术开发出的山寨币(altcoins)的数量有如天上繁星,数不胜数。
从论文中可以得知,中本聪设计比特币的目的,就是希望能够实现一种完全基于点对点网络的电子现金系统,使得在线支付能够直接由一方发起并支付给另外一方,中间不需要通过任何的中介机构。总结来说,他希望比特币的设计能够实现以下这些目标:
● 不需要中央机构就可以发行货币
● 不需要中介机构就可以支付
● 保持使用者的匿名性
● 交易无法被撤销
从电子现金系统的角度来看,以上这些目标在比特币中基本都得到了实现,但是依然有一些技术问题有待解决,比如延展性攻击、区块容量限制、区块分叉、扩展性等。
在应用场景方面,目前大量的数字货币项目都是基于比特币架构来设计的,此外还有一些比较实际的应用案例,比如彩色币、t? 等。
彩色币(coloredcoin),通过仔细跟踪一些特定比特币的来龙去脉,可以将它们与其他的比特币区分开来,这些特定的比特币就叫作彩色币。它们具有一些特殊的属性,从而具有与比特币面值无关的价值,利用彩色币的这种特性,使得开发者可以在比特币网络上创建其它的数字资产。彩色币本身就是比特币,存储和转移不需要第三方,可以利用已经存在的比特币的基础。
t? 是比特币区块链在金融领域的应用,是美国在线零售商 Overstock 推出的基于区块链的私有和公有股权交易平台。
2、以太坊
以太坊(ethereum) 的目标是提供一个带有图灵完备语言的区块链,用这种语言可以创建合约来编写任意状态转换功能,用户只要简单地用几行代码来实现逻辑,就能够创建一个基于区块链的应用程序,并应用于货币以外的场景。
以太坊的设计思想是不直接“支持”任何应用,但图灵完备的编程语言意味着理论上任意的合约逻辑和任何类型的应用都可以被创建出来。总结来说,以太坊在比特币的设计目标之外,还需要实现以下几个目标:
● 图灵完备的合约语言
● 内置的持久化状态存储
目前基于以太坊的合约项目已达到数百个,比较有名的有 Augur、TheDAO、Digix、FirstBlood 等。
Augur 是一个去中心化的预测市场平台,基于以太坊区块链技术。用户可以用数字货币进行预测和下注,依靠群众的智慧来预判事件的发展结果,可以有效地消除对手方风险和服务器的中心化风险。
限于篇幅,基于以太坊智能合约平台的项目就不多介绍了。基于以太坊的代码进行改造的区块链项目也有不少,但几乎都是闭源项目,只能依靠一些公开的特性来推断,所以就不在本文展开讨论了。
3、Fabric
Fabric 是由 IBM 和 DAH 主导开发的一个区块链框架,是超级帐本的项目成员之一。它的功能与以太坊类似,也是一个分布式的智能合约平台。但与以太坊和比特币不同的是,它从一开始就是一个框架,而不是一个公有链,也没有内置的代币(token)。
超级账本(hyperledger)是 Linux 基金会于 2015 年发起的推进区块链技术和标准的开源项目,加入成员包括:荷兰银行(ABN AMRO)、埃森哲(Accenture)等十几个不同利益体,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程。
作为一个区块链框架,Fabric 采用了松耦合的设计,将共识机制、身份验证等组件模块化,使之在应用过程中可以方便地替换成自定义的模块。除此之外,Fabric 还采用了容器技术,将智能合约代码(chaincode)放在 docker 中运行,从而使得智能合约可以用几乎任意的高级语言来编写。
以下是 Fabric 的一些设计目标:
● 模块化设计,组件可替换
● 运行于 docker 的智能合约
目前已经有不少采用 Fabric 架构进行开发的概念验证(POC)项目在实施过程中,其中不乏一些金融机构做出的尝试,不过由于项目刚刚起步,还没有比较成熟的落地应用。
4、DNA
DNA(Distributed Networks Architecture,分布式网络架构),是由总部位于上海的区块链创业公司“分布科技”开发的区块链架构,可以同时支持公有链、联盟链、私有链等不同应用类型和场景,并快速与业务系统集成。
与以太坊、Fabric不同的是,DNA 在系统底层实现了对多种数字资产的支持,用户可以直接在链上创建自己的资产类型,并用智能合约来控制它的发行逻辑。对于绝大部分的区块链应用场景,数字资产是必不可少的,而为每一种数字资产都开发一套基于智能合约的转账、发行逻辑是非常浪费且低效的。因此,由区块链底层提供直接的数字资产功能是十分必要的。而对于那些完全不需要数字资产的应用场景,同样可以基于 DNA 提供的智能合约架构来编写任意的自定义逻辑来实现。
DNA 的设计目标主要有以下几点:
● 多种数字资产的底层支持
● 图灵完备的智能合约和状态持久化
● 跨链互操作性
● 交易的最终性
目前已有不少金融机构采用 DNA 架构来进行区块链概念验证产品的开发。除此之外,还有一些已经落地的区块链项目,如小蚁区块链、法链等。
小蚁(antshares)是一个定位于资产数字化的公有链,将实体世界的资产和权益进行数字化,通过点对点网络进行登记发行、转让交易、清算交割等金融业务的去中心化网络协议。它采用社区化开发的模式,在架构上与 DNA 保持一致,从而可以与任何基于DNA 的区块链系统发生跨链互操作。
法链是全球第一个大规模商用的法律存证区块链,一个底层基于 DNA区块链技术,并由多个机构参与建立和运营的证据记录和保存系统。该系统没有中心控制点,且数据一旦录入,单个机构或节点无法篡改,从而满足司法存证的要求。
5、Corda
Corda 是由一家总部位于纽约的区块链创业公司 R3CEV 开发的,由其发起的 R3区块链联盟,至今已吸引了数十家巨头银行的参与,其中包括富国银行、美国银行、纽约梅隆银行、花旗银行、德国商业银行、德意志银行、汇丰银行、三菱 UFJ 金融集团、摩根士丹利、澳大利亚国民银行、加拿大皇家银行、瑞典北欧斯安银行(SEB)、法国兴业银行等。
从 R3 成员的组成上也可以看出,Corda 是一款专门用于银行与银行间业务的区块链架构。尽管 R3 自己声称 Corda 不是区块链,但从各项特征来看,它具备区块链的一些特性。
技术对比
1、数字资产
接下来,将对前文中提到的这些区块链框架进行一系列的技术对比,并从多个维度展开介绍它们的区别与相似之处。
区块链的内置代币通常是一种经济激励模型和防止垃圾交易的手段。比特币天生就有且只有一种内置代币,所以在比特币系统中所有的“交易”本质上都是转账行为,除非通过外部的协议层来给比特币增加额外的数字资产。
以太坊和 DNA 具有内置代币,它们的作用除了以上提到的经济激励和防止垃圾交易之外,还具有为系统内置功能提供一个收费的渠道。比如以太坊的智能合约运行需要消耗 GAS,而 DNA 的数字资产创建也需要消耗一定的代币。
以太坊和 Fabric 没有内置的多种数字资产支持,而是通过智能合约来实现相应的功能。这种方式的好处在于,系统设计可以做到非常简洁,而且资产的行为可以任意指定,自由度极高。然而这样的设计也会带来一系列的负面影响,比如所有的资产创建者不得不自己编写重复的业务逻辑,而用户也没有办法通过统一的方式去操作自己的资产。
相比之下,DNA 和 Corda 采用了在底层支持多种数字资产的方式,让资产创建者可以方便地创建自己的资产类型,而用户也可以在同一个客户端中管理所有的资产。对于逻辑更加复杂一点的业务场景来说,他们同样可以利用智能合约来强化资产的功能,或者创建一种与资产无关的业务逻辑。
2、账户系统
UTXO(Unspent Transaction Output)是这样一种机制:每一枚数字货币都会被登记在一个账户的所有权之下,一枚数字货币有两种状态,即要么还没有被花费,要么已经被花费。当需要使用一枚数字货币的时候,就将它的状态标记为已经花费,并创造一枚新的与之等额的数字货币,将它的所有权登记到新的账户之下。在这个过程中,被标记为已花费的数字货币就被称为交易的输入,而创造出来的新的数字货币被称为交易的输出,在一笔交易中,可以包含多个输入和多个输出,但是输入之和与输出之和必须相等。要计算一个账户的余额时,只要将所有登记在该账户下的数字货币的面额相加即可得出。
比特币和 Corda 就采用了 UTXO 这样一种账户机制,而以太坊则采用了更加直观的余额机制:每个账户有一个状态,状态中直接记录了账户当前的余额,转账的逻辑就是从一个账户中减去一部分余额,并在另一个账户中加上相应的余额,减去的部分和加上的部分必须相等。DNA 在账户机制上同时兼容这两种模式。
那么 UTXO 模式和余额模式,究竟有什么优缺点呢?UTXO 最大的好处就是,基于 UTXO 的交易可以并行验证且任意排序,因为所有的 UTXO 之间都是没有关联的,这对区块链未来的伸缩性是有很大帮助的,而基于余额的设计就没有这个优势了;反过来,余额设计的优点是设计思想非常简洁和直觉化,便于程序实现,特别是在智能合约中,要处理 UTXO 的状态是非常困难的。这也是为什么以智能合约为主要功能的以太坊选择余额设计的原因,而比特币、OnchainDNA、Corda 这些以数字资产为核心的架构则更倾向于 UTXO 设计。
关于身份认证,比特币和以太坊基本没有身份认证的设计,原因很简单,因为这两者的设计思想都是强调隐私和匿名,而反对监管和中心化,而身份认证就势必要引入一些中心或者弱化的中心机构。Fabric、DNA 和 Corda 不约而同地选择了采用数字证书来对用户身份进行认证,原因在于这三者都有应用于现有金融系统的设计目标,而金融系统必然要考虑合规化并接受监管,此外现有的金融系统已经大范围地采用数字证书方案,这样便可以和区块链系统快速集成。
『叁』 区块链的模型架构是什么
目前市场上区块链培训课程跨度很大,课程内容和授课形式也是五花八门。
区块链
1、编程基础入门
计算机软硬件基础、字符集及字符编码、HTMLCSS(含HTML5CSS3)、ECMABOMDOM、jQuery、node.js、Ajax及Express
2、Go编程语言
Go基本语法、流程控制、函数及数据、错误处理、Go面向对象编程、Go并发编程、Go网络编程、Go安全编程、Go进阶编程(goroutine、channel)、数据库MySQL、LevelDB
3、区块链1.0——比特币Bitcoin
比特币原理、比特币系统架构、密码算法(Go语言实现)、共识算法(Go语言实现)、比特币交易原理及交易脚本、比特币RPC编程(node.js实现)、比特敏贺腊币源码解析
4、区块链2.0——以太坊Ethereum
以太坊工作原理及基础架构、以太坊基本概念(账户、交易、Gas)、以太坊钱包Mist及Metamask、以太坊交易、ERC20标准Token开发部署、以桥滑太坊开发IDE——remix-ide、智能合约与Solidity、Solidity部署、备份及调用、框架技术:truffle及web3、DApp开发实战、Geth
5、区块链3.0——超级账本之Fabric
超级账本项目介绍、Fabric部署和使用拍绝、Fabric配置管理、Fabric架构设计、Fabric CA应用与配置、应用开发实战。
『肆』 比特币、以太坊与IPFS挖矿的区别
比特币和以太坊是pow算力挖矿。ipfs是存储即挖矿,新型模式。
『伍』 多家银行设立金融科技公司,金融科技领域会发生什么变化你怎么看
2020年,对每个人都是非常艰辛的一年,也是金融 科技 沧海桑田的一年——线上金融进入强监管时代、金融 科技 监管框架雏形已现、银行掀起分布式核心建设的浪潮、区块链王者之相毕现、5G成为金融业门口的“野蛮人”。
让我们回首2020年,总结金融 科技 的高光和落寞,并由此展望金融 科技 的2021年。
线上金融,强监管降临
2020年开始,互联网贷款、供应链金融助贷、网络小贷、互联网保险、理财子公司的理财代销业务都受到严格限制。
2020年7月17日,中国银保监会发布了《商业银行互联网贷款管理暂行办法》,明确了 商业银行不得以任何形式为无放贷业务资质的合作机构提供资金用于发放贷款,不得与无放贷业务资质的合作机构共同出资发放贷款。 互联网贷款授信审批、合同签订等核心风控环节,应当由商业银行独立有效开展。商业银行对于互联网贷款借款人的身份核验,不得全权委托合作机构办理。
2020年9月23日,中国人民银行、工业和信息化部、司法部、商务部、国资委、市场监管总局、银保监会、外汇局联合发布《关于规范发展供应链金融支持供应链产业链稳定循环和优化升级的意见》,明确规定,不得无牌或超出牌照载明的业务范围开展金融业务;各类第三方供应链平台公司不得以供应链金融的名义变相开展金融业务。 未来无经营许可的供应链助贷将会受到打击。
2020年11月2日,中国银保监会、中国人民银行共同发布了《网络小额贷款业务管理暂行办法(征求意见稿)》, 叫停了网络小贷的跨区业务, 要求和流量平台注册地统一,明确了网络小贷公司在联合贷款中出资比例不得低于30%,明确了100万的单户贷款余额上限,限制了控股跨区域网络小贷公司的数量,提升了资本金的要求。
2020年12月14日,银保监会发布实施《互联网保险业务监管办法》,明确规定 非保险机构不得开展互联网保险业务。 互联网保险业务包括:一是提供保险产品咨询服务;二是比较保险产品、保费试算、报价比价;三是为投保人设计投保方案;四是代办投保手续;五是代收保费。与此形成鲜明对比的是,2020年5月2日,银保监会印发《关于推进财产保险业务线上化发展的指导意见》,要求 到2022年,车险、农险、意外险、短期 健康 险、家财险等业务领域线上化率达到80%以上。
2020年12月24日,华东地区某银保监局下发《关于进一步规范辖内存款市场若干问题的通知》。通知显示,该局明确要求辖内各类型银行机构不得通过第三方互联网平台或与其他第三方中介合作的方式吸收存款,已经开展合作的,即日起下架相关存款产品,终止合作。 第三方互联网平台未来将不能做存款业务,银行机构也要未雨绸缪,开拓互联网平台之外的存款渠道。
2020年12月25日,银保监会发布《商业银行理财子公司理财产品销售管理暂行办法(征求意见稿)》,明确规定, 未经金融监管部门许可,任何非金融机构和个人不得直接和变相代理销售理财产品。 那么,那些未经金融监管部门许可的互联网平台、产业链平台,是不能对外销售理财产品的。
线上金融强监管的大环境下,监管鼓励金融机构发展自有线上渠道,但是外部线上渠道将一片萧条。持牌金融机构是该“断、舍、离”,放弃只提供资金、依赖互联网渠道快速上量的打法了。撸起袖子,做笨功夫,自建特色场景,融入到产业链中去,“扎硬寨,打笨仗”,打造自有品牌金融产品,为自己的金融消费者提供本土化、差异化、可以持续促进粘性的场景服务,才是正途。未来也许会出现一种趋势,金融机构开始发展非金融业务了,银行的人开始给农民卖菜了,保险的人开始做 健康 科技 了,支付的开始做餐饮外卖了,未来金融机构招聘,可能不需要懂金融学的了,懂农业、物流、生物 科技 等的,可能更吃香。
金融 科技 ,监管框架初现
2020年是金融 科技 监管措施密集出台的一年,金融 科技 发展指标、金融 科技 监管沙盒、国家金融 科技 认证中心、国家金融 科技 风险监测中心都在这一年内尘埃落定。未来,金融 科技 产品要通过认证,要通过监管沙盒充分测试,并在风险检测中心的监测下,才能为金融机构提供服务,可以说并不容易。
2020年10月,中国人民银行发布《金融 科技 发展指标》标准,该标准从战略规划、组织架构、金融 科技 资金和人才投入、线上智能服务情况、风控能力、专利、软件著作权、金融 科技 应用和输出等方面对金融 科技 发展指标进行了详细阐述,对统计和量化考核金融机构的金融 科技 成果意义深远。
2020年人民银行共公布了9地64个金融 科技 监管沙盒项目。北京侧重于AI和区块链,深圳、雄安新区、苏州重点是数字人民币的试点;重庆侧重于风控技术对于小微金融 科技 和农村金融促进;上海侧重于基于区块链和大数据的产业链金融风控技术促进金融和产业链和数字政务的融合;杭州侧重于大数据、区块链和分布式账本技术;广州侧重于跨境金融服务安全和小微金融风控,这是因为广东外贸金融服务较多,制造业的小微也较多。
这9个地区基本上是一线城市,也是中国经济最为发达和活跃的地方,在这些地方做金融 科技 监管沙盒,有助于结合当地经济的产业链和 社会 生态,有助于做促进金融更好地融合实体经济的良好实验。另外,这些地方都有非常多的金融 科技 企业,可以为金融 科技 监管沙盒提供更多的技术支撑和实验样本。进一步试点,一要考虑小微企业客户的获得感,感知强不强作为评价依据之一,不能只是金融机构和金融 科技 企业试点,要了解客户对于试点的感觉;二要促进金融和场景、产业链的融合,这一直是金融行业的大问题,监管可以鼓励金融机构通过物联网、生物识别和AI等金融 科技 加深和产业链的融合,并促进融合的深度和广度,促进金融真正的覆盖产业链金融的全链条。
2020年10月13日,重庆国家金融 科技 认证中心有限责任公司在重庆成立,该中心将依托国家统一推行的金融 科技 产品认证体系,打造金融 科技 认证核心竞争力,建设一流的权威专业化认证机构,成为我国金融 科技 多元共治体系的中坚力量。
2020年10月23日,在2020金融街论坛年会政策发布专场活动上,中国人民银行金融研究所副所长莫万贵表示,央行将在京设立国家金融 科技 风险监控中心,未来金融 科技 风险将纳入全国的统一监控。
从上面这些信息来看,金融 科技 的监管框架未来将非常严密,和贷款的分类分级监控是一样的,都要到微观级别。
金融云,分布式核心建设浪潮
中国银保监会发布的《中国银行业信息 科技 “十三五”发展规划监管指导意见(征求意见稿)》(下简称《征求意见稿》),于2016年7月15日公开征求意见。《征求意见稿》指出:积极开展云计算架构规划,主动和稳步实施架构迁移。《征求意见稿》要求: 到“十三五”末期,面向互联网场景的重要信息系统全部迁移至云计算架构平台,其他系统迁移比例不低于60%。
除了上面的《征求意见稿》,2020年央行重新发布了3个金融云相关的标准,给金融云的建设提供了明确和具体的指引。2020年10月16日,中国人民银行发布《云计算技术金融应用规范技术架构》(JR/T0166-2020)、《云计算技术金融应用规范安全技术要求》(JR/T0167-2020)、《云计算技术金融应用规范容灾》(JR/T 0168-2020)等三项金融行业标准,结合金融云的运行机制与风险特性,从基本能力、网络安全、数据保护、运行环境安全、业务连续性保障等方面提出了有针对性的技术要求。
2020年是十三五的最后一年,金融机构建设金融云系统的压力倍增。各家银行建设金融云大多选择分布式核心系统作为切入点,但是具体思路各不相同:
一些成立时间较长的银行,不会一下子就将全行的业务都转移到分布式系统上来,而是从财富管理、信用卡业务和互联网渠道等方面为切入点,建设分布式数据库系统,这样影响较小,可以逐步试点,逐步推广。
工商银行对公(法人)理财系统2020年完成了从大型主机到基于分布式数据库的分布式架构的改造。
光大银行2020年自主研发POIN微服务系统,推广容器云平台,全行应用系统上云率87.5%,光大银行还基于 TiDB上线了面向新一代财富管理平台的分布式数据库系统。
中信银行和中兴通讯联合研发的分布式数据库GoldenDB上线中信银行信用卡新核心,支撑8000万信用卡用户,日均交易金额90亿人民币,通过了4500 TPS的压力测试。
最近成立的民营银行,因为 历史 包袱小,可以一上来就高起点建设线上线下一体化的分布式核心系统,为基于金融 科技 进行线上存贷业务展业和线下线上融合会员发展提供强大支撑。
江苏第一家民营银行-苏宁银行,定位于 科技 驱动的O2O银行,历时2年打造, 2020年上线了自主研发的行业首个线上线下一体化分布式核心系统“云开”。“云开”基于“苏宁云”的分布式架构,将银行线上线下核心业务处理有效整合到一套系统中,解决了传统银行线上线下双核心带来的“用户数据割裂”、“研发运维成本高”、“不支持高并发交易”、“产品研发交付慢”等严重问题,系统已承载苏宁银行2500万用户和300万账户的日常处理,每天交易笔数150万。
但金融机构真的需要分布式架构么?如果只是传统业务,其实传统数据库就已经足够。一些银行平时的TPS不会达到几千甚至上万的规模。但是银行做互联网转型总是要做一些事情,如果能顺带降低IT成本,提升业务需求响应的敏捷度,优化系统架构,那就是有好处的。
目前金融行业使用的还是较低技术层级的分布式数据库、中间件、虚拟化等云计算的能力,我们很多厂商更推崇的是集成别人的解决方案和开源代码,掌握和贡献核心原生技术的较少,缺乏在全球有影响力的云计算核心技术。
业界云计算领先的企业在核心技术上有了较大的突破。由NASA和 Rackspace公司发起的云计算开源项目-OpenStack 2020年发布了第21版的平台(代号Ussuri),包括支持裸金融硬件配置的Ironic、支持容器化部署的Kolla、支持容器间IPV6通信的Kunyr、支持边缘环境负载均衡的Octavia。2020年Red Hat公司发布了面向K8S、取代Docker的新容器运行时技术CRI-O,在容器市场掀起了新的浪潮。IBM基于IBM Z服务器的高可用服务、Promontory合规技术、OpenShift容器平台,发布了IBM金融服务公有云,Promontory在合规方面支持反洗钱、制裁、反腐败、隐私与数据保护、网络与信息安全、消费者保护等服务,非常契合金融机构的需求。苏宁金融 科技 也于最近发布了历时十年打造的移动端开发DevOps平台mPaaS,支持线上金融APP的快速搭建和生成,包括一套客户端原生框架和组件库:3大研发框架、20多个基础技术组件,30多个功能性组件;一个移动中台:提供研发、测试、发布、分析、运营全生命周期的支持;支持跨平台,可以实现开发一次多端投放,并支持多渠道的精准营销和运营。
区块链,王者之相毕现
区块链2020年技术进展朝向保护隐私和提升效率方面发展。比特币重点在以下三个方面提升隐私保护和智能合约能力,即保护隐私的聚合签名技术Schnorr签名,提升比特币隐私性的智能合约解决方案Taproot,可扩展比特币智能合约灵活性和扩展性的默克尔抽象语法树MAST。闪电网络开始出现多部份支付技术(multi-part payment),将发送的资金分割成较小的金额,通过闪电节点到达接收者,这已经有了TCP/IP和分布式金融的雏形,但是闪电网络也面临以太坊的DeFi体系WBTC的挑战。以太坊2.0(Ethereum 2.0, ETH2)2020年12月1日上线,以太坊2.0有两个重大升级,一是从PoW(Proofof Work,工作量证明)升级到PoS(Proof of Stake,权益证明),通过验证器和存入以太币来构建区块,可节约电力;二是部署分片链(Shard Chains),可以大幅度提升以太坊的吞吐量到10万TPS级别。Fabric 2.0实现了智能合约的去中心化管理,CouchDB增加了状态数据库缓存提升读取效率,用Alpine Linux来打包Docker映像降低空间占用。
区块链应用方面,迎来了几个里程碑:
比特币单价突破3.2万美元,比特币在加密货币市值的占比突破70%,在全球法币市值排行榜中排名第20,达到4990亿美元,以市值论已经成为全球第一大“金融机构”,超过了4800亿美元的VISA;
中国央行的数字人民币已经通过红包和零售支付的方式在深圳和苏州试点,支持离线钱包线下二维码支付、线下“碰一碰”支付和电商线上支付等多种支付方式;
单季度交易额达2470亿美元的PayPal公司宣布支持比特币交易;
新加坡最大的商业银行星展银行推出基于区块链技术的数字交易平台,提供数字资产代币化(非上市公司的股票、债券和私募基金支持的数字代币)、数字货币交易(比特币、以太坊、比特币现金、瑞波币和新加坡元、美元、港元、日元的互相兑换)和数字资产托管生态系统(数字资产加密密钥);
分布式应用DAPP,分布式市场DeMa都有了重量级的应用,比如海伯利安地图,等等。
区块链技术加速成熟和实用化,王者之相毕现,毫无疑问将成为未来数字世界的基石技术。区块链在构建分布式金融互联网、分布式市场、分布式应用方面进展非常迅速,未来很快就有比特币之外的杀手级应用。
5G,金融业门口的“野蛮人”
金融停留在移动互联网时代已经太久,移动金融APP目前已经让消费者审美疲劳。目前的场景金融也大多没什么新意,无外乎电子账户、贷款、结算等基本服务。5G,是可能会给金融服务带来较大变革的突变型技术,目前全球移动通信用户数为56亿,未来将有全新的5G金融形态,只不过目前还在萌芽。
5G的核心技术有频谱共享、载波聚合、大规模MIMO、固定无线接入、网络切片。5G数据传输速率最高可达10Gbit/s,用户体验速率达到100Mbit/s,比4G LTE快100倍。5G网络延迟极低,低于1毫秒,5G为30-70毫秒。5G支持超大网络容量,提供千亿设备的连接能力。网络切片可以实现网络资源的虚拟化。
5G消息,是基于GSMARCS标准,支持文本、图片、音视频等多媒体格式,支持个人和个人之间的交互消息,也支持行业客户与个人之间的交互消息。5G消息,可以和手机通讯录完美结合,可以基于运营商的海量实名信息,确保对个人身份的识别。5G消息是手机协议栈的一部分,和微信不一样,用户无需下载APP就可以使用5G消息。
5G目前在银行中的应用还比较浅层次。比如,建行主要在智能网点里应用5G,比如金融太空舱、智能家居、共享空间直播、客户成长互动、安防监控等。工行已经向部分客户试点推出5G消息服务,在短信页面就办理银行业务,涵盖投资理财、办卡、贷款、缴费、智能客服、网点预约等20余项应用场景。工行客户无需下载APP、打开微信就可以完成业务办理。民生银行重点通过5G提供APP端的服务语音导航,还提供财富讲堂、 财经 知识、子女教育、 健康 讲座、税务讲解等等生活网络式的内容服务,民生银行还通过5G提供账户信息即时通、大额转账、卡片激活、密码管理、资产证明开具等服务。
传统保险定损和理赔流程是比较繁琐的,虽然已经优化,但是从拍照片到联系理赔专员最快也要2个小时,车主要打7、8个电话才能完成理赔。众安推出了“马上赔”车险在线理赔,在一个视频通话里走完从报案、查勘、定损、交单、理算到核赔、结案全过程,最快可2分钟下款。平安好车主APP推出“信任赔”,只需车主将事故照片上传APP,车主就可驾车离开现场,在3分钟之内获得理赔款。
运营商是对5G生态控制最深的角色,而且现在很多运营商都有金融牌照和金融 科技 公司。5G是断代技术的典型代表,一种断代技术的崛起,一定会伴随着势力版图的重新划分。从目前来看,5G消息对微信的颠覆已经在路上,多媒体消息、社交、视频和直播已经完全不需要独立的APP,而且移动运营商掌握海量的实名用户的信息,5G时代客户也完全不需要银行APP就能办理金融业务。如果说过去的十年,是电商金融时代,那么未来的十年有可能是5G金融的时代。5G就是金融业门口的“野蛮人”。
展望2021年金融 科技 的模样
金融 科技 对金融行业形态的改变之快,会超出我们的想象。
纯线上风控将成为 历史 ,线下物联网技术将加速和线上风控融合,形成线上线下一体的风控体系,加速物理世界融合数字世界,现在的物联网动产质押、智能头盔尽调、卫星小微风控都是案例;在全球区块链社区的强大支撑之下,比特币、以太坊2.0、FABRIC等区块链的性能/隐私优化将坚定地进行下去,分布式金融传输技术将加速发展,和跨链/侧链等生态技术同步发展,将加速形成以互联网世界为基础的分布式金融互联网生态,精简一切金融中介和中间机构,让金融回归价值本源;5G将开始大规模取代现有的金融服务渠道如网页、APP、微信和小程序,也会让机器和人,乃至机器和机器之间的金融交互成为可能。
青山遮不住,毕竟东流去
这个变化从不同视角来看,肯定有不一样的答案,这里从 财经 的视角来回答。多家银行纷纷设立金融 科技 公司,明显可见“金融”+“ 科技 ”是一个未来的发展趋势。
这里先来明确下在我国“金融 科技 ”的实际内涵。具体来说就是,当前我国发展金融 科技 的侧重点主要是在“市场基础设施服务”的细分领域,更多是强调前沿各类技术对持牌合规金融业务的辅助、支持和优化作用,技术的运用始终是围绕“金融”的内在规律和监管要求来进行。
这次在金融 科技 领域,那么多银行的陆续进入,可见金融 科技 已被很多传统金融机构上升到战略层面的考量以及核心竞争力所在。而变化是不可避免的,要求这些传统银行必须在流程、产品、风控、运营、场景等多领域进行全方位提升,需要 科技 为其扩张边界。同时,当前互联网巨头还是把控着电商购物、社交运营等多重场景,银行想要单枪匹马杀出一条路相对比较困难,因而金融 科技 领域的跨行业、跨地域合作就自然产生,也会是今后很多中小银行走特色化、本地化的一条有效出路, 科技 干好 科技 的事,金融做好金融的事,相互链接,共同为客户提供开放式、体验式的金融服务。
在我看来,由于前几年互联网发展的弯道超车,我国数字技术是比较强的,目前在全球金融 科技 领域,是处于主导地位。但在实际的经济运行中,很多领域都没有得到金融 科技 充分的服务,这是目前存在的矛盾点。因此,银行这个代表着国家意志的金融机构的加入,能进一步催化金融 科技 行业的快速蜕变。
这是不可逆转的趋势,不是银行想这么做是时代推动着银行这么做:
一,互金公司给银行上了一课,金融还可以这么玩,成本更低,利润更好,银行以前只圈定服务优质客户以达到利润最大化,后面发现所谓优质客户以外的客户利润更大。
二,传统银行不管是几级支行还是社区银行,受地域限制在,其实成本都是很高,一方面监管一方面成本,和获利都是不成正比的,而互联网平台受众全国成本更低相对利润就更乐观了!
三,银行传统的营销模式在渐渐失效,以前电台,户外媒体都是非常有效的,但是现在越来越差,被迫转型被迫创新!
『陆』 BTC、ETH、EOS三大货币相比较 区别在哪里
众所周知,人们常用的手机是一直在不断进化的。从一开始只能打电话的大哥大演变成现今的智能手机,这就是它的一个成长过程。
而BTC就好比当初的“大哥大”,是开启币圈的老大,但始终只有打电话功能;ETH则是比特币的进化版——“小灵通”,升级过后的以太坊不仅可以打电话,也具备一些小游戏;EOS相当于第一代 iPhone,开始有一些更为高端的应用及上网等等。
从智能合约的运行上来讲,ETH是基于BTC进行改进的,EOS又是基于ETH改进的,那么ETH与EOS到底做了那些改进与优化呢?一同来梳理一下。
首先,要说到的肯定就是“大哥大”(比特币)。虽然比特币的“应用”非常少,但加密货币面纱却是由它掀开,并成功打开货币市场的,所以比特币是很有存在价值的。 当然,除了对货币本身感兴趣以外,更多人所关注的则是货币背后的区块链技术。
自区块链公布它去中心化的技术特点后,人们就开始好奇并想要将它应用到其它领域中。相较于区块链多变的技术,比特币本身的功能则非常单一,对于它的用户来说,BTC无非就是简单的挖矿、转账而已。
因此,基于比特币的本质,V神就弄出了2.0版本——拥有其它功能的“小灵通”(以太坊)。相对于比特币,以太坊是具备诸多优势的,就拿区块确认时间打比:比特币的平均确认时间是10分钟,而以太坊则可以做到十几秒。 显而易见,使用以太坊的交易速度会更快。
不过,以太坊虽然超越了比特币,但它同样也面临着两个问题。一:虽然以太坊已经将确认时间缩短至十几秒,但对于用户而言,依旧没有支付宝、微信的秒到性能方便。二:以太坊的交易手续费较高,尤其是遇到以太坊拥堵时,所需要支付的费用就更加“昂贵”。
这时,想要解决以太坊不足之处的EOS就诞生了。EOS的转账速度显然是更快的,它可以做到每秒 处理3500笔 交易 。同时,EOS交易手续费还相当于“免费”,所以EOS的可扩展性也比以太坊更强。
然而,虽然明面上以太坊是比特币升级版, EOS是以太坊升级版,但这也并不意味着以太坊就一定比比特币好,EOS就一定比以太坊好。
在区块链世界中,这三大货币都有着自己的优缺点,好比EOS虽然扩展性好,但去中心化却不比以太坊强,同样以太坊也没有比特币去中心化强。
譬如当代基于区块链发展的企业也是一样, 虽然新兴企业不断崛起,但不论是运用、性能还是发展前景,始终都无法超越ICIC(智联国际)。
『柒』 区块链公链开发很难吗国内有几家企业可以做
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
而这样的技术想要投入应用,最大的一个问题就是“不可能三角问题”
即无法同时达到可扩展性(Scalability)、去中心化(Decentralization)、安全(Security),三者只能得其二。
市场上目前存在的公链项目,大多难以大规模投入使用。
『捌』 主流区块链技术有哪些
本文试图对区块链有关技术流派和主流平台进行一个概览,作为学习区块链技术体系的导览,意在抛砖引玉,促进区块链开发社区的讨论与共识。区块链技术的流派未战先谋局,你想投入区块链开发这个领域,至少先要搞清楚现在有哪些玩家,各自的主张和实力如何。划分区块链技术流派并无一定之规,据我所见,或可有以下四种方式:第一是按照节点准入规则,划分为公有链、私有链和联盟链。公有链的代表自然是比特币和以太坊,私有链则以R3 Corda声名最盛,联盟链的代表作品是Hyperledger名下的Fabric。公有链注重匿名性与去中心化,而私有链及联盟链注重高效率,而且还往往设置了准入门槛。公有链、私有链与联盟链之间的这些不同都在技术中有所体现,比如私有链和联盟链假设节点数目不大,可以采用PBFT算法来形成共识。而公有链假设有大量且不断动态变化的节点网络,用PBFT效率太低,只能采用类似抽彩票的算法来确定意见领袖。这就意味着,私有链与联盟链很难变成公有链,而用公有链来作联盟链或私有链虽然容易,却也并非即插即用。此种差异,学者不可不察。第二是按照共享目标,划分为共享账本和共享状态机两派。比特币是典型的共享账本,而Chain和BigchainDB也应属此类,这几个区块链系统在各个节点之间共享一本总账,因此对接金融应用比较方便。另一大类区块链系统中,各个节点所共享的是可完成图灵完备计算的状态机,如以太坊、Fabric,它们都通过执行智能合约而改变共享状态机状态,进而达成种种复杂功能。第三是按照梅兰妮· 斯旺所描述的代际演进,将区块链系统分为1.0、2.0和3.0三代。其中1.0支撑去中心化交易和支付系统,2.0通过智能合约支撑行业应用,3.0支撑去中心化的社会体系。比特币和Chain应属于区块链1.0系统,而以太坊和Fabric是区块链2.0系统,目前尚无成功的区块链3.0系统出现,不成功的尝试倒是有那么一个,就是著名的The DAO。第四是按照核心数据结构,分为区块链和分布式总账两派。区块链这一派在系统中真的实现了一个区块的链作为核心数据结构,而分布式总账这一派,只是吸取了区块链的精神,并没有真用一条区块链作为核心数据结构,或者虽然暂时用了,但声明说吾项庄舞区块链,意在分布式总账耳,若假以时日,因缘际会,未尝不可取而代之也。主流区块链技术平台了解流派划分,仍是只能用来指点江山,吹牛论道,要动手,总要有个切入点。区块链货币据说已经有上千个了,但值得关注的技术平台大概只有数十个,而如果要进入区块链开发领域,打下一个好基础,练出一身好功夫,捞到几个好offer,则值得深入研究学习的平台,屈指可数。首先当然是比特币。比特币作为区块链的第一个也是目前为止最成功、最重要的样板工程,已经上线运行了八年多,本身没有发生任何严重的安全和运维事故,其稳定与强悍堪称当代软件系统典范。比特币Bitcoin Core是一个代码质量高、文档良好的开源软件,从学习区块链原理、掌握核心技术的角度来说,Bitcoin Core是最佳切入点,能够学到原汁原味的区块链技术。当然,Bitcoin Core是用C++写的,而且用了一些C++11和Boost库的机制,对学习者的C++水平提出了较高的要求。学习比特币平台开发还有一个优势,就是可以对接繁荣的比特币技术社区。目前围绕比特币进行改进和提升的人很多,人多力量就大,诸如隔离验证、闪电网络、侧链等比较新的想法和技术,都率先在比特币社区里落地。比如侧链技术的主要领导者Blockstream是由密码学货币元老Adam Back领衔的,而Blockstream是Bitcoin Core最大的贡献者之一,所以一些有关侧链的技术在比特币社区里讨论最充分。但比特币作为一个典型的区块链1.0系统,是不是支撑其他类型区块链应用的最佳技术平台,存在很大的争议。另外,也不是所有人都有能力和必要精通区块链底层技术。所以对那些急于冲到区块链领域里做(quān)事(qián)的人来说,可能更直截了当的学习目标是以太坊和Hyperledger Fabric。在以太坊上面用Solidity进行的智能合约开发是切入区块链开发最简单的方式,没有之一。以太坊的理想非常宏大,由于配备了强大的图灵完备的智能合约虚拟机,因此可以成为一切区块链项目的母平台,是驮住整个区块链世界的大乌龟。在以太坊上开发一个类似比特币的加密货币,是一个不折不扣的小目标。一般有经验的开发者在文档指导下,半天到一天即可入门。问题在于,入门以后又如何?靠写Solidity是否就可以包打天下?这是大大存疑的。我们也可以反过来说,如果以太坊+Solidity是区块链的终极解决方案,那么怎么还会出现那么多区块链技术门派呢?特别是,以太坊似乎并没有给现实世界中巨型的中心化组织们留下一条活路,这种彻底不妥协的革命态度有可能也成为以太坊推广的障碍。当前以太坊项目的开发进展并不顺利。一个比较突出的问题是项目过多,力量分散,导致项目质量参差不齐。但尽管如此,跟其他区块链2.0平台相比,以太坊提供的开发环境是最简单最完善的。初学区块链的人绝对有必要学习以太坊,从而对区块链和智能合约建立起一个最“正宗”的认识。主流区块链技术平台的第三支就是Fabric,它是Hyperledger的第一个也是最知名的孵化项目。 Fabric最早来自IBM的Open Blockchain项目,到2015年11月,IBM将当时已经开发完成的44,000行Go语言代码交给Linux基金会,并入Hyperledger项目之中。在2016年3月一次黑客马拉松中,Blockstream和DAH两家公司将各自的代码并入Open Blockchain,随后改名为Fabric。到目前为止,Fabric与Intel提供的Sawtooth Lake并列为Hyperledger的一级孵化项目,但前者得到的关注远超后者。从技术角度来说,Fabric思路不错,重点是满足企业商用的需求,比如解决交易量问题。众所周知,比特币最大的短板是它每秒钟7个交易的上限,完全无法满足现实需要。而Fabric目标是实现每秒钟10万交易,这个量接近刚刚过去的双十一交易量瞬时峰值,完全可以满足正常条件下的行业级应用。Fabric用Go语言开发,也提供多种语言的API。特别值得一提的是,Fabric比较充分地运用了容器技术,比如其智能合约就运行在容器当中。这也是Go语言带给Fabric的一项福利,因为Go语言静态编译部署的特征很适合开发容器中的程序。Fabric还有一些特点,比如其membership服务可以设置节点准入审查,这是典型的联盟链特征。再比如其共识算法是可定制的。Fabric的短板是体系较为复杂,虽有文档,但缺少经验的开发者学习起来障碍比较大。然而由于其定位清楚,迎合了不少企业的心态,所以已经有多家机构在基于Fabric秘密研发行业内的联盟链项目。
『玖』 区块链之联盟链(三) 认识Fabric
Fabric 是超级账本联盟推出的核心区块链框架,它适合在复杂的企业内和企业间搭建联盟链。根据超级账本联盟的目标, Fabric 被建设为一个模块化的、支持可插拔组件的基础联盟链框架。;
与以太坊系的Quorum不同,Fabric从一开始就只考虑企业间的应用。其独有的channel概念,将企业根据业务目的不同以不同的子网连接起来, 每一个子网对应一个channel,而每个channel有自己独立的区块链。而Quorum很显然是只有一个公网(所有企业节点都加入进去),企业与企业间的私有业务是通过Private Manager 完成的。
理解channel的最简单方法就是,将它类比为一个消息服务提供的Topic,实际上Fabic最早就是基于Kafka 的分布式消息服务来实现。
在Fabric网络中,一个企业可以有一个或多个节点加入整个联盟链;一个企业可以加入1个或者多个Channel(子网); 一个节点可以加入1个或者多个channel。每个channel构成一个子网,所以Fabric 是 一种由子网组成的网络。
那么Fabric是怎么实现智能合约的执行和完成业务上链(将事务结果记录在区块链里)的呢?
与其它框架不同, Fabric 将整个过程分成了三个阶段:
业务背书阶段 : 客户的请求发送的背书节点,通过智能合约完成业务的计算(但不更新状态),并完成背书;将背书结果返回个客户端。
业务的排序阶段 : 客户端将背书结果通过Channel被发送到排序节点(orderer),在排序节点完成事务的排序,并打包到block里,最后下发给所有连接到channel的节点。
业务验证并写入账本阶段 : 通过Gossip 网络,所有Channel的节点都会接收到新的block,节点会验证block中的每一个事务,确定是否有效:有效地将会跟新world state,无效的将会标志为“无效”,不会更新World state,但整个block会被完整的加入到帐本中(包括无效的事务)。
根据以上的描述,Fabric 节点实际可以分为 ,普通节点和Order节点:
Peer, 普通节点, 完成背书(包括只能合约的执行)和验证.
orderer, 排序节点,完成排序。
加入orderer节点的Fabric网络可以被描述如下:
每一个Channel,都定义了所有属于channel的节点,但是并不需要所有节点都连接到Orderer 节点(节点间可以通过gossip 协议通讯来传播私有数据或事务).
在区块链中,共识是区块链的基础。与公有链不同,联盟链的共识要求所有加入账本的事务是确定的、最终的,也就是不可以有分叉,区块与区块间的顺序是一定的,只存在唯一条链。在Fabric 中,这个客观需求正是由排序实现的,所有的事务将被提交给orderer节点获得确定的顺序,并最终打包成block进入帐本。 Fabric 从1.4.1开始支持基于Raft实现排序服务, 可以认为基于Raft实现共识。
基于RAFT的排序服务相对于早期的Kafka 具有更好的分布性,配置更加简单,是联盟链里常用的一个常用的达成共识的算法,Quorum就 默认使用RAFT作为共识层。简单的说,RAFT是一个leader和follower的模式, 所有加入RAFT网络的节点,任意时候都有一个leader, 只有这个leader有权决定事务的顺序,并打包成Block,其它节点只能作为follower提交事务和同步block。
基于FAFT网络,每个企业可以有一个或多个节点参与到Orderer中去。在Frabric中企业间的网络连接可以变化成如下形式:
区块链的使用用户在以太网中被称作EOA(External of Account), EOA的载体是钱包。我们沿用这个概念,来看看Fabric是如何实现用户和发起事务的。Fabric中EOA是一个CA中心发布的certificate(x.509),一个Certificate代表一个Identity(这与以太坊还是有很大区别的, 以太坊中一个EOA其实是一个hash地址),EOA能够参与的channel以及被授权的操作是有channel的MSP( Membership Service Provider)决定的(如下图)。
注:certificate 是一种密码学上验证身份的通用做法; certificate包含了个人的信息,公钥以及发布这个certificate的CA的签名。验证方只需要拥有这个CA的证书(包含CA的公钥),就可以验证这个签名是否正确,certificate的内容是否有篡改。简单的说,通过CA和Certificate,我们可以获得一个可验证的的身份和信任链。
如上图,fabric中通要使用Wallet作为EOA的载体,一个Wallet中可以包含多个Identity(x.509 certificate)。 Identity 通过 CA提供的信任链来验证正确性。
验证了身份之后, Fabric 通过MSP在区块链网络中解决该身份是否代表组织的成员和在组织内具有什么角色。例如,channel首先会验证当前用户Identity是否是有效地身份,然后通过MSP查看其所处的企业和具有的角色,最终确定该用户是否有权执行操作。
可以说,Fabric的访问控制是通过MSP来完成的。在每一个需要访问控制的地方都需要定义一个MSP。 例如,每个channel都定义一个MSP,这个MSP规定了在channel范围内资源的访问权限。 MSP 是Fabric里一个晦涩难懂的概念,也是其赋予企业间安全访问的基础。
前文提到, Fabric 将业务处理和上网分成了三个部分, 背书,排序,验证后加入账本。
其中背书是Fabric执行智能合约的阶段。以太坊中,智能合约是在EVM中执行的,有多种语言支持。 在Fabric,智能合约被称为chaincode: 一个chaincode 可以理解为是智能合约的容器,可以包含一个或多个智能合约, 不用于EVM, chaincode是在 JVM 或NodeJS中执行。
客户应用程序通过智能合约来访问账本,每一个可访问的智能合约都被安装在客户端可以访问的节点上,并被定义在channel里。(有只能合约的节点被称为背书节点,没有只能合约的节点被称未提交节点,提交节点只维护账本)
客户应用提交一个交易请求, 请求到达背书节点, 背书节点首先会验证客户的签名,确保客户的身份有权执行本次交易,接着执行交易提及的智能合约(chaincode),并生成一个背书响应(或者叫做交易提案,tran-proposal)。这个背书响应中通常包含World state 的读集合,写集合, 以及节点对本次交易的签名。这里与以太坊系联盟链最主要的不同是: 背书阶段只模拟交易,并不真正更新交易结果。 而真正更新交易在第三阶段完成。背书节点最后将生成的背书响应fanhui给客户端, 智能合约部分的执行就结束了。
通常一个交易的执行需要多方的签名,所以客户端需要将一个交易发送给多个背书节点,这些背书节点的选择需要满足背书策略的要求。
下图是一个包含有客户、背书节点,提交节点的网络示意图。
根据Fabric官方的参考文档,客户交易的正果过程可使用下图描述。
如上图,从1到3,为背书阶段,4为排序阶段,4.1,4,2, 5为验证提交阶段。 参考 Frabic的节点 概念,可以了解更多在交易细节的概念。
总的来看, Fabric 更专注于企业间,通过上文,可以让大家对Fabric的基本构成与概念有一个总的了解。 Fabric本身并不神秘,都是使用的现有的企业间的技术。要更好的了解,建议参考阅读分布式消息系统和企业的安全基础设施(CA相关)的支持。与以太坊系联盟链实现比较, Fabric 的子网更概念对于复杂企业间应用适应更强,但是其复杂的安全考量,使得运营成本很高,另外,Fabric 使用Certificate做为用户身份,有很大的局限性,在新的2.0里,Fabric对于此处将有所改变。
下一篇,我们将来看看Sawtooth , 由Inter 提供的区块链框架。
区块链之联盟链(一) 认识以太坊
区块链之联盟链(二) 认识Quotum
区块链之联盟链(三) 认识Fabric
区块链之联盟链(四) 认识Sawtooth
『拾』 以太坊是什么以太坊与区块链有什么关系
以太坊是什么:
以太坊是一项基于比特币中技术和概念运用到计算机的创新。以太坊本身仿制了很多比特币的技术,以此来维护计算机平台。区块链技术就是其中之一。
以太坊平台可以安全的运行用户想要的任何程序。
以太坊和其余竞争币比的优势
以太坊出现之前,已经有一些数字货币模仿比特币出现了。但是,这些项目本身有一定的缺点,仅仅可以同时支持一种或几种特定应用。(更好的数字货币交易平台尽在“币汇”)
然而以太坊之所以能超越以往这些项目的局限性,是因为以太坊的核心思想。
以太坊要实现的是一个内置了编程语言的区块链协议,由于支持了编程语言,那么理论上任何区块链应用都可以用这门语言进行定义,进而作为一种应用,运行于以太坊的区块链协议之上。
以太坊的设计十分灵活,极具适应性。
以太坊目标集区块链技术之长,为了把区块链优点,如去中心化、开放和安全等特点都加入到近乎所有的计算领域。
以太坊的区块链应用
以太坊有很多区块链应用,如黄金和股票的数字化应用、金融衍生品应用、DNS 和数字认证等等。
以太坊被很多创业公司实现出的区块链应用就已经达到100多种。
以太坊也被一些金融机构、银行财团(比如 R3),以及类似三星、Deloitte、RWE 和 IBM 这类的大公司所密切关注,由此也催生出了一批诸如简化和自动化金融交易、商户忠诚指数追踪、旨在实现电子交易去中心化的礼品卡等等区块链应用。
以太坊与区块链的关系:
以太坊是可编程的区块链。
以太坊是并不是给用户一系列预先设定好的操作(例如比特币交易),而是允许用户按照自己的意愿创建复杂的操作。
这样一来,以太坊是就可以作为多种类型去中心化区块链应用的平台,包括加密货币在内但并不仅限于此。
和其他区块链一样,以太坊也有一个点对点网络协议。以太坊区块链数据库由众多连接到网络的节点来维护和更新。每个网络节点都运行着以太坊模拟机并执行相同的指令。因此,人们有时形象地称以太坊为“世界电脑”。