区块链一般可以按照其记账的参与者分为公有链、联盟链与私有链。自问世以来,区块链就因其伴随加密货币而生的投机价值与改变信任模式这一金融基石的价值意义而广受关注与讨论。每每提起区块链,多伴随着去信任化、可信的多中心系统等等表述。
本文希望以一个较为技术的视角,讨论区块链究竟让我们相信了什么。
此外,值得关注的是,国家禁止境内加密货币交易所与ICO、一众空气币泡沫破灭之后,许多公有链忌惮于谈“币”,转而以权证、通证等称谓代替。而这些五花八门的措辞实则就是token一词的不同翻译,本质上与“币”并无区别。投机这些token仍然是高风险的,他们的高效执行,或以牺牲比特币的“去中心化”为代价。
关于Libra,并不是区块链保证了其可信度,而是Libra协会成员本身的规模与地位让他们彼此信任,区块链保证了记录的不可篡改与自动执行,公众对于Libra的信任事实上更多来自于对其协会成员的信任。
一、区块链的定义——记账方式与共识机制
许多人认为,区块链这一概念诞生于中本聪2008年公布的比特币论文。然而有趣的是,区块链(block chain)这个词并没有出现在这篇论文之中,即其公认的发明人并未对这个术语给出一个明确的定义,这令区块链成为了一个商务应用中逐渐形成的约定概念,便使得区块链的准确含义与概念范围在很多时候显得含混不清。加之区块链包含的多项技术与其达成共识的算法对于非专业人士略显艰深,通俗化的传播中往往做一些不甚了了的比喻,之后便是立起诸如不可篡改、去中心化、去信任化、匿名化的牌子,将概念用特性替换。
1、狭义的区块链仅包含不可篡改性
为了更好地讲清楚区块链究竟让我们相信了什么,在这里有必要将区块链的概念做一些澄清。
狭义的区块链其实是一种数据结构,即数据在计算机系统中的保存形式。一定时间段的数据被打包进一个区块,这个区块有一个“链条”连接至上一个区块,打包方式与“链条”保证着区块内任何数据如果被篡改,系统便会发现并报错。
这种机制保证了写入区块链的数据一般不会被悄无声息地篡改,只有当整个系统超过50%以上计算能力同意时,区块链才能被部分或全部修正。
可以发现,狭义的区块链只是通过这种独特设计的数据结构,保证了记录内容的不可篡改性,至于去信任、去中心化、匿名性并不涉及
2、特定语境下区块链包含了记账方式、共识机制等
而更广义的区块链概念,即现在一般语境下的区块链,往往包含了记账方式、共识机制两项内容,这二者才是真正决定区块链能否去中心、去信任化的关键内容。
比特币使用了一种特殊的记账方式,UTXO,即unspent transaction output,一般被译作未使用交易输出。日常生活中的账本,账户是主体,即一个账户目前还有多少钱,当一笔交易发生时,交易双方的账户余额发生变动;而UTXO的主体则是币本身,即这个币从它因挖矿产生,先后被哪个账户持有,当一笔交易被发起,需要将参与交易的每一个比特币上溯至其诞生以验证交易的合法性。
这种设计的方式缺点十分明显,回溯使得验证合法性的开销陡增,然而这种设计却使得整个系统具有较强的稳定性。
如果使用传统的基于账户的账本,单次恶意攻击可能导致整个账本发生不可逆转的损失,而UTXO的结构则保证了,单次攻击只会使得最近的若干交易是非法的,下一个诚实的记账节点只需要忽略这部分错误内容从上一个诚实的节点开始记录,攻击造成的影响便可以被有效控制。
UTXO的设计契合了区块链的数据结构与共识机制,但并不意味着UTXO是区块链账本的唯一形式,以太坊在每个区块中都保存了包含所有账户信息的账本,以提高参与记账门槛与些许降低匿名性的代价实现了效率更高的验证方式。
3、共识机制的突破:比特币究竟改变了什么?
而共识机制则是广义区块链的最核心部分,也是中本聪论文所解决的最大问题,即在一个分布式系统中,至少需要多少节点是诚实的才能保证系统稳定运行。在之前的研究中这个阈值是2/3,即如果整个记账系统中1/3或者更多的参与者存在恶意,那么这个系统就会变得不可信任,这一结论被称为拜占庭将军问题,由1982年同名论文提出,在2002年的论文中给出了这一问题可行解。
2/3的阈值在一个所有权统一的网络中适用,即各个节点在主观上不存在恶意,可能的恶意只来自于故障、意外。而比特币试图创建一种适用于陌生个体间的点对点货币,2/3的阈值便显得过高。
中本聪则创造性地提出了工作量证明的信任机制,即当有一笔交易被发起时,交易信息被在全网广播,任何有意于记账的节点都可以将这笔交易打包进自己的区块,同时,记账节点寻找一个随机数字使得自己所记录的区块满足一个系统要求的特征,最先发布合法区块的节点获得区块奖励。
寻找随机数字的过程便是挖矿,而区块奖励便是比特币。整个随机数字的寻找过程是十分艰难的,通过系统自动调节难度,每两个随机数字被找到的时间间隔稳定在10分钟左右,但是这个随机数字的验证是很容易的,所有节点都有足够的计算力在一瞬间验证被挖出的区块是否合法,如果合法后续节点才会继续在这个区块后面挖矿,这个区块记录的交易信息才能被认可,矿工的挖矿奖励才能被兑现。
比特币的共识机制,实际上是通过比特币的价值诱使记账节点去诚实地记账,同时又因为记账权的获得带有随机性且UTXO的记账方式使得单次攻击得逞的概率与收益很低,保证了只需一半以上节点是诚实的情况下,系统便是稳定的。
二、公有链与后续加密货币:提高交易效率付出的代价是什么?
1、比特币绝对公平的代价:高能耗和“被有意设计的低效”
比特币价值飞涨之后其若干设计“缺陷”也成为了众矢之的,其中较为典型的就是其七笔每秒的频率上限、六十分钟的交易等待时间与能源消耗。
目前,每笔比特币交易耗费的电能可以供一个美国家庭使用21.37天,而全年比特币交易的电能消耗相当于奥地利全国用电量。
这一损耗无疑是十分夸张且没必要的,因为挖矿的过程只是单纯的算力竞争,并没有在尝试解决任何现实世界或者数学上的问题。
但是能耗是由工作量证明的共识机制带来,并不是区块链的共同特征,且这种消耗并不是必然的、单调上升的,在初期参与记账的节点很少,挖矿难度低,能耗很小,在2018年比特币币值雪崩时,挖矿难度与能耗也随之下降。
而交易频率低下与延迟时间较长则是在设计之初有意为之,每秒七笔的上限来自于单个记账区块的大小为1MB,而等待60分钟则是因为一个区块的合法性需要后续6个区块进行确认,单个区块产生的时间是10分钟。
增大区块容量或者降低区块产生间隔都可以有效地提升效率,但是这种效率的提升的代价却是参与计算的节点需要更大存储空间与更好的网络设施,为了实现one-CPU-one-vote(一个CPU一票,即每一个参与计算的人,都可以以一个很低的门槛参与到整体的决策)的构想,中本聪将这个门槛设置的足够低。
虽然专用计算芯片与矿池的出现让这种构想沦为空想,但是至今任何一个有兴趣的人仍然可以完整的下载比特币交易历史并监听整个交易以确认系统在诚实有效地运行:因为小区块大间隔的设计让一年的数据上限也不过50多GB,这对于一般的个人电脑硬盘容量也是毫无压力。
比特币的设计构想并不是对于visa或者日常支付系统的取代,它所追求的是一种完全无中心、去信任的点对点价值转移工具,单纯以效率低下否认其价值其实是一种缘木求鱼的行为,但这种设计也和它目前的高币值没有直接联系,其实学者们很难解释清楚比特币如此高币值的价值依托在哪里。
2、后续的加密货币:以远离“去中心化”为代价提高效率
而后续的加密货币也针对比特币这些痛点也做了更多的改进,比如以太坊在初期使用更大的区块,更短(15秒)的区块生成间隔,使得每秒的交易数上限达到15笔,同时实现了可编程性以支持更多功能。
在转型之后,以太坊每秒支持的交易笔数可以达到1000笔每秒。而后续若干雄心勃勃的“第三代区块链”争夺者则往往以每秒万笔、十万笔的交易速度作为卖点。
然而在宣传效率的同时,这些公链的开发者不会告诉公众的是,他们使用的共识机制已经偏离了比特币的工作量证明。
以太坊初期的大区块、小间隔使得节点的入门门槛更高,网络要求与存储要求基本排除了个人参与者,也不太可能在个人电脑上实现对于整个交易网络的监听;而使用权益证明共识机制的后期以太坊,记账权的归属不再依靠算力的比拼,而是根据各个节点持有的以太币的数量,即“有钱者决定”;而EOS使用的代理权益证明则更为极端,在第一阶段所有节点根据持有的EOS币的数量为权重选出21个超级节点,而在第二阶段,所有记账工作由这21个超级节点完成。
虽然教条地认可比特币的设计并不可取,工作量证明、权益证明、代理权益证明等公有链共识机制各有其优缺点,但是必须向公众澄清的是,比特币的绝对公平、绝对去信任是以低下的交易效率、高交易延迟为代价建立的,世界上并没有免费的午餐,权益证明、代理权益证明其实是以变得更加中心化为代价提高了效率,在交易效率比肩Visa的同时,使用者对于核心参与者的信任也需要比肩Visa。
单纯的谈区块链即信任是毫无可取之处的,这也是前文花费诸多笔墨厘清概念的用意。比特币之后的加密货币并没有根本性的创造,共识机制一直是在中心化与效率之间进行权衡,希望本文读者在之后看到一种区块链的产品在宣扬其高效的时候,能够诘问一句,“那么,代价是什么呢?”
3、“通证”即币,公链的运行离不开有价值的token
需要强调的一点是,虽然比特币、以太坊在技术上实现令人激动的创造,但是认可其开创性并不代表着追捧其币值,因为矿池的出现于挖矿专业化已经严重背离了原本的乌托邦设想。
交易所和高杠杆衍生品的出现则使得一干加密货币成为了投机的资产。
更多时候,他们并不像货币那样去与实物或者服务兑换,而是与法币兑换,人们持有他是为了投机需求而不是交易或者储值。
我国已于2017年9月全面禁止了境内的加密货币交易所与ICO,这无疑是保护老百姓利益的正确之举。但个人之间的加密货币交易一直合法存在,仰慕其乌托邦追求与技术创造的人大可买上一小撮聊作试水与收藏,所以也不应存在数字货币孤岛云云的无稽指责。
另一点需要声明的风险是,所有公有链的共识机制都要求“币”的存在与“币”的价值,这两点是不可突破的,但在我国禁止境内加密货币交易所与ICO、一众空气币泡沫破灭之后,许多公有链忌惮于谈“币”,转而以权证、通证等称谓代替。
这些五花八门的措辞其实就是token一词的不同翻译,而在本质上与“币”并无区别,只是在文字游戏上,公有链的发起者不承诺token具有法币价值,并称但这些通证具有价值,否则无论工作量证明还是权益证明及其各自变形都无法有效实现。
投机这些token仍然是高风险的,他们的高效执行,依然是有代价的。其实检验一个公有链创业是否有价值的一个基本原则便是,是否这些功能可以通过中心化的数据库实现;如果去中心化是必要的,它的共识机制是否有足够的效率支撑这些应用;而如果效率足够高,那么我们是否可以足够相信这一应用的发起人。
三、联盟链:信任的来源 使用区块链的必要性与可信的环节
1、联盟链及其与公有链的区别
不同于公有链,联盟链的记账参与者往往需要另外的入门条件,即记账参与者之间存在区块链之外的信任:他们可能有业务的往来,或者在区块链运营的场景上有基本一致的利益。故而公有链上设计精巧的工作量证明、权益证明在这里并不重要,他们只需要使用可行拜占庭容错算法——这个算法效率更高、也不需要token产生,只是要求用外力保证参与者中可信的比例达到2/3以上。
虽然联盟链的记账参与者是有门槛的,但他们提供的服务既可以是在联盟内部优化交易效率,也可以是面向公众提供服务。
2、Libra的可信度更多来自于其成员本身
一个典型的联盟链便是今夏以来备受关注的Libra,虽然它是一种数字货币,但其实与之前一众加密货币大相径庭,其价值来源于资产背书,而交易的记账则由Libra协会成员完成。在Libra的白皮书中明确声明了其使用的共识机制是拜占庭容错,即当协会成员(计划100家,发起时有28个成员,后续有PayPal等退出)中有2/3以上是诚实的,这个系统便可以高效完成。
故而,并不是区块链保证了Libra的可信度,而是Libra协会成员本身的规模与地位让他们彼此信任,区块链保证了记录的不可篡改与自动执行,公众对于Libra的信任事实上应当来自于对其协会成员的信任——毕竟如果这100家成员里面如果有34个或以上毫无信誉可言的公司或者个人,Libra的信任便也无从谈起,即便它依然用区块链作为底层技术,有美元等资产作为价值背书。
故而,联盟链中区块链作为一种技术只能保证记录不能被悄无声息地篡改,而成员间的信任需要外力保持一个2/3的阈值,公众对于联盟链服务的信任,也依托于对联盟成员的信任。
3、从联盟链出发看区块链应用场景
在很多情况下,区块链确实可以改善效率,但就单纯技术的运行效率来讲,其相较于中心化数据库一般是效率更低、开销更大的。使用中心化数据库的成本是保证每一笔交易可信的成本加上中心化数据库运行开销,而使用联盟链的成本则是保证2/3成员是可信的代价加上区块链运营成本,在那些有强力中心可以保证信任的场景下,中心化数据库依然是更好的解决方案,比如日常的货币清算系统,我们对于央行有独一无二、坚不可破的信任,自然也不大需要联盟链的画蛇添足。
那么,对于一个企业,是否要使用区块链替代目前的解决方案,笔者认为一个比较合理的思考流程应该是如下:
首先,这个待解决问题中是否有多方存在,如果只是处理内部事情,大可不必费此周张;
其次,多方中是否有信任问题,且这个信任问题无法通过中心化的信任机制解决,且去中心化的解决方案不会违反相关法律规定,比如地方银行间进行清算使用区块链绕开央行监管或许对于参与银行是有利的,但无疑是违反相关规定的;
最后,区块链实现是否是技术上、成本考量上可行的。既然区块链对于信任这个金融中的基本问题有着重大改变,那么在采用这种变革性技术之前一定要认真思考一系列信任相关的问题,如果不是有的放矢而只是赶一个概念的时髦,那么多半是于自己业务没有实质改进,却使得一众技术提供公司赚得盆满钵满。
而公众对于联盟链的使用也应当有更加谨慎的一步思考。即便联盟链的发起者是足够可信的,但是这个问题可能产生信任危机的环节是否在数据记录上面。比如一款名酒的真伪判别,重点其实不在于区块链记录中它的生产运输数据,也不在于记录者是多方还是酒厂本身——我们信任名牌其实就是信任名牌这个中心本身——而是在于眼前这个酒的实物与数据中数字化的酒是不是一个,这其实更多的涉及的是物联网方面关于芯片嵌入与读取、实体数字化的内容,至于追踪数据是中心化数据库保存还是区块链保存,于普通消费者意义并不大,换言之,作为普通消费者,笔者更愿意为物联网芯片而不是区块链记录买单。绿色食品、进口品、药品等等对于质量、来源存疑的商品,道理类似。
事实上,区块链作为一种底层技术,当它被以联盟链的形式出现,解决的是联盟参与者之间的信任问题,公众作为产品或服务的使用者,其对于产品的信任程度不应当因为这个技术的采用发生较大的变化。好的、合适的应用会在公众接触到的地方无所感受,而大大降低服务提供者、联盟成员的运行成本。这一点有些类似于前些年很火的云计算,现在很少有人再去拿云计算去炒作概念,但事实上许多网络服务公司受益于云计算的发展但不再会摆弄名词宣传,而公众则是以更低的价格获得了相似或者更好的服务,而不是因为某个概念、某种不直接发生联系的底层技术而进行选择。真正成熟妥善的区块链的应用应该也是这样,润物无声,言之有物。
无疑,区块链应当是21世纪初叶最重要的金融相关技术发明之一,妥善利用区块链对于金融基础信任的改变是具有革命性的,这种技术也不遑多让地可以成为国家战略的组成部分,但是其愈重要我们便要愈严谨、愈小心,从确定的、原理性的点出发学习,之后再去小心地应用、发展。
再一次总结本文的若干观点:
对于公有链,其效率与中心化程度存在取舍,提升效率必然使得网络中心化,其发起人的可信度便愈发重要;公有链中的权证(token)和币本质上一致;笔者个人不建议进行加密货币的投资,并认为国家取缔交易所、ICO的决策至今正确且有必要。
对于联盟链,其信任来自于外力保障成员内诚实比例;公众对于联盟链产品的信任应当出于对其成员而非区块链这一技术的信任;企业在使用区块链之前应经过谨慎思考;区块链并不是解决所有信任问题的百灵方,一定先明确可能产生信任问题的环节是否在区块链解决范围之内。