记账货币

记账货币可以记载债务、价格以及一般购买力,是货币理论最基本的概念。……从严格意义上说,货币只有在与记账货币的关系中才能存在。

——凯恩斯

区块链的本质是什么?区块链与比特币有什么关系?回答这两个问题前,让我们先从一个拿石头当钱的小岛说起。

石币之岛

雅浦岛(Yap)是位于太平洋西部的加罗林群岛中的一个小岛,居住人口仅有数千人,岛上风景如画,人们过着田园牧歌式的生活。然而,这个岛最出名的原因却是岛上奇特的货币。

图片来源:http://www.reefseekers.com/PIXPAGES/Yap%202013/Yap%202013%20pix.htm

一种又大又厚的石轮——“费(Fei)币”构建了当地的货币体系,这些石轮的直径从1到12英寸(1英 寸=0.0254米)不等,中有孔洞。雅浦岛上的居民进行的交易很多,但交易过程一般只是债务互相抵消的过程,账款通常留待以后的交易中进行转结。即便到 了最后的清算时刻,费币也很少被搬动,当地人只是在上面做标记,以显示所有权的易手,其所有者无须持有它。当地人并不在意自己对这块石头的所有权有没有实 物保证,甚至不需要为交易做什么记号,石币还是原封不动地留在原来的主人那里。

威廉·亨利·福内斯[1]对雅浦岛的货币体系进行描述时,讲述了这么一个故事:

附近村子里有一家人,他们的富裕程度毋庸置疑、人所周知,然而没有一个人见过或接触过这笔财富,这家人自己也不例 外。他们家的财富就是一块巨大的费币,其尺寸只是在祖辈的口中提到过,历经两三代人,这块费币一直躺在海底,直到现在!人们都承认,这块费币在运输过程中 掉下海的事故本身无须多议,而且人们也承认,即便沉在数百英里(1英里=1609.344米)之外的海里,这块石币的交易价值也不应受到影响……这块石头 的购买力就如同把它明显地摆在主人房外一样,仍然有效。

这种奇特的货币制度其实并不难理解,雅浦岛的货币不是费币,而是其背后的一套由信用记录以及信用记录的清算构成的体系。费币只是用来记账的表征[2]。凯恩斯在他的《货币论》里表示:“福内斯的书让我们了解到,有一个民族对货币的观念可能比其他国家的人聪明得多。”[3]

约翰·梅纳德·凯恩斯(John Maynard Keynes,1883—1946),现代经济学领域最有影响的经济学家之一,被称为“资本主义的‘救星’”“战后繁荣之父”等。在经济学界,“凯恩斯学派”衍生了数个支系,其影响力持续至今。

图片来源:可汗学院,https://www.khanacademy.org/partner-content/big-history-project/acceleration/changing-economies/a/smith-marx-and-keynes

1991年,79岁的米尔顿·弗里德曼同样对雅浦岛有很高的评价,认为雅浦岛摆脱了商品硬币这套传统但不健康的制度[4]。该岛对公认的实体通货明显漠不关心,这说明了货币不是一种商品,而是信用与清算构成的一套体系[5]

米尔顿·弗里德曼(Milton Friedman),美国当代经济学家、芝加哥大学教授、芝加哥经济学派代表人物之一,1976年获诺贝尔经济学奖。

图片来源:http://twitchy.com/sd-3133/2013/07/31/happy-birthday-milton-friedman-free-market-warriors-remember-their-hero/

记账货币

关于货币是什么的问题,在历史上有两种针锋相对的学说。货币金属论者认为货币与贵金属等同,货币必须具有金属内容 和实质价值,货币的价值取决于贵金属的价值。货币名目论者则否定货币的实质价值,认为货币只是一种符号,一种名目上的存在。随着金本位制度的崩溃,目前世 界上几乎所有国家的货币都已是信用货币,这场争论的结果也越来越清晰,货币名目论逐渐占据了统治地位。美国著名经济学家米什金在《货币金融学》中对货币的 定义为:“货币或货币供给是任何在支付商品、劳务或偿还债务时被普遍接受的东西。”[6]

凯恩斯是货币名目论的典型代表,他在《货币论》中说:记账货币可以承载债务、价格以及一般等价物,是货币理论中最 为基本的概念。那些在交易现场作为便利的交易媒介而存在的物体会逐渐演变成货币,这是因为它们代表了一种持有一般购买力的方式。记账货币是一种描述,而货 币则是这种描述对应的事物[7]

从纸质的信用货币发展到目前广泛使用的电子货币,如信用卡、网上银行、手机银行等,进一步体现了记账货币的特点——当你通过网银给其他人转账的时候,没有发生任何物理货币的转移,只是银行里记账系统的账务发生了变化而已。

区块链的本质

区块链[8]的本质是一种去中心化的记账系统,而比特币正是这个系统上承载的“以数字形式存在”的货币。我们可以认为区块链与比特币之间的关系就是凯恩斯所说的记账货币与货币之间的关系,也可以用菲利克斯·马丁对货币的理解[9]来说明两者的关系——比特币只是记账的表征,而区块链就是其背后的一套由信用记录以及信用记录的清算构成的体系。

[1] 威廉·亨利·福内斯三世(William Henry Furness Ⅲ),1910 年。

[2] Felix MartinMoney: The Unauthorised Biography,P23.

[3] 凯恩斯,货币论(A Treatise on Money ,first published 1930),第二卷,P292。

[4] 米尔顿·弗里德曼,货币的祸害。

[5] Felix Martin,Money: The Unauthorised Biography,P25.

[6] Frederic Mishkin,The Economics of Money, Banking, and Financial Markets, seventh edition,P44.

[7] 凯恩斯《货币论》,P1。

[8] 这里的区块链特指比特币区块链。

[9] Felix Martin,Money: The Unauthorised Biography.

天才的发明

要了解比特币的内在优雅。不是软件使得比特币如此有效,而是经济学。[1]

——罗伯特·沃伦斯基

从技术的角度看,区块链就是比特币的基础架构及实现方式。没有区块链,就不会有比特币。也就是说,我们谈论比特币的发明,与谈论区块链的发明是一回事。

中心化的记账方式

因为账本上的内容必须是唯一的,所以就导致记账是一种天然的中心化的行为。在通信手段不发达的时代,这是必然的选 择;在如今的信息时代,中心化的记账方式依然覆盖了社会生活的方方面面。然而,中心化的记账却有一些显而易见的弱点:一旦这个中心出现问题,如被篡改、被 损坏,整个系统就会面临危机乃至崩溃。

一个典型的例子是21世纪初的安然事件:这家2000年披露的营业额高达1010亿美元美国能源巨头,由于深陷会 计假账丑闻,于2001年轰然倒下。如果账本系统承载的是整个货币体系,那么就会面临中心管理者滥发的风险。历史上,由于货币滥发造成恶性通货膨胀的例子 并不鲜见,甚至在当今世界仍然屡屡发生,比如津巴布韦。从1980年到2009年,津巴布韦共发行了4代津巴布韦元,无一不陷入恶性贬值。2008年11 月,津巴布韦每天的通胀率高达98%。2015年,津巴布韦元失去了流通资格,当地只能以南非米特、印度卢比、欧元、日元、澳元、美元、人民币等他国货币 作为流通工具。

图片来源:维基百科

所以,这种中心化的记账方式对中心本身的能力、相应的监管法律和手段以及参与者对其的信任都有极高的要求。

去中心化记账的难题

那么,我们能不能构建一个不依赖任何中心或是第三方但却可靠的记账系统呢?如果可能,我们就可以克服中心化记账的弱点。然而事实上,构建这样的系统远比想象中复杂。

从设计记账系统的角度,要达成去中心化的目标,显然需要具备以下两个条件:

1)账本数据的存储必须是去中心化的,不能指定任何参与方拥有特殊的保存账本的权力,或者说,我们需要让所有参与方都平等地拥有保存账本的权力。

2)记账行为本身必须是去中心化的,不能指定任何参与方拥有特殊的记账权力,或者说,我们需要让所有参与方都平等地拥有记录账务数据的权力。

下面我们就来分析一下想同时达成以上两个条件有多么困难。

我们先看第一个条件,这个并不复杂,我们只需要让系统的每个参与方都能保存完整账本即可。接下来,我们把第二个条 件加入进来,这时候发现麻烦来了:在所有参与方都可以保存账本的前提下,又让所有参与方都拥有记账的权力,必然会导致账本数据的不一致。这个道理很浅显: 即使不考虑恶意的参与方,由于每个参与方所处的物理环境不同,因此接收到的账务信息不可能是完全一致的。而作为一个记账系统,数据的一致性是最基本要求, 如果我们不能拥有一致的账本数据,大家记的账各不相同,那么整个记账系统无疑会乱作一团,也就没有任何价值了。

依据之前的分析,既然所有参与方同时记账会导致混乱,那么为了保证数据的一致性,我们就不得不选择让某个特定参与方拥有存储账本的权力或是记账的权力,然而这样,就会至少与上面的两个条件之一相违背……这似乎成了不可能解决的问题。

拜占庭将军问题

在揭开谜底之前,我们先回顾一个历史上的经典问题:拜占庭的将军们围攻一座城堡,军队被分散成很多分支,每一支军 队由一名将军独立指挥。将军们之间通过传令兵来保持交流,以期达成一致的行动(进攻或撤退)。但是有些将军是隐藏的叛徒,他们会用虚假的信息来扰乱忠诚将 军们的计划。大家并不知道叛徒是谁,那么,忠实将军们有办法达成一致的行动而不被虚假信息干扰吗?

历史上并没有拜占庭军队围攻城堡的事件,这个例子其实是研究分布式一致性(Distributed Consensus)问题的祖师级人物莱斯利·兰波特(Leslie Lamport)创造的。但这个例子完美表达了分布式一致性的核心问题,因此常常被人们引用。

其实,一致性问题尤其是分布式系统的一致性问题是个很大的概念,也是计算机科学领域很早就在研究的内容。传统上对 这个问题的研究是为了增加分布式系统的可靠性。比如Twitter、Facebook这样的系统,它们有很多服务器,同时记录着系统上发生的所有行为。每 一条信息分别记录在不同的后台节点上,系统具有分布式的特征。如果记录出现不一致,就有可能发生用户信息丢失的情况。时至今日,这样的系统也没有达成完美 的一致性。分布式系统和去中心化系统并不是等同的概念,但是都要面对在缺乏信任的前提下如何取得一致的问题。

在任何一个系统中,不一致的信息都会造成系统混乱。去中心化的系统没有中央管理机构,因而信息传播的一致性更成为关键的问题。下面我们看一下中本聪给出的解决方案到底是什么。

区块链经济系统

中本聪构造了一个极为精巧的系统,解决了这个看起来不可能完成的任务。这个系统被称为“区块链”。从字面意思上 看,“区块链”就是以“区块”这个东西组成的链条。那么区块是什么?我们可以先做一个形象的类比:如果区块链是一个实物账本,那么区块就相当于账本中的一 页,区块中承载的信息就是这一页上记载的交易内容。

那么,区块链是靠怎样的架构设计最终解决了去中心化记账的难题呢?竞争记账机制成为了解决问题的关键。

这里我们先引入一个称为“节点”的概念。在当前的信息时代,负责记账的自然是计算机,而在记账系统中接入的每一台计算机都可以称作节点。

所谓的竞争记账,就是以每个节点的计算能力(“算力”)来竞争记账权的一种机制。在比特币系统中,大约每十分钟进 行一轮算力竞赛,竞赛的胜利者获得一次记账的权力,即向区块链这个总账本写入一个新区块的权力。这样,在一定时间内,只有竞争的胜利者才能完成一轮记账并 向其他节点同步新增账本信息,这个过程就是区块产生的过程。

这里要指出的是,计算能力只能决定赢得竞争的概率。为了便于理解,我们可以用彩票系统做一个形象的类比,算力高的 节点相当于可以一次买很多张彩票的人,算力低的节点相当于一次只能买一张或是几张彩票的人。在一轮开奖中,一次买很多张彩票的人只是中奖概率更大,却并不 是一定会中奖。

那么,算力竞争是如何做到的?又由谁有权判定竞争的结果呢?区块链系统是通过一个称为“工作量证明”(Proof Of Work,POW)的机制完成的。举个形象的例子,比如要组装一批玩具,早上起来我给了你一些零件,晚上回来便看到玩具摆在桌上,虽然我没有从早到晚盯着 你做玩具的过程,但我也能确定你确实做了这么多工作。这就是对工作量证明的简单理解——通过一个(人人都可以验证的)特定的结果,就能确认(竞争的)参与 者完成了相应的工作量。关于POW的机制与实现细节会在下面的章节中详述。

不过,算力竞争是要付出成本的,没有激励,节点就没有进行竞争的动力。在中本聪的设计里,每轮竞争胜出并完成记账的节点将可以获得系统给予的一定数量的比特币奖励[2]。这个奖励的过程同时也是比特币的发行过程[3]。节点不停地进行计算,以期获得系统发放的比特币。这种设计相当巧妙——它将竞争记账机制与货币的发行完美结合到一起,在引入竞争的同时,解决了去中心化货币系统中发行的难题。这个过程很像现实生活中黄金开采的过程,因此被人们形象地称为“挖矿”。

最终,区块链通过构造一个以竞争-记账-奖励为核心的经济系统,解决了去中心化记账的难题。在这个系统中,每一个节点 只需要根据自身利益行事,出于“自私”的目的进行的竞争,最终造就了保护系统安全的庞大算力基础,提升了系统的可靠性。比特币借助区块链打造了一个正向循 环的经济系统,才使得其在没有强大的中心化机构或组织推动的情况下,自然地生长出来并发展壮大。

[1] 引用自http://www.coindesk.com/can-trust-basedprivate-blockchains-be-trusted/。

[2] 只有在最长链上完成记账的节点,才能最终获得系统给予的比特币奖励。关于最长链原则请参考本书第5章。

[3] 更准确地说,系统发放的奖励包含两部分,一部分是区块所包含交易的手续费,这部分不属于比特币的发行过程;一部分是新币奖励,新币奖励每四年减半一次,是比特币的发行过程。目前打包区块获得的奖励以新币奖励为主。

共识机制与价值载体

共识机制是区块链技术的核心,它使得区块链这样一个去中心化的账本系统成为可能;而价值载体是区块链技术的潜力所在,它使得区块链技术的应用领域远不止数字货币。这两个核心因素是区块链内生能力得以扩展的关键。

共识机制与去中心化

如何达成共识——只有在去中心化的结构下才成为问题。

在中心化的结构体系中,系统的共识由中心决定,各参与方只需要服从这个中心即可,因此,共识的建立是极为高效的。而在去中心化的结构体系中,由于系统的各个参与方地位平等,当出现分歧的时候,如何达成共识就成了问题。

市场经济是一个典型的去中心化系统,这个系统的共识机制就是市场经济制度。参与市场经济的每个主体都在遵守商业规 则的基础上,按照实现自己利益最大化的原则行事,同时在客观上推动了整个市场的繁荣。“无形的手“推动了人们争取自身利益的行为,这些行为的结果则服务于 更大的社会利益。正如亚当·斯密所说:“我们的晚餐并非来自屠宰商、酿酒师和面包师的恩惠,而是来自他们对自身利益的关切。”

共识机制与资源消耗

现在我们知道,比特币区块链的共识机制是通过工作量证明(POW)来实现的,这种机制的优点是显而易见的,每个节点可以平等地参与竞争,并通过激励构建了一个正循环的经济系统,从而逐渐积累了保护系统安全的庞大算力。

然而对工作量证明机制也有一些批评。一个常见的指责是“浪费”能源,因为节点进行算力竞赛是要消耗电力的。目前,投入挖矿竞争的总算力已经接近1300P(注:引用自http://qukuai.com/pools,可以近似认为1P的算力能够实现每秒1015次哈希计算。),挖矿也因此成了能源密集型的行业(注:用目前主流的28nm矿机来估算的话,1300P算力每秒消耗的电力高达2.16×105kW。)。

由于存在对工作量证明机制消耗能源的担忧[1], 一些人也在探索和实践新的共识机制,即采用非算力竞争的方案来选择记账节点。其中典型的是权益证明机制(Proof Of Stake,POS),以节点持有币的数量和时间来选择记账权;还有股份授权证明机制(DPoS),它类似于董事会投票,持币者投出一定数量的节点,代理 他们进行验证和记账。另外还有燃烧证明(Proof Of Burn)、沉淀证明(Proof Of Deposit)等方案,这里不一一赘述。不过我认为,目前这些探索本质上并没有改变“需要消耗资源”的实质[2]。从目前的实践看,工作量证明机制仍然是最为有效和可靠的去中心化共识机制。

那么,未来是否会有更先进的技术来降低共识机制资源消耗呢?在我看来,对于更低成本甚至无成本的共识机制[3]的追逐,正如人类历史上对于永动机的追逐一样,是注定要失败的。虽然我们并不能说POW就是最好的去中心化共识机制,但是我真正想表达的是,当谈到区块链技术与共识机制时,我们应该知道天下没有免费的午餐。

共识机制与私有链

所谓公有链,是指比特币区块链这样的完全去中心化的、不受任何机构控制的区块链;而私有链[4]则是指存在一定的中心化控制的区块链。

相较于完全公开、不受控制、依靠加密技术来保证安全的公有链而言,私有链可以创造出权限控制更为严格的系统,其修 改甚至是读取权限可以仅限于少数用户。正因如此,关于私有链和公有链的争论一直没有中断过:一方认为私有链没有任何意义,和分布式数据库没有太大区别;另 一方则认为私有链仅仅是对参与者进行一定控制的区块链,只要在有多方参与且不完全互信的环境下,需要共识机制的建立以及达成共识的过程,私有链就有存在的 价值。

从本质上来说,私有链就是以牺牲部分去中心化的特性为代价,来换取对于区块链权限的一些特殊控制,并且可以使用比 公有链更为高效、灵活、低成本的共识机制。我们认为,私有链确实有大量的场景可以对接现实世界的需求,有限的去中心化更容易达成共识,可以使交易速度更 快、效率更高,并且可以提供更多受控的功能,比如,在特定场景下必要的交易回滚。去中心化与中心化并不是非此即彼,相反,它们之间是一种共生共存、互相依 赖与结合的关系。在去中心化协议的基础上,可以衍生出各种中心化的服务,以适应不同行业及领域的个性化需求。比如,VPN(Virtual Private Network)就是一个在共用网络上构建专用网络的例子,该技术允许人们利用互联网现有的基础设施,构建有限且开放的专有网络,而无需投入大量硬件资源 重新构建底层基础设施。更为广泛的例子存在于互联网的各种服务提供者中,域名注册机构、电子邮件运营商以及提供各种形式服务的网站,都是基于互联网这个去 中心化的系统构建或提供各种类型的中心化服务的例子。

近一两年来,区块链吸引了全球各大主流金融机构的注意,他们纷纷对区块链进行调研,甚至专门成立实验室或部门,研 究在各种金融场景中使用区块链技术的可能性。但是类似比特币区块链这样的公有链尚不能满足金融机构的一些基本要求,比如了解你的客户(KYC)、反洗钱 (AML)等,因此,金融机构对私有链的兴趣更大。目前私有链最著名的例子是R3CEV公司牵头的区块链联盟,它已经吸引了全球四十多家大型银行的加入[5],其中不乏美国银行、摩根大通等巨头的身影。

价值载体

共识机制的建立使得区块链这样一个去中心化的记账系统成为可能,而其发展潜力则体现在这个系统上所能承载的各种价值形式。

显然,作为一个记账系统,区块链上面不仅可以记录数字形式的货币,也可以记录能用数字定义的其他任何资产,甚至, 由于区块链上的价值转移可以通过脚本语言来完成,这意味着区块链上还可以定义更为复杂的交易逻辑。也就是说,除了数字货币,区块链还可以承载股权、债券、 产权、版权、公证、合约、投票等可以用数字形式进行价值存储或转移的任何东西。

也正因如此,区块链技术才吸引了越来越多精英人士和顶级机构的关注。这也很容易理解,正如《经济学人》的封面文章[6]所讲的,区块链是一个制造信任的机器。在任何需要信任的领域,区块链都有用武之地。

价值载体之数字货币

显然,比特币并不是唯一的基于区块链技术的数字货币。据统计,仅2015年,新发布的数字货币就有800余种。坊间笑称,发行新币最难的部分是起名字,因为常用的可以起名字的英文单词已经用完了。

事实上,自比特币诞生之日起,它的模仿者或竞争者就层出不穷。其中有很多都只是对比特币简单的复制和模仿,没有任何创新,我们将这种称为山寨币。还有一些并不是简单的模仿,而是有自己的创新和专注的领域,这种类型的币我们称之为竞争币[7]。在数字货币的市值方面,尽管比特币遥遥领先,但之后诞生的莱特币、以太坊的市值都曾短暂地超过10亿美元。

数字货币是目前区块链创造的使用最广泛也是受认可程度最高的一类应用。以比特币为代表的数字货币一度成为区块链的代名词。可以预期的是,即使在区块链广泛使用的未来,数字货币也仍然会是最为重要的区块链应用之一。

价值载体之数字资产

数字资产和区块链具有天然的亲和性。一般意义上讲,数字资产包括任何形式的以二进制格式存在并且具备所有权属性的东西。而在较为狭义的理解中,数字资产则是指以电子数据的形式存在的,在日常生活中持有以备出售的非货币性资产,比较典型是股票、债券等金融产品[8]

美国著名的互联网零售企业Overstock就基于区块链建立了股权交易平台,并将在上面发行自己的股份。在摩根大通担任了近30年主管的布莱斯·马斯特(Blythe Masters)则担任了数字资产控股公司(Digital Asset Holdings)的CEO,寻求如何将区块链技术应用于华尔街。

另外,由于区块链公开、透明、难以篡改的特点,利用区块链技术可以非常方便地为任何数字资产或有价值的信息实现比现有中心化结构更为可靠的存在性证明,以及各种形式现实资产的登记或转移。这方面的应用可以包括产权、版权、公证等诸多领域。

如果说比特币等基于区块链的数字货币是一个刚诞生不久的婴儿,那么基于区块链的非货币形式的价值承载则还是一个孕育中的胚胎。作为价值载体,区块链可以承载的价值是非常丰富的。随着区块链技术的发展和相关基础设施的不断完善,我们相信区块链承载价值的范围会不断扩大。

[1] 对于工作量证明机制浪费能源的批评,我们认为,要达成去中心化的可靠共识,必然要付出一定的成本,考虑到这同时也是创造新币的过程,因而与新币价值相对应的成本消耗几乎是必然的。

[2] POS需要该数字货币的持有者锁定其所持有的币以换取“挖矿”收益,相当于消耗了“资本流动性”。

[3] 这里的共识机制特指类似比特币区块链这样的完全去中心化的区块链,即“公有链”的共识机制。

[4] 目前关于区块链的分类并没有统一的标准。有人将区块链分为公有链、联盟链和私有链。而我们则认为,联盟链由于存在一定的中心化控制,所以属于我们所说的私有链范畴。

[5] 引用自http://www.coindesk.com/r3-blockchain-new-partnerships/。

[6] 引用自http://www.economist.com/news/leaders/21677198-technology-behind-bitcoincould-transform-how-economy-works-trust-machine>。

[7] 分类和叫法没有一定之规。业内也有一种意见认为,应该将所有比特币之后的数字货币统一称为竞争币。

[8] 引用自https://en.wikipedia.org/wiki/Digital_asset。

当交易变得智能

在传统的账本中,账上的数据仅仅是一种纪录。而在区块链这个账本上,这些数据则有了超越账本的意义——它们是可编程的。

这是一个质的变化。由于区块链的可编程属性,使得区块链上所能承载的就不仅仅是普通的交易,而是可以基于程序自动执行的智能交易。

脚本与多重签名技术

比特币区块链上的交易可以通过脚本来实现。所谓脚本(Script),就是使用一种特定的描述性语言编写的、可执 行的计算机代码。比特币的脚本语言非常简单,仅有256条指令,其中75个是被保留的,尚未被赋予任何含义。比特币脚本中的指令与其他编程语言类似,包含 基本的语法、逻辑,除此之外还包括一些加密指令,如哈希函数、签名验证等。

比特币的多重签名技术就是使用脚本实现可编程交易的一个典型例子。其基本原理是,在系统里创建一个由多个人共同管理的账户,只有达到事先约定数量的人的同意,才能动用该账户的钱,并且这个过程是由系统本身保障执行的,不需要任何第三方介入。

一般来说,一个比特币地址对应一个私钥[1], 动用这个地址中的资金只需要该私钥的掌握者单独发起签名即可。而多重签名技术就是需要多个私钥的共同签名才能动用一笔资金。比如说,某笔资金对应3个私 钥,而必须至少有其中任意2个私钥参与签名才能动用,只有1个私钥参与签名是无效的。这个2/3可以推广到任意的m/n,比如3/5、4/7、6/11 等,当然m要小于等于n。

多重签名技术有着广泛的应用空间,一个最直观的场景就是类似于支付宝的应用,卖家、买家和作为担保的第三方可以构 建一个多重签名的交易,约定其中至少两方取得一致才能决定资金的流向。其他容易想到的应用场景还有:更安全的在线钱包、共同财产、合伙经营、资金监管等。 以上构想的场景都是比较简单的,具体实践中一定会有更加灵活丰富的形式。

智能合约

智能合约的理念可以追溯到1994年,几乎与互联网(World Wide Web)同时出现。密码学家尼克·萨博(Nick Szabo)首次提出了“智能合约”这一术语。从本质上讲,智能合约工作原理类似于计算机程序的条件执行语句。当一个预先编好的条件被触发时,智能合约执 行相应的合同条款。由于区块链的可编程性,因此智能合约在区块链和数字货币上的应用是水到渠成的事情。

举一个简单的例子,以西甲国家德比为例。假如你赌皇马赢,下注一个比特币,你的朋友赌巴萨赢,下同样的注。比赛开始前,你和你的朋友将你们的比特币发送到一个由智能合约控制的中立账户。比赛结束后,智能合约能够根据比赛结果,自动地将相应的资金发送到赢家的账户。

再比如网上购物,如果你从网上买了某商品,但不想立即付款给卖家,希望等到发货后再付款。这时你可以创建一个合约,这个合约可以自动查询快递的物流数据,当确认你购买的商品已经发出时,才给卖家发送货款。

以上只是简单的解释和举例,智能合约是计算机程序,所以很容易应用于其他需要的场景——增加更加细致的控制条件, 完成更复杂的执行逻辑。这有点类似传统的合同,我们也可以认为,智能合约就是把合同以代码的形式搬到了区块链上,但这就带来了根本的区别:它不需要任何人 监督合同的执行,订立合同的双方也无法在合同完成前单方面违约,一切都是按合同的约定自动执行的。相信随着区块链的普及和交易智能化的发展,它将会对未来 的交易模式与商业结构带来巨大的影响。

从具体的实践来看,由于比特币的脚本语言并不是图灵完备[2]的,所以在扩展性上,比特币区块链目前所支持的资产定义和交易模式还比较有限。

因此,业内一些人开始尝试开发不同于比特币区块链的、支持图灵完备脚本语言的区块链,以太坊(Ethereum)就是一个典型的例子。目前,以太坊上的代币以太币(ETH)的市值已经达到了比特币的1/10,成为全球市值排名第二的数字货币[3]

[1] 其技术细节会在第5 章详述。

[2] 所谓图灵完备,是指语言可以做到用图灵机做到的所有事情,可以解决所有的可计算问题。图灵不完备的语言常常是因为循环或递归受限,无法实现类似数组或列表的数据结构,这会导致能写的程序有限。

[3] 截至2016年5月14日,比特币价格为2971元,市值约合461亿人民币,以太币价格为65.9元,市值约合52.7亿人民币。

将区块链连接起来

如果说共识机制与价值载体是区块链内生能力得以扩展的关键,那么以侧链技术为代表的、能够将不同区块链连接起来技术,就是区块链拓展外在结构的关键。

比特币区块链的局限

很多人说比特币是目前区块链最成功的应用,这么说有一定道理,但更贴合实际的说法是:由于在创造比特币时,并没有 现成的、可以支持比特币系统运行的底层技术架构,所以中本聪创造了区块链。也就是说,中本聪创造区块链的初衷是为了实现一个点对点的电子现金系统。因此, 当我们对于区块链的用途有更高的期待时,它的一些局限就体现出来了。

首先,比特币区块链的设计只考虑了比特币的交易,本身并不支持定义其他资产,或是定义复杂的交易逻辑。如果要添加新功能,就要对系统进行升级,然而困难在于,对于比特币这样的完全去中心化的系统,任何改变都需要获得社区的一致同意,以至于快速改变是异常困难的。

其次,大多数改变本身是不必要的甚至是无法达成的,因为更多的灵活性往往意味着复杂度的上升及随之导致的稳定性的下降。考虑到现实需求的多样性,甚至有些需求是相互冲突的,一条区块链注定无法同时满足所有的需求。

比特币的上述局限直接导致了部分竞争币的诞生,这些竞争币采用了不同的区块链,有着各自的特点和创新。但是,由于 缺乏广泛的共识与信任,绝大部分基于新区块链的竞争币并不拥有类似比特币区块链这样在强大的算力保护下的稳定与安全,同时币值的稳定性也普遍较差。更重要 的是,数字资产不能在不同的区块链间直接转移,这导致了价值的孤岛,正如同一个个不能互联互通的“局域网”一样。

侧链技术

为方便数字资产在不同区块链间互相转移,侧链(Sidechain)技术应运而生。简单地说,侧链就像是一条条通路,将不同的区块链互相连接在一起,以实现区块链的扩展。侧链完全独立于比特币区块链,但是这两个账本之间能够“互相操作”,实现交互。

在侧链技术的研究方面,Blockstream是较为领先的一个公司。2014年10月,以亚当·贝克[1]为首的开发团队正式发布了侧链白皮书[2],2015年6月,Blockstream宣布将为其侧链项目发布一个开源代码库和测试环境[3]

侧链白皮书中提出了一种新技术——“楔入式侧链”,通过它可以实现不同区块链间资产的互相转移。由于侧链是独立的系统,因此技术与理念上的创新不会受到主链的局限,即使出现创新失败或者恶意攻击,所受的损害也只限于侧链本身。

本质上,区块链是不同数字价值的载体,而侧链技术则是连接不同区块链的通路。现在还不能断言最终成熟的侧链技术形态,甚至我们也不知道未来真正大规模应用于区块链间连接的技术是否会以“侧链技术”的名义出现,但侧链技术的理念及核心功能的发展与成熟是毋庸置疑的。

[1] 亚当·贝克是英国的密码学专家,哈西现金的发明者,同时也是Blockstream公司的总裁。

[2] 引用自http://www.blockstream.com/sidechains.pdf。

[3] 引用自https://elementsproject.org/。

区块链的未来

通过前面的讲述,相信读者已经对区块链是什么有了基本的了解。接下来大家可能会好奇,基于这些特点,随着区块链技术的进一步发展和普及,未来的区块链会是什么样子呢?

虽然没有人能够预言细节,但是对未来发展的大方向我们却可以有清晰的判断。下面我们分别从经济和技术两个角度着眼,对未来做一个简要的勾勒。

价值互联网

信息不对称(Information Asymmetry)是指参与交易的各方所拥有的可影响交易的信息不同[1]。一般而言,卖家比买家拥有更多关于交易物品的信息。由于互联网的出现,新一代的传播渠道和几乎瞬时的传播速度使人们可以更容易地得到想要的信息。今天,互联网之所以给商业社会带来了深刻的影响,正是由于它打破了信息的不对称。

然而,互联网对于信息不对称的打破还远不够彻底。在互联网上,我们有了统一的信息传输层,但是还没有统一的价值传 输层。因此在进行交易(价值传输)的时候,我们仍然需要依赖大量的中介机构来保证价值的可靠存储和转移。这些中介机构的存在不仅降低了价值传输的效率,也 增加了价值流通的成本。

基于互联网构建统一的价值传输层,即价值互联网的诞生,将是区块链发展及演进的必然结果。价值互联网的诞生将进一 步打破信息不对称的壁垒,让以货币及数字资产为代表的数字化价值无需借助大量的中介机构,就能在全球范围内自由流动。这将让市场效率获得一次质的飞跃,甚 至彻底改变目前的金融与经济格局。

基础协议与分层结构

本质上,互联网同区块链一样,也是个去中心化的网络,并没有一个“互联网中心”存在。不同的是,互联网是一个高效 的信息传输网络,但并不关心信息的所有权,没有内生的、对有价值信息的保护机制;区块链作为一种可以传输所有权的协议,将会基于现有互联网协议架构构建出 新的基础协议层。从这个角度看,区块链(协议)会和TCP/IP协议一样,成为未来互联网的基础协议之一。

另外,区块链的未来将是复杂的,它的复杂性并不是体现在任何一条区块链本身,而是体现在由区块链组成的层级结构 中。正如TCP/IP协议栈的分层结构,不同的层级承载不同的功能。人们在统一的底层协议基础上发展出了各种各样的应用层协议,最终构建出了今天丰富多彩 的互联网。

未来区块链的结构也一定是分层的,不同层级、不同类型的区块链承担着不同的作用。我们认为,未来的区块链也将会在一个统一的底层协议基础上发展出各种各样的应用层协议,从而构建出多样化生态的价值互联网。

颠覆性技术的发展曲线

变革常常更能推动人们抛弃成见,激发全新的思考,区块链的崛起将颠覆人们对很多行业和事物的认知。

然而,对于指数型发展,我们容易形成的误判是高估短期影响、低估长期影响。正如2000年互联网泡沫的崩溃,互联 网从可以改变一切并受到无数资本热捧的状况中瞬间跌入谷底。大家终于发现,互联网并非如此神奇,大多数公司并没有成功依靠互联网构建出有价值的商业模式。 然而,又有多少人能想到,仅仅十几年后,互联网已经深刻地改变了当今商业社会的格局,更改变了我们每个人的生活。

如同互联网的发展一样,区块链这种协议式的、需要大规模协作和参与的颠覆式技术,其崛起的周期将比大多数人预想的要长,而最终影响的范围和深度也会远远超出大多数人的想象。区块链未来发展的过程不会一帆风顺,可能会经历过热甚至泡沫阶段,也可能会经历低谷。但我相信,区块链作为数字化浪潮下一个阶段的核心技术,最终将会构建出多样化生态的价值互联网,从而深刻改变未来商业社会的结构与我们每个人的生活。

[1] 引用自https://en.wikipedia.org/wiki/Information_asymmetry。

本章结语

本章我们在尽量不涉及技术细节的前提下讲述了区块链的相关知识,包括区块链的本质、原理、核心要素以及我们对区块 链发展方向的判断。区块链是一个伟大的发明,由它构建的价值互联网是一片广袤的新大陆,是未曾探索的大海,是刚刚露出水面一角的庞大冰山。不管是区块链技 术还是相关的行业发展,都有无尽的精彩在前方等着我们去发现与开拓。

来源:我是码农,转载请保留出处和链接!

本文链接:http://www.54manong.com/?id=682

'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646208", container: s }); })(); '); (window.slotbydup = window.slotbydup || []).push({ id: "u3646147", container: s }); })();

第1章 区块链是什么相关推荐

  1. 《区块链开发指南》一一第1章 区块链基础

    第1章 区块链基础 区块链究竟是什么?狭义地说,区块链就是比特币的底层技术:不过,经过7年的发展,区块链已经不再"依附于"比特币,而是独立地发展成为了一种革命性的技术,比特币则是区 ...

  2. 区块链入门与去中心化应用实战 之一 第3章 区块链技术核心原理实现

    第3章 区块链技术核心原理实现 建立项目,确定区块结构 实现区块类结构-添加交易 实现创建区块 实现工作量证明 添加节点通信功能 交易接口实现 挖矿接口实现 实现注册节点 实现共识机制

  3. 第三章 区块链技术架构与发展趋势

    第三章 区块链技术架构与发展趋势 整个区块链与密码学大体内容介绍安排如下: https://blog.csdn.net/qq_43479839/article/details/114630163 参考 ...

  4. 区块链技术架构 java_《区块链底层设计Java实战》之第二章区块链架构

    第2 章   区块链架构 会当凌绝顶  一览众山小 正如开篇所言:会当凌绝顶,一览众山小.进入区块链底层开发前,我们需要 了解区块链底层的通用架构是如何设计的,从上而下地审视区块链底层的结构,做 到了 ...

  5. 第四章 区块链共识机制

    第四章 区块链共识机制 1.概述 2.工作量证明共识机制 2.2 交易优先级 2.3 数学难题 2.3.1 数学难题 2.3.2 动态调整难度 2.4 最长链原则 2.5 作用 2.6 缺点 3.其它 ...

  6. 区块链革命 - 第1篇 假如需要变革 - 第2章 区块链经济七大设计原则

    第2章 引导未来:区块链经济七大设计原则 我们现在对区块链的设计原则是建立在对现有互联网的批判.反思之上的,这些原则可能并不是真正的"原则",那现在让们回顾并总结这些原则 计算与通 ...

  7. 第三章 区块链进阶 [18]

    一.简单支付验证(SPV) 简单支付验证(Simplified Payment Verification,简称SPV)是一种无须维护完整的区块链信息,只需要保存所有的区块头部信息即可进行支付验证的技术 ...

  8. 第七章 区块链政策与法规 [32]

    一.各国政府的监管态度 (一)对加密货币的态度 比特币作为区块链技术运用的典型代表,已存在了数年之久,比特币的广泛使用与随之而来产生的影响力已经让各国的立法者无法忽视.各国针对比特币制定 了相应的监管 ...

  9. 区块链技术指南 第一章 区块链和比特币的初体验

    1.1区块链简介 总结 从参与方分类可以分为公有链.联盟链和私有链.从链和链之间的关系可以分为主链和侧链.而且不同的区块链可以形成网络,网络中的区块链可以互联互通,产生互联链的概念. 公有链 公有链是 ...

  10. 区块链入门与去中心化应用实战 之一 第2章 区块链技术的核心概念和原理

    区块链的过去与未来 密码朋克( Cypherpunk ) 维基解密的创始人阿桑奇 BT下载的作者的布莱姆-科恩 WWW的发明者蒂姆伯纳斯-李 区块链前世今生 戴伟发明了B-money,强调点对点交易和 ...

最新文章

  1. 基于linux的java学习,Java学习---Linux总结
  2. 阿里用户体验大师教你如何让产品更加触动人心
  3. 4.使用pnglib读写png图片
  4. microsoft project 出现不能保存为xls文件时可以按照如下方法解决
  5. hashmap大小_调整HashMap的大小:未来的危险
  6. C/C++ OpenCV图像的载入,显示,输出
  7. 将Windows文件挂在到Linux上
  8. qweb加html文件,将本地html文件加载到Pyside QwebVi中
  9. QImage对一般图像的处理
  10. vmware虚拟机扩展磁盘空间
  11. 计算机为什么选择二进制?
  12. python画密度散点图_python散点图密度怎么计算
  13. “数字孪生”语境下的城市:拼图模式与航向之争
  14. 学生信息管理系统——python版(附流程图)
  15. 如何用计算机远程桌面连接不上,手把手教你电脑远程桌面无法连接怎么办
  16. 极速模式下java无法加载_谷歌和360急速模式 下的XMLHttpRequest 的onprogress事件失效...
  17. 克里金插值---MATLAB程序
  18. React项目前端开发总结
  19. TP6助手函数使用示例
  20. 每秒处理10万高并发订单支付系统架构

热门文章

  1. coreldraw梯形校正_有哪些比较好的CDR教程?
  2. ROS2入门教程—录制/回放数据
  3. SPSS-季节性分析
  4. 职工考勤管理信息系统数据库课设_数据库课程设计职工考勤管理信息系统
  5. 从下单到享用,美团外卖背后的分布式架构设计
  6. centos7搭建hexo+nods.j个人博客
  7. GIS 中地图分辨率与比例尺计算公式
  8. 【揭秘Wintel提升win 7系统性能的背后】
  9. 实现折叠工具栏CollapsingToolbarLayout(折叠工具栏布局)
  10. python求均值函数_python求列表平均值函数