一、引言
二、数字货币简介
三、拜占庭将军问题
四、区块链技术简介
五、区块链与银行家
六、区块链应用前景 一、引言
2013年12月3日,央行等五部委下发了《关于防范比特币风险的通知》[1],否认了比特币的货币属性,将比特币定性为普通民众在自担风险的前提下可以自由交易的一种虚拟商品 。时隔两年,央行对于比特币又有什么新的看法呢?不久前的一条新闻再次引爆了比特币爱好者们的朋友圈[2]:2016年1月20日,中国人民银行数字货币研讨会在北京召开……人民银行行长周小川出席会议,人民银行副行长范一飞主持会议……会议要求,人民银行数字货币研究团队要积极吸收国内外数字货币研究的重要成果和实践经验……争取早日推出央行发行的数字货币。
简单来说,这条新闻告诉我们目前央行正在探索用比特币的底层技术——区块链(Blockchain)来发行央行自己的数字货币的可行性。无独有偶, 大洋彼岸的纳斯达克也在进行着自己的区块链实验。2015年12月30日,纳斯达克宣布初创公司Chain通过区块链技术交易平台Linq向私人投资者发 行了该公司的股份[3]。 在声明中,纳斯达克称Chain是第一家通过Linq平台完成私募证券交易的公司。纳斯达克的首席执行官Bob Greifeld表示:
通过这次对区块链技术的初次应用,我们开启了一项进程,它有可能从根本上为现有的资本市场交易系统带来深刻的变革。
事实上不仅是央行和纳斯达克,上图中这些诸如高盛、花旗、瑞银、西联汇款等银行和金融机构也都已经参与到了区块链技术的投资和研究之中[4]。那么区块链技术到底是什么?它是如何吸引到众多银行家的关注的?为什么说它具有为资本市场带来深刻变革的潜力?希望这篇文章可以为你解开这些疑惑 。
二、数字货币简介
作为一种信息技术,区块链并不为人所熟知,但是提到目前最成功的基于区块链的应用——比特币(Bitcoin),大家一定或多或少都有所了解,那么我们就先从比特币说起。
比特币是一种去中心化的加密数字货币(Crypto-Currency),其创始人中本聪(Satoshi Nakamoto)于2008年11月1日发表了一篇题为《比特币:一种点对点的电子现金系统》的论文[5],文中详细阐述了如何在陌生人之间建立一套去中心化的电子支付系统。2009年1月3日,中本聪开发出了比特币客户端,并采集了第一批的50枚比特币, 比特币由此诞生。2009年10月5日出现了最早的交易所汇率:1美元=1309.03比特币[6],此后随着价格的飙升,比特币吸引到了越来越多的关注。
虽然比特币诞生至今只有七年时间,但是加密数字货币的构想却可以追溯到很久以前。比特币用的非对称加密技术在上世纪70年代既已出现,在1982年David Chaum就提出了不可追踪的密码学网络支付系统的构想,1988年的《密码无政府主义者宣言》[7] 中甚至预言了加密数字市场的出现。
既然数字货币的构想早已出现,那为什么过去的30年间一直没有成功的数字货币诞生呢?这就牵涉到一些技术方面的讨论。首先我们要知道理想的加密数字货币一
定是分布式的,所谓的分布式,又叫去中心化,指的是整个系统的运行不依赖于某一个或某几个中心节点。在下图中左边是一个典型的集中式系统,因为整个系统运
行完全依赖于中央服务器的正常运转,而右边则是一个分布式系统,即使拿掉某个服务器,整个系统仍可以正常运行。关于两种系统的比较,《海星模式》一书中有
一个精彩的比喻:
如果砍掉一只蜘蛛的脑袋,毫无疑问它会死亡;但是砍掉海星的一条腿,它却还会长出一条新腿,就连那只砍掉的腿也会长成一个全新的海星。
如果数字货币选择集中式系统,那么只要中央服务器稍有闪失整个系统就会瘫痪,这将会产生许多棘手的问题。
比如,如何保证中央服务器的保管者不会私自篡改交易信息?
如何保证中央服务器不会被黑客入侵,不会被政府查封?这些问题并非杞人忧天,而是有现实依据的,比如之前的E-gold就被美国政府以《爱国者法案》起诉
清查[8]。
由此可见道德风险和法律问题对数字货币来说都是致命的,而这些又无法通过计算机程序来轻易解决,因此分布式系统才是数字货币的理想选择。但是建立一个分布
式的交易系统,在技术上却要比集中式困难许多,因为在这一过程中需要克服一个通信领域里的经典问题——拜占庭将军问题(Byzantine
Generals Problem)。
三、拜占庭将军问题
拜占庭将军问题(以下简称“共识问题”)的正式表述是:如何在一个不基于信任的分布式网络中就信息达成共识?这个表述听起来有些晦涩,但其本质并不复杂,下面的例子与共识问题虽然并不完全一致,但却有助于我们的理解[9]。
想象一下在遥远的拜占庭时代,有一个富饶的城邦,金银珠宝绫罗绸缎应有尽有,它的领主哆啦A梦独享着这一切奢华与荣耀。而在城邦的外围,四位拜占庭 将军大雄、胖虎、小夫和静香都觊觎着哆啦A梦的财富,于是他们决定联手攻占哆啦A梦的城邦。根据双方的实力对比,必须有超过半数的将军同时发起进攻方能克 敌制胜,因此获胜条件就是四人中至少三个人可以就进攻时间达成一致。那么四位将军的胜算有多少呢?
这个问题的答案就要取决于四个人的合作方式了,如果是集中式系统,有一个盟主,比如胖虎(相当于中央服务器),那么他们的胜利是毫无悬念的,因为就
进攻时间达成一致非常简单,只要胖虎召集大雄、小夫和静香开个会讨论一下就可以了,即使大家意见有分歧胖虎也可以在最后予以定夺。下面让我们回到拜占庭将
军问题的假设里,在不基于信任的分布式网络中,四位将军的胜算又如何呢?
首先由于四位将军之间缺乏信任,因此聚到小黑屋里开个密谋会的可能性被排除了(一旦在小黑屋里被胖虎绑架了怎么办?);其次由于没有盟主,四个人的意见都
会被同等的看重。在这种情况下,四位将军只能通过信使在各自营地之间传递消息,来商定进攻时间了。比如大雄觉得早上6点是发动进攻的好时机,他就会派信使
将自己的意见告诉胖虎、小夫和静香,与此同时,胖虎可能认为晚上9点发动突袭更好,小夫更喜欢下午3点出击,而静香希望是上午10点,他们三人也会在同一
时间派出自己的信使。这样一来,在第一轮通信结束后,四位将军每个人都有了四个可供选择的进攻时间,他们各自要在下一轮通信中把自己选定的时间告知另外三
人。由于四个人的决策都是独立做出的,因此最终的选择结果就有256种可能,而只有当三人以上都恰好选择了同一时间的时候,共识才被达成,而这样的结果才
64种,也就是说达成共识的概率仅为1/4。这还只是四位将军的情况,如果将军的人数是10人,100人,1000人呢?我们稍加计算就可以发现随着人数
的增加,达成共识的希望会变得越来越渺茫。
把上面例子中的将军换成计算机网络中的节点,把信使换成节点之间的通信,把进攻时间换成需要达成共识的信息,你就可以理解共识问题所描述的困境了。 达成共识的能力对于一个支付系统来说重要性不言而喻,如果你给家里汇了一笔钱买车,第二天去银行核实的时候柜台告诉你“关于你汇了多少钱的问题,我们的系 统里有三个版本的记录”,这样的银行你显然是不敢把钱存进去的。在比特币出现之前共识问题是很难被完美解决的,要保证达成共识就需要采用集中式系统(除非 节点满足特定条件),要想去中心化共识就无法保证。那么区块链技术又是如何解决这一难题的呢?
四、区块链技术简介
区块链技术的解决方案其实很简单,就是保留一个仲裁权,凡是经仲裁权持有人裁定的信息大家都一致认可,这样就可以轻松达成共识了……
等等!机智的读者朋友们读到这里可能已经要报警了,“有一个人有仲裁权”这不就是集中式系统么?有这样的疑问很自然,因为在我们的脑海里“有一个人有仲裁权”这是一件事情,但事实上并非如此,只不过是定势思维给我们的误导罢了,其实它包含了两件事情:
有一个人有仲裁权 = 有一个人 + 有仲裁权
这个看似多余的分割中其实包含了解决共识问题的关键思路。球场上的犯规裁判说了算,法庭上的胜负法官说了算,虽然我们对由某个人或某个组织垄断仲裁 权这样的安排习以为常,但是大家有没有想过这样一个问题:谁规定了仲裁权必须和某个个体绑定在一起了?当你意识到这个问题的时候就已经非常接近中本聪的答 案了,区块链技术给出的解决方案非常简单:保留仲裁权,但不将其与某一个节点绑定,而是每次记账的时候将仲裁权随机分配给全网中的某个节点,然后其他节点 跟随该节点完成记账任务。这样一来既能轻松地就账本达成共识,又因为没人知道下次记账谁说了算,系统的去中心化特征也被保留了。
以上就是区块链技术一个非常概要的介绍,如果还是满足不了你的好奇心,那么我们可以再来看一下区块链技术在比特币系统中具体是如何实现的。(如果你
的好奇心已经非常满足了,可以直接跳到本节最后一段,不影响后面的理解)在比特币系统中每时每刻都会产生许多交易,这些交易一经产生就向全网广播,以保证
每个节点都可以收到,但它们并不是零乱地散落在系统中,而是每隔一段时间就会被打包成一个区块(Block)记录到比特币的总账里,将这些区块按时间顺序
连接到一起就成了区块链(Blockchain),也就是说区块链一词其实有两层含义,它既是分布式系统中达成共识的技术,在比特币系统中也特指包含了所
有交易的总账
。比特币的代码是开源的,任何人都可以在自己的电脑上下载并运行客户端,从而使自己的电脑成为维护比特币网络的一个节点。每个节点都存有一本包含全部交易
的总账,并定期将新产生的交易记录到自己的总账里。就像之前提到的,每次记账的时候都会有一个节点带领大家一起完成,那么一个关键的问题就出现了:这个节
点是如何选出的?怎么保证该节点不会伪造和篡改交易内容呢?
这个目标是通过挖矿(Mining)来实现的。上面就是一个挖矿过程的示意图,图中每个横线代表一笔交易,矩形方框代表包含着许多交易的区块,连在一起就
是总账。挖矿过程是通过一个叫做SHA-256的函数实现的,它的功能是输入任意一个文件,返回一个毫无规律的64位16进制数,虚线部分就是每次挖矿时
矿工(Miner)需要输入的内容,它由三部分组成:上一个区块的信息,新产生的交易和一个随机数。输入之后SHA-256会返回一个结果,最先得到足够
小的64位数的节点会将自己的随机数和SHA-256的结果向全网广播以供其他人验证 。目前这个“足够小”的要求是前17位数全是0,
难度会随着全网算力动态调整以保证约每10分钟产生一个新矿。验证过程就是其他矿工将收到的随机数输入到SHA-256中看能否得到相同的结果,若结果不
同,说明发出广播的矿工的账本和大家不一样,有私自伪造和篡改交易的嫌疑,从而导致验证失败,这就保证了只有诚实节点才能挖到新矿。通过验证的节点成为新
矿的矿主,它会将作为SHA-256输入内容的新交易打包成新的区块记录到总账中,其他节点也会照做。与此同时新矿主获得两笔奖励,一笔是新区块中所有交
易的手续费,目前普遍为每笔0.0001比特币,无论交易金额大小;另外一笔是新发行的比特币,目前是每个新矿发行25枚,该数额每四年减半。每次挖矿结
束之后,所有矿工一起投入到下一轮的挖矿比拼之中,每个人挖到矿的概率和自己为比特币系统贡献的算力成正比,总账就是依靠这样一个精巧而公平的挖矿机制不
断延续下去的。
以上就是比特币的运行方式,即使有些地方看不太懂也没有关系,只要你知道它能在没有建立信任的去中心化网络中,让所有节点保存一本相同的总账就可以 了。比特币从诞生至今整整七年,尽管宣布比特币已经失败的声音不绝于耳,根据一个叫“比特币讣告”的栏目统计,目前比特币已经被宣告死亡90次了[10],但整个系统依然运行良好,比特币和它底层的区块链技术都经受住了时间的考验。
五、区块链与银行家
在做了这么多铺垫之后,银行家们终于要出场了。由于比特币本质上就是一个支付系统,而这也是银行最重要基础设施之一,因此区块链技术吸引到银行家的关注也是再自然不过的事情了。那么在银行家眼里区块链技术到底意味着什么呢?
让我们先从一笔简单的跨行转账说起,它的流程通常是这样的:由付款人发起转账请求,付款人的银行接受请求并提交给相应业务的清算机构,清算机构负责 处理款项在付款人银行和收款人银行之间的划转,最后由收款人银行将该款项添加到收款人的账户。当然实际操作要更为复杂,这只是一个有助于理解的简化流程而 已。
付款人——>付款人的银行——>清算机构——>收款人的银行——>收款人
在这个流程中,中间的清算机构是后来才出现的,早期的时候跨行转账是通过银行间互相在对方处开立账户实现的,回忆一下之前那张集中式与分布式系统的
对比图,早期的模式显然属于右边那种分布式系统。这种模式最大的弊端就在于记账成本非常高昂,如果每两家银行之间的转账都需要单独“记一本账”的话,
那么一个由100家银行组成的支付系统就需要记9900本账,每家银行都要频繁地与所有其他银行对账以保证账目正确,尤其在那个转账都是通过邮局投递信件
的年代,维护这样一个系统需要多么庞大的工作量也就可想而知了 ,于是清算机构应运而生。
清算机构的运行方式很简单,各家银行在清算机构处开立账户,然后所有转账由清算机构在各家银行账户之间划转,这样一来记账成本大大降低,因为每家银行只要
和清算机构对账就可以了。但这种安排也带来了一个至关重要的转变,那就是支付系统从原来的分布式变成了集中式系统,清算机构成为了所有交易的中间人,当甲
银行要向乙银行转账时,它并没有自己去操作,而是凭借对清算机构的信任,将这笔转账交给清算机构来完成。
为什么说这一转变至关重要呢?因为信任是有成本的。当我们刷卡消费时,我们信任银联、维萨、万事达这些中间人,信任的成本包含在银行向我们以及中间 人向商家收取的各种费用中;当我们向海外的朋友转账时,我们信任西联汇款、速汇金这些中间人,信任的成本包含在跨境汇款的手续费中。不同的支付业务对应着 不同的中间人,但相同的是你都要为信任而付出成本。那区块链技术可以降低整个系统的成本么?答案是肯定的,而且不同的机构使用区块链,效果还各不相同。
对于像银联这样的清算机构,节约成本的效果是显而易见的,区块链在比特币上的表现已经证明了它可以为复杂的支付系统提供一套全自动的接近即时的处理方案,因此可以显著地降低清算机构的人力成本并提高到账速度。
对于银行来说,节约成本的效果就不仅限于上述两点了。回顾一下区块链技术解决的关键问题:在不基于信任的分布式系统中就信息达成共识。也就是说,在 区块链的帮助下,银行家们不需要依赖对他人的信任就可以建立一套可靠的支付系统,那么中间人存在的意义又何在呢?所以在一个有志气的银行家眼里,理想的支 付流程当然是下面这样:
付款人——>付款人的银行——>收款人的银行——>收款人
并没有清算机构什么事儿。除了省下中间人的成本外,区块链技术还可以进一步降低记账成本,因为各家银行记录的都是同样一本包含所有交易的总账,这就省去了彼此之间相互对账的麻烦。
两相对照大家就可以发现,虽然一同走在探索区块链的道路上,但清算机构和银行家们的目的地并不相同。显然银行家们的方案可以更显著地降低成本,这是 不是意味着如果银行家成功了我们普通人也可以从中获益呢?结论恐怕并没有那么乐观,其中的道理也不难理解:狼和老虎同时抓到一只羊,狼少吃一口老虎就多吃 一口,这中间并没有羊什么事儿。只要我们没有能力绕开银行自己完成支付,让银行将节省下来的成本让利于我们的愿望就只能永远是愿望 。所以在一个有志气的储户眼里,理想的支付流程当然是下面这样:
付款人——>收款人
并没有银行和清算机构什么事儿。而这正是比特币的意义所在,它第一次在技术上赋予了每一个人绕过银行直接在付款人和收款人之间完成支付的能力。墨西 哥、印度、非洲等地外出务工的人们向家里寄钱时,要被汇款公司吞去5%-12%;即便是在美国,信用卡公司也要对每笔交易收取1%-2.5%的手续费[11];而比特币的每笔交易无论数额大小手续费只要0.0001比特币(不到3毛钱),想想这些数字对银行家来说究竟意味着什么。从这个角度来看,比特币所惠及的绝不仅限于它的使用者。
六、区块链应用前景
最后说说我们开篇提到的纳斯达克。如果说因为比特币本身就是一个支付系统,银行家关注区块链是理所当然的,那么纳斯达克对区块链的热情又是从何而来 呢?这就需要我们再回忆一下拜占庭将军问题的定义了:如何在一个不基于信任的分布式网络中就信息达成共识?整个定义中并没有提到转账的事儿,而是用了“信 息”一词,也就是说无论这个“信息”是什么,只要它处在共识问题所描述的条件中,区块链技术都是一个潜在的解决方案。在比特币中这个需要达成共识的信息是 包含所有交易的总账,也可以理解为是“每次比特币所有权转移的记录”,如果把这个信息换成是“每次证券所有权转移的记录”,这不就成了证券交易所的业务了 么。当我们可以这样理解共识问题的时候,区块链技术对于纳斯达克的吸引力也就不言而喻了。事实上证券交易也存在着跟支付流程类似的结构:
买方——>买方的经纪人——>证券交易所——>卖方的经纪人——>卖方
区块链将在哪些方面提高交易所的效率?在有志气的经纪人和有志气的买卖方眼中理想的交易流程分别是怎样的?对照我们之前的分析,大家应该对这些问题已经心中有数了 。
当然,共识问题中的信息也并不仅限于所有权转移,所有可以数字化的内容理论上都可以被区块链处理,而且目前已经有许多有趣的区块链应用被开发出来 了,比如去中心化的微博Twister,去中心化的聊天软件Bitmessage,去中心化的云储存Storj,去中心化的域名系统Dot-Bit等等。 它们大都拥有着比特币的鲜明印记:更低的成本,更好的安全性,无法篡改的信息,和海星一般顽强的生命力……
That will fly, flies at last.
打赏地址
https://zhuanlan.zhihu.com/p/20519827
参考资料
注释 (↵ returns to text)
http://www.pbc.gov.cn/goutongjiaoliu/113456/113469/999049/index.html↵
http://www.pbc.gov.cn/goutongjiaoliu/113456/113469/3008070/index.html↵
http://www.coindesk.com/chain-issues-investor-shares-nasdaq-linq/↵
http://fintechnews.ch/blockchain_bitcoin/introduction-bitcoin-blockchain-for-fiancial-services/1968/↵
https://bitcoin.org/bitcoin.pdf↵
http://newlibertystandard.wikifoundry.com/page/2009+Exchange+Rate↵
http://nakamotoinstitute.org/crypto-anarchist-manifesto/↵
https://en.wikipedia.org/wiki/E-gold↵
http://www.8btc.com/bitcoin-and-the-byzantine-generals-problem↵
https://99bitcoins.com/bitcoinobituaries↵
https://www.washingtonpost.com/news/innovations/wp/2016/01/19/r-i-p-bitcoin-its-time-to-move-on/↵
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。