姚前:区块链技术的激励相容和博弈论的经济分析
如果说区块链技术的出现是各类信息技术融合带来的“化学反应”,那么,经济机理则是其中的“催化剂”。区块链技术不仅有技术逻辑层上的支撑,还有经济逻辑层上的保障。本文从经济理性人的角度出发,将“无组织”群体行动区分为三个层次,并利用博弈论,基于经济学的视角剖析了区块链技术的激励相容设计,认为通过激励相容的算法规则和相关契约安排,区块链明确各方的经济利益,充分调动各方的积极性,使分布式协同作业真正成为可能。
区块链无法真正实现企业间的“信任传递”,区块链技术在供应链金融风控中的作用仍局限于“记录”
区块链无法真正实现企业间的信任传递,区块链技术在供应链金融风控中的作用仍局限于记录目前供应链金融领域规模最大的是应收账款类融资。从2017年开始,曾经是数字货币圈小众概念的区块链已经形成了席卷全球的风暴。截至2017年末,全球区块链创业公司超过1600家,获得融资的公司分布在全球45个国家和
密码学是区块链的根基,它集成各类密码学原语和方案,同时还应用了P2P网络协议、智能合约等技术。如果说区块链技术的出现是各类信息技术融合带来的“化学反应”,那么,经济机理则是其中的“催化剂”。区块链技术不仅需要技术逻辑层上的支撑,还需要经济逻辑层上的保障,否则难以在“去组织”化的环境下开展分布式协同作业。因此,加密技术与经济机制设计的结合使区块链成为具有巨大潜力的新兴技术,被认为是继大型机、个人电脑、互联网、移动互联网之后计算范式的第五次颠覆式创新,有望重塑人类社会活动形态从目前的信息互联网向价值互联网的转变。
“无组织”群体行动需要经济激励
从Linux的成功案例来看,基于互联网的社区形态和技术的发展,已使得松散的个体可以不通过命令式管理,无组织地自发合作,开展某一项群体行动。一是互联网信息传递的空间泛在性,消除了信息传递的物理局限,极大地拓展了潜在参与者的范围,大大降低了寻找“志同道合”者的成本,分布式协同作业成为可能;二是伴随着移动互联网的普及和大众化,信息传递的即时性越来越强,群体之间的实时沟通和协调更有效率。但是,如果要真正实现去组织化的分布式协同作业,这两点还远远不够,它们仅是技术逻辑层上的基础。既然是生产活动,就须要消耗资源,必然涉及各方的经济利益,激励相容的设计不可或缺。
根据哈维茨(Hurwiez)创立的机制设计理论,在市场经济中每个理性经济人都会有自利的一面,其个人行为会按自利的规则行为行动。如果能有一种制度安排使行为人追求个人利益的行为,正好与企业实现集体价值最大化的目标相吻合,这一制度安排就是激励相容。
企业实践表明,只有贯彻激励相容原则,才能有效地解决个人利益与企业利益之间的矛盾冲突,使个体行为符合企业价值最大化的目标。对于去组织化的分布式协同作业亦是如此。“无利不起早”,经济学的自愿原则以及经济个体对帕累托改进的动机,在加密经济的算法机制中依然成立。
当然,我们也观察到在开源经济和加密经济发展的初始,一些技术极客或创始人的付出并非完全出于经济利益的动机,而是怀着社会理想或者大爱精神,乐于无私合作,无须财务报酬。比如LinusTorvalds崇尚自由软件精神,发起Linux开源软件项目,拒绝商业利益;Nakamoto提出比特币的概念,设计和发布了相应的开源软件,初衷也并非为了追求经济利益。但应注意的是,对于大多数普通人,经济利益仍是最重要的动机。
共识算法使“无组织”群体行动的经济激励显性化
根据经济利益的重要程度,我们可以将“无组织”群体行动分为以下层次:
第一是“非经济利益驱动”的群体行动,如公益活动、慈善活动。这类活动通常不需要参与者付出太多的时间和金钱成本,因此对群体行动的激励相容要求最低。
第二是“潜在经济利益驱动”的群体行动,如社交平台上的主题分享、P2P网络资源分享。这类活动的参与者并没有明确的经济利益诉求,而是持着相互分享、共惠共利的目的,即“我可能在今天从别人的利益出发采取行动,即便此时给我带来一些风险或代价,但我期望的是,别人会记得这一切,并在未来回报我”,经济学将这样非正式的基于社会关系的互惠互利称为“社会资本”。社会资本是一种较为隐蔽的潜在经济利益。
第三是“明确经济利益驱动”的群体行动,也就是本文研究的加密经济的分布式协同作业。应该说,分布式协同作业不一定非得要选择明确经济利益驱动模式,也可以选择潜在经济利益驱动模式,比如Linux等开源项目即是如此。根据常见的自由软件授权方式(GeneralPublic License, GPL),如果使用者在免费取得自由软件的源代码后修改了源代码,那么基于公平互惠的原则,他也必须公开其修改的成果,这实质上就是为了保障潜在经济利益的分享与互惠。但需要注意的是,除了Linux等少数开源项目之外,成功的开源项目相当有限,许多开源项目往往是失败的。原因很简单,开源项目缺乏经济逻辑层上的机制设计,如果不给予活动参与者真正的经济激励,仅依靠人们对自由的热爱和追求以及业余的投入,难以激发出成员有价值的付出。比如,洪流网站(TorrentSites)的点对点文件共享就是个失败的案例。系统旨在让每个下载者在下载的同时也保持着向网络里的其他下载者提供种子(上传已下载的数据)。这是一种基于潜在经济利益——社会资本的设计。而在没有经济激励的情况下,参与者越来越倾向于认为持续上传种子是一件对自己不利的事情,特别是当这一行为会占据电脑里更多的存储空间时,因此失去了继续参与文件共享的兴趣。
在某种意义上,开源项目是一种无明确生产目标、不讲究效率的生产过程,不是一种有效的分布式协同作业。与之不同,区块链技术通过激励相容的算法规则和相关契约安排,明确了各方的经济利益,充分调动了各方的积极性,使有效的分布式协同作业真正成为可能。
区块链“无组织”群体行动和“拜占庭将军问题”
区块链是一种数字账本,是由一个个区块按时序组成的一串链条。一个区块包含两个部分:区块头(BlockHeader)和交易信息部分。区块记录的所有交易通过默克尔树(MerkleTree)组织起来,默克尔树根(Root)的哈希值作为本区块里所有交易的信息被放入区块头。区块头还包含以下字段:前一个区块头的哈希值(或称哈希指针)、本区块的时间戳、高度(从第一个区块开始数,本区块是第几个块)以及其他信息。
在区块链系统开展的分布式协同作业,是众多互不相识的参与者一起对区块的账本信息进行验证、确认和达成共识,形成统一的交易账本。新的区块在经过系统共识验证后被添加到区块链上。由于任何输入端的细微变化都会对哈希函数的输出结果产生较大影响,再加上哈希指针的设计,区块链被认定为是难以篡改的。比如,若有人尝试改写1号区块里的数据,那么存储在2号区块里的1号区块的哈希值将会产生巨大的变化,从而导致2号区块的哈希值随之发生变化,接着又影响存储在3号区块的2号区块的哈希值,以此类推,后续的所有区块数据都会发生变化。所以说,想改动一个区块,必须同时改动该区块后面的所有区块。而对任何一个区块的改动,均须获得共识,这就使得更改一条记录的困难程度按时间的指数倍增加,时间越早的记录越难更改。因此,意图修改一整条已获得系统共识的区块链数据几乎不可能做到。
而攻击主要发生在对新增区块进行验证和共识的过程中,最典型的方式是攻击者从某个区块开始构造一条秘密的区块链,当秘密构造的区块链比当前公开的区块链更长时,将其公开,其他节点将会视其为“正确”的链条,在该链条上继续工作和延长它,使被攻击区块包含的交易被撤销,制造“双花攻击”,从而破坏系统参与者原来达成的共识。
如何在“无组织”的群体中形成共识即是经典的“拜占庭将军问题”:在一个一致意见具有绝对必要性的系统里,如何在缺乏信任机制的情况下,通过一个可信的方法,将一个一致意见同步给所有人?或者说,诚实者如何战胜破坏者,形成一个多数一致的、可信的意见?
经济激励和惩罚为何重要:一个简单的博弈逻辑
传统上,解决“拜占庭将军问题”的算法是BFT(Byzantine Fault Tolerant)算法,其中最著名的是PBFT,该算法是基于消息传递的一致性算法,在弱同步网络下,算法经过三个阶段可以达成一致性。在无法达成一致时,这些阶段会重复进行,直到超时。PBFT算法的优点是收敛速度快、节省资源、具有理论上的安全界(理论上允许不超过1/3的恶意节点存在,即总节点数为3k + 1,其中正常节点超过2k + 1个时,算法可以正常工作)。缺点是随着参与共识节点的增加,通信开销会急剧上升,达成共识的速度则快速下降,难以支撑上万节点规模的分布式系统。尤其是,PBFT假设系统的所有节点是已知的,且节点参与共识首先要获得投票权,因此需要为节点的加入和退出过程设计额外的机制,这不仅增加了协议复杂度和实现难度,还不允许节点自由加入和退出,不符合加密经济的开放性要求。
而区块链技术与BFT算法不同,它通过引入经济激励和惩罚机制,来解决“拜占庭将军问题”。下面通过简单的博弈例子来阐述其中的逻辑。
对于参与共识验证的参与者,存在两种策略是“协作”与“攻击”,选择“协作”即成为诚实者,选择“攻击”即成为攻击者。参与者权衡利弊后选择博弈策略。当参与者发现攻击的收益要高于协作时,参与者选择攻击,否则选择协作。假定攻击没有成本,那么,如果大家都是攻击者,相当于“一拍而散”,双方收益均为负;如果有一方攻击,一方协作,则攻击者获利,协作者受损;如果大家都是协作者,则共赢,收益均为正。假定相应的收益矩阵为表1。对其求解,可以得到纳什均衡解:(协作,协作)和(攻击,攻击)。换言之,参与者可能协作,也可能攻击,因此系统存在安全隐患。
若在此基础上引入激励和惩罚,结果则会发生改变。激励机制是,系统给予协作者一个正向的激励,比如在表1,给予协作者三个单位的正向收益,那么表1的收益矩阵变为表2。此时求解得到的纳什均衡为(协作,协作),即参与者的最优策略均是协作,而不是选择攻击,从而消除了系统的攻击行为。惩罚机制是,系统给予供给者一个负向的惩罚,即攻击须付出一定的成本,比如在表1,对攻击者施予三个单位的惩罚,那么表1的收益矩阵变为表3,得到的纳什均衡解为(协作,协作)。可见,同激励机制一样,惩罚机制也消除了系统的攻击行为。毋庸置疑,若同时施加恰当的激励和惩罚机制,系统的安全性更能得到保障。
工作量证明机制(PoW)的激励相容
Nakamoto(中本聪)提出的工作量证明机制(PoW)同时包含了分布式共识的激励和惩罚机制。
(一)激励机制
如前述所言,区块链是一个公共可见的账本,用来记录交易的历史信息。当一笔新的资产交易被创建时,资产转出方须通过签名脚本来证明自己是资产的合法使用者,并且指定输出脚本来限制未来对本交易的使用者(资产收入方)。如果是合法创建并签名的,则该笔交易现在就是有效的,它将被广播到区块链网络并被传送,每一个收到交易的节点将会首先验证该交易,确保只有有效的交易才会在网络中传播,而无效的交易将会在第一个节点处被废弃,直至抵达挖矿节点。
挖矿节点在验证交易后,会将这些交易添加到自己的内存池中,构建新的区块。在PoW机制,矿工们接着通过反复尝试求解一种基于哈希算法的数学难题来竞争获得记账权,具体而言,矿工不断更换区块头的填充随机数并计算这个区块头信息的哈希值,看其是否小于当前目标值。如果小于,则成功“出块”,随后矿工将这个区块发给它的所有相邻节点。这些节点在接收后进行一系列的检查标准去验证区块的正确性。检查的标准包括区块的数据结构和区块包含的交易合法有效;区块头的哈希值小于目标难度(确认包含足够的工作量证明)等。一旦一个节点验证了一个新的区块,它就会将新的区块连接到累积了最大工作量证明的区块链中,矿工挖矿成功。
在上述过程中,矿工获得两方面奖励:一是代币奖励。矿工构建的新区块中的第一笔交易是一笔特殊交易,称为创币交易或者Coinbase交易。矿工挖矿成功后,将获得这笔新创造的加密代币。在比特币网络,每隔10分钟将一个新的区块添加至链上,每添加一个区块可以获得50枚比特币作为奖励(每四年减半)。二是记账决策权与交易手续费。矿工拥有记账决策权,有权决定将哪些交易添加至新构建的区块,并对收录在区块内的所有交易收取手续费。
(二)惩罚机制
通过惩罚设计,PoW设置了两道门槛:第一道门槛设在矿工竞争记账权的时候,使得矿工不能随便“发言”(新增区块)。一方面,矿工为获得记账权,须不断求解哈希难题,因此付出“不菲”的成本,这一成本是沉没成本,只要矿工想参与“发言”,那么无论他最终能否成功“发言”,他均必须付出这一笔建言成本;另一方面,由于哈希难题的验证要比求解来得简单,对新出区块的验证成本微乎其微,因此只要矿工一错误“发言”(如交易无效、格式不符等),就会很快地被其他节点检测出来废弃掉,他之前付出的建言成本相当于对他的惩罚。
第二道门槛则设在区块被成功添加区块链后的修改,使得矿工不能随意更改区块链。在比特币网络,每2016个区块(大约两周)后,所有客户端把新区块的实际数目与目标数量相比较,并且按照差异的百分比调整目标哈希值,来增加(或减少)产生区块的难度,确保每10分钟 1 块的恒定出块速度。挖矿难度值的提高,增加了攻击的成本。攻击者如果要构造出一条比真实区块链更长的秘密区块链,需要在比特币网络产出6个区块的同时秘密产出7个区块。
截至2018年2月,专业的比特币挖矿机器(以Bitmain生产的AntMiner S9为例)价格为2700美元,这台矿机以2017年2月27日为基准可挖0.0012枚比特币。一台AntMiner S9每天耗电33度,按照居民用电价格计算,大概每天的电费是2.6美元。假定AntMiner S9的折旧年限为3年,可推算每天固定资产折旧为2700/(365*3)=2.5美元,加上耗电费用2.6美元,得到挖出一枚比特币的生产成本为(2.5+2.6)/0.0012=4250美元。那么,无论攻击成功与否,攻击者都要付出4250*7=29750美元,约3万美元的成本,而且这一成本随着挖矿难度的增加不断上升,再加上与诚实者的算力竞争,显然对算力提出了巨大的要求:只有掌握了比特币全网51%算力的攻击者,才可以用这些算力来重新计算已经确认过的区块。
上述两道门槛使得无论是新增还是更改区块,均要付出不菲的成本,尤其是对后者的要求更为苛刻,这就是Nakamoto面对“拜占庭将军问题”的全新思路。从某种意义上来说,PoW机制的“工作量”相当于现代资产交易或拍卖的保证金制度,免除了随意报价,同时还确保了比特币各区块哈希值的唯一性及难以篡改,这正是PoW这一机制设计精巧的地方。
区块链项目Stratis已经宣布与英国最大的线上药店UK Meds达成了合作伙伴关系
区块链项目Stratis已经宣布与英国最大的线上药店UK Meds达成了合作伙伴关系目前,UKMeds每天都会处理多达4000个处方药品订单,通过使用Stratis的区块链,可以确保多个单一处方订单不会被滥用,继而提升整个线上药房行业的安全性。在Stratis区块链上,每位患者都会被分配一个唯一标识符,医生和药房都
姚前:区块链技术的激励相容和博弈论的经济分析
2018-09-19 浏览:38