区块链是当今金融科技领域广泛探讨的热门话题,近年来对这一技术的关注和研究呈现了爆发式的增长态势。一些学者认为它是继大型机、个人电脑、互联网、移动互联网之后计算范式的第五次颠覆式创新。区块链有望像互联网一样彻底重塑人类社会活动形态,并实现从目前的信息互联网向价值互联网的转变。
一、区块链技术的概念、优势与不足
区块链技术是以比特币为代表的数字加密货币体系的核心支撑技术。区块链技术的核心优势是不再需要一个传统的中心化机构,仅通过加密算法、共识机制、时间戳等技术手段,在分布式系统中实现了不依赖于某个信用中心的点对点交易、协调和协作,从而规避中心化机构普遍存在的数据安全,协同效率和风险控制等问题。 区块链技术起源于2008年,狭义的区块链技术是一种按照时间顺序将数据区块以链条的方式组合成特定数据结构,并以密码学方式保证的不可篡改和不可伪造的去中心化共享总账,能够安全存储简单的、有先后关系的、能在系统内验证的数据。广义的区块链技术则是利用加密技术来验证与存储数据、利用分布式共识算法来新增和更新数据、利用运行在区块链上的代码,即智能合约,来保证业务逻辑的自动强制执行的一种全新的多中心化基础架构与分布式计算范式。 与传统技术对比,区块链具有以下四个方面的优势: 一是难以篡改,更加安全。在传统信息系统的安全方案中,安全依赖于层层设防的访问控制。通过区块链技术,记录交易的数据库任何人都可以访问,但由于巧妙的设计并辅以密码学和共识机制,区块链的数据记录方式使得修改某一数据需要变更所有的后续数据记录,难度极大。实践证明,这样一个数据库可以确保市值达千亿美金的比特币,在全球黑客的攻击下,运转稳定。 二是异构多活,可靠性强。区块链每个系统参与方都是一个异地多活节点,是天生的多活系统。如果某个节点遇到网络问题、硬件故障、软件错误或者被黑客控制,均不会影响系统以及其他参与节点。区块链中的节点通过点对点的通信协议进行交互,在保证通信协议一致的情况下不同节点可由不同开发者使用不同的编程语言、不同版本的全节点来处理交易。由此构成的软件异构环境确保了即便某个版本的软件出现问题,区块链的整体网络不会受到影响,这也是其高可用的基石所在。 三是具备智能合约,自动执行。智能合约具有透明可信、自动执行、强制履约的优点。尽管如此,自尼克•萨博1993年提出以来,智能合约始终停留在理念层面。重要原因在于,长久以来没有支持可信代码运行的环境,无法实现自动强制执行。而区块链第一次让智能合约的构想成为现实。 四是网状直接协作机制,更加透明。区块链提供了不同于传统的方法,以对等的方式把参与方连接起来,由参与方共同维护一个系统,参与方职责明确,无需向第三方机构让渡权利,有利于各方更好的开展协作。作为信任机器,区块链有望成为低成本、高效率的一种全新的协作模式,形成更大范围、更低成本的新协同机制。 虽然区块链有上述优点,也很好地达到了比特币的预定设计目标,支撑了比特币系统的正常运行。但也正因为区块链技术早期主要是服务于比特币,在某些方面有着明显的短板和不足。 一是性能和扩展性不能满足要求,从目前的情况来看,区块链的性能问题主要表现为吞吐量及存储带宽远不能满足整个社会的支付需求。同时,比特币随着时间的推移,累积的交易数据越来越大,对于普通电脑的存储来说,这是个不小的负担。如果只是简单提高区块大小来提高吞吐量,比特币很快就会变成只有少数几个大公司能够运行的系统,有违去中心化的设计初衷。在比特币、以太坊等公有链系统中,上述矛盾是系统设计时面临的最大挑战。 在联盟链中,因为参与记账的节点可选可控,最弱节点的能力上限不会太低,并且可以通过资源投入获得改善,再针对性地替换掉共识算法等组件最终获得性能的全方位提升。但作为智能合约基础支撑的联盟链另有考验:智能合约运行时会互相调用并读写区块数据,因此交易的处理时序特别重要,如果只能逐笔进行,这会严重制约节点的处理能力。 二是数据隐私和访问控制有待改进。现有公有链中,各参与方都能够获得完整数据备份,所有数据对于参与方来讲是透明的,无法使参与方仅获取特定信息。比特币通过隔断交易地址和地址持有人真实身份的关联,达到匿名效果。所以虽然能够看到每一笔转账记录的发送方和接受方的地址,但无法对应到现实世界中的具体某个人。对于比特币而言,这样的解决方案也许够用。但如果区块链需要承载更多的业务,比如登记实名资产,又或者通过智能合约实现具体的借款合同,这些合同信息如何保存在区块链上,验证节点在不知晓具体合同信息的情况下如何执行合同等等,目前业内尚未有成熟方案。而这些问题在传统信息系统中并不存在。 三是治理机制有待完善。公有链社区摸索出了“硬分叉”和“软分叉”等升级机制,但遗留问题有待观察。由于公有链不能“关停”,其错误修复也异常棘手,一旦出现问题,尤其是安全漏洞,将非常致命。 实际上,通过放松去中心化这个限制条件,很多问题能找到解决的方案。比如在联盟链这样的多中心系统中,通过关闭系统来升级区块链底层,或者紧急干预,回滚数据等,必要时都是可用的手段,这些手段有助于控制风险、纠正错误。而对于常规代码升级,通过分离代码和数据,结合多层智能合约结构,实现可控的智能合约更替。 互联网近年来的迅猛发展及其与物理世界的深度耦合与强力反馈, 已经根本性地改变了现代社会的生产、生活与管理决策模式。可以预见的是,未来在中心化和去中心化这两个极点之间,将会存在一个新的领域,各种区块链系统拥有不同的非中心化程度,以满足不同场景的特定需求。
二、区块链技术最新的理论和实践进展
随着社区的繁荣,研究的深入,不同应用蓬勃发展,对于区块链技术的局限有了更深刻的认识,在此基础上,针对区块链的一些不足提出了很多解决方案,主要集中在共识机制,性能,隐私和安全,治理机制和跨链技术等方面。 首先来看共识机制。共识是各方对某种陈述达成一致的过程或结果。在博弈论中,每个人都知道的信息称为共有知识,仅是共同知识的一个层次。共同知识还要求每个人都知道别人也知道的信息,以至每个人都知道其他人知道,并且相互认同。以安徒生童话《皇帝的新装》为例,在小孩戳破真相之前,每个人都知道皇帝是裸着的。但这是共有知识,不是共同知识。 区块链技术通过信息广播,交易签名,投票表决的方式,可以巧妙地将共有知识转化为高阶的共同知识。其中,节点签名并广播起到了让其他人知道我知道并认可该区块,从而达成共识获得共同知识的作用。在比特币中,其规则“最长链是全网的有效链”即是一种共同知识,矿工作为经济理性人使用该共同知识来支持高阶信念,对其他矿工的决策进行猜测,最终形成纳什均衡。 有后继研究认为,中本聪原始论文中51%的安全算力假设是有问题的。自私挖矿策略的存在使得比特币的理论安全阈值下降。自私挖矿简单说就是,挖到块后不发布,继续挖,如果挖到第二个块,这时再发布出来。如果在挖第二个块的过程中,有别人挖出的其他块被广播出来,则立刻广播自己之前挖到的块。经过理论测算,如果一个矿工有1/3的算力,则自私挖矿是有利于自己的。因此,基于掌握的算力份额大小,大小矿工的影响力是不同的,需要用新的计算模型求解博弈均衡点。 分布式系统的共识算法研究由来以久,上世纪80年代就开始研究,Lamport提出的Paxos以及后来在此基础上发展出的各种BFT拜占庭容错算法皆属此类,其核心在于通过节点投票达成分布式系统的状态一致性。比特币另辟蹊径,在技术之外叠加经济激励,以共识机制保证系统状态的全局一致。 古典共识机制的问题在于,一旦参与投票节点数量增加后,其共识效率会大幅下降以至于无法使用;中本聪共识机制的问题在于浪费大量能源以及交易确认时间长。 康奈尔和麻省理工的研究员提出了将中本聪共识和BFT类共识进行有机结合的混合共识方案,是一个新的突破方向,有可能兼具两者优点,避免各自缺点。目前这方面的研究还在持续进行中。 技术改进的第二个方面是在隐私和安全方面。在公有链中,需要对交易数据、地址、身份等敏感信息进行保护,同时又能让记账节点验证交易的合法性;对于联盟链,在构建隐私保护方案的同时,需考虑可监管性/授权追踪。可以通过采用高效的零知识证明、承诺、证据不可区分等密码学原语与方案来实现交易身份及内容隐私保护;基于环签名、群签名等密码学方案的隐私保护机制、基于分级证书机制的隐私保护机制也是可选方案;也可通过采用高效的同态加密方案或安全多方计算方案来实现交易内容的隐私保护;还可采用混币机制实现简单的隐私保护。 以太坊自正式运转后发生多次安全事故,其中最大的一次是TheDAO被黑事件。TheDAO是一个由程序代码管理的自治的风险投资基金,共募集了1200万ETH。黑客利用TheDAO智能合约的安全漏洞,从合约管理的ETH中划走360万个ETH。最终以太坊基金会不得不进行分叉以解决该问题。因为社区对分叉的处置手段有不同意见,此次事件后出现了ETH和ETC两种以太坊的区块链,坚持私产不可以任何理由剥夺的人群选择留在了ETC。 TheDAO事件折射出两个问题:一是智能合约尤其是公有链的智能合约的安全问题非常重要,出现漏洞或错误后,无法像中心化系统那样通过关闭系统,集中升级的办法进行修复。而智能合约往往直接管理资金,一旦出现漏洞会直接导致经济损失,因此需要更强的安全措施。目前在这方面的研究热点是把以往应用在芯片设计或者军事控制系统上的形式化验证的方法,应用到智能合约上,以数学证明的方式尽可能避免人为错误。 TheDAO事件还折射出另外一个问题,即现有区块链缺乏一套完善的治理机制,当社区面临重大决策事件时,如何让社区参与进来,以某种机制形成社区意见,最终在区块链上表达出来。这些决策可能是不同的技术升级提案,也可能是TheDAO这样的突发事件处理,或者是该区块链某些基础规则的调整。如果缺乏治理机制,只能通过软分叉或者硬分叉解决问题,最终将导致混乱和分裂。 最近比较有趣的一个趋势是,代币持有者投票的链上治理机制再度作为多目标决策机制兴起。代币持有者的投票有时会用来决定运行网络的超级节点由谁操作,如 EOS、NEO、Lisk 等系统中的委任权益证明(DPOS)机制;有时用来对协议参数进行表决,比如(如以太坊的 Gas 上限);有时用来进行表决或直接实行批量协议升级,如Tezos。在这些例子,投票都是自动进行的,也就是说,协议本身包含了更改验证程序集或更新其自身规则所需的一切逻辑,而且是根据投票结果来自动进行。 链上治理通常被认为具有以下几大主要优势。首先,与比特币所倡导的高度保守的理念不同,它可以迅速发展并接受必要的技术改进。其次,通过建立一个明确的去中心化框架,可以避免非正式治理上的已知缺陷,人们觉得非正式治理太不稳定,又容易出现链分裂,或是变得在事实上过于中心化。最后,链上治理有利于确保流程的贯彻执行,从而提高协调性和公平性,也允许更快的决策。 但代币投票机制饱受诟病的一点是,无论这些机制在何处尝试,其投票者参与度会往往很低。投票参与度低引发了两个问题。首先,投票要取得合法性认可比较困难,因为它只反映了少部分人的意见。其次,仅持有一小部分代币的攻击者就能够左右投票。 此外,有些人认为,链上治理存在风险,因为元系统一旦确定就难以再改变。正如直接写入的代码一样,一旦有缺陷,就会更快也更容易地被利用。同时,链上治理让普通节点运营者对治理的参与变得毫无必要。这使得普通节点运营者无需做任何决定,而只是遵循链上流程所做出的决策。那么当出现财阀式的少数人链上治理时,普通用户利益将会被不相容,有悖公有链的价值观。区块链属于公众,为了公共利益服务。它不是为了让加密货币大户变得更加富有。区块链并不应该由谁来占有,更不用说一小部分超级富豪了。因此,有人反对链上治理。 总体看,关于链上治理机制,仍处于争议和探索的过程中,尚未有统一的意见,需要我们进一步关注和研究。 最后谈谈跨链技术。跨链技术可以理解为连接各区块链的桥梁,满足不同区块链间的资产流转、信息互通、应用协同。当下区块链技术纷繁芜杂,各成一派,彼此之间还无法进行价值和数据的交换。随着行业发展,链与链之间的互操作越来越重要。如果跨链没有解决,各大区块链都将会是孤岛,必定会降低区块链社区的活力,从而限制整个区块链网络和生态系统的发展。 跨链技术可以应用于跨链资产转移、跨链原子交易、跨链数据共享、跨链合约执行以及去中心化交易所等广泛场景,目前有三种技术模式: 一是公证人机制(Notary schemes)。这是中心化或基于多重签名的见证人模式,主要特点是不关注所跨链的结构和共识特性,而是引入一个可信的第三方充当公证人,作为跨链操作的中介。代表性方案是Interledger。 二是侧链/中继(Sidechains/ Relays)。侧链是一种锚定原链的链结构,但并不是原链的分叉,而是从原链的数据流上提取特定的信息,组成一种新的链结构,而中继则是跨链信息交互和传递的渠道。不论是侧链还是中继,作用都是从原链采集数据,扮演着listener的角色。侧链和原链不能直接验证对方块的状态,因为这样会形成循环,但相互只包含轻节点是可行的,相应的验证逻辑可由链协议本身或应用合约实现。一般来说,主链不知道侧链的存在,而侧链必须要知道主链的存在。代表性方案是BTC relay 、RootStock、Polkadot等。 三是哈希锁定(Hash-locking)技术。它在不同链之间设定相互操作的触发器,通常是个待披露明文的随机数的哈希值。哈希值相当于转账暗语,只有拿到这暗语的人,才能获得款项。同时,它还构造了两个退款(Redeem)合约,这两个合约需要双重签名且有时间期限,对方签名,自己未签名,当自己签名时,资产退回原处。其中一个关键技术设计是,制造转账哈希暗语的人的退款合约,在时间期限上要长于另外一个人,由此可保护他的权益。代表性方案是比特币闪电网络。 值得一提的是,跨链技术也得到了一些中央银行的重视。比如日本央行和欧洲央行合作的Stella央行数字货币试验项目,在第二期就着重研究了单链和跨链的DVP解决方案。
三、总结
区块链技术的进展,还有很多方面可以展开阐述,鉴于时间的关系,我就做一个简要的汇报,不当之处,敬请大家批评指正。应该说目前监管者面临的任务也并不轻松,面对不断演进的区块链技术,还需要同步考虑相应的法律法规和技术标准,以加强监管,防范风险。 总结来说,区块链是一种可能成为未来金融基础设施的新兴技术,对其进行深入研究是我国金融科技工作的应有之义。区块链技术有优点,也有缺点,仍在不断发展演进中。目前看,区块链若要实现真正落地,支撑实际业务,在技术层面仍需大量改进工作。 在刚刚召开的全国网络和信息化工作会议上,习近平总书记做了非常重要的讲话,他指出:“核心技术是国之重器,要下定决心保持恒心,找准重心,加速推动信息领域核心技术的突破,要抓产业体系建设,在技术产业政策上共同发力,要遵循技术发展规律做好体系化技术布局,优中选优、重点突破”。习总书记的讲话可谓是语重心长,我们应该清醒意识到,区块链应用在我国是走过弯路的,所以易纲行长也指出要发挥区块链技术的正能量和更好的服务于实体经济。我们必须认真贯彻落实习总书记的重要讲话精神,在核心关键技术上下功夫,不受制于人,同时要促进区块链技术整个市场和生态环境的健康发展。
本文作者为中国人民银行数字货币研究所所长姚前 |