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