来源:区块链技术研究综述:原理、进展与应用
期刊:通信学报。

#blockchain

相当于对区块链先进行一个系统的了解吧

区块链的层次化技术结构。

#未解决的问题

上述文 献虽 然归纳得较为完整,但是都没有从许可链与非许可 链共性技术的角度进行通用的层次结构分析,没有 体现出区块链技术与组网路由、数据结构、同步机 制等已有技术的关联性,且缺少对区块链项目的差 异分析。本文则对有关概念进行区分,探讨了通用 的层次化技术结构及其与已有技术的关联性,并针 对该结构横向分析相关学术研究进展;根据分层结 构对比部分区块链项目的技术选型;最后以智慧城 市场景、边缘计算和人工智能技术为代表介绍区 块链应用研究现状,给出区块链技术挑战与研究 展望。

相关概念

中心化与去中心化

中心化(centralization )与去中心化 (decentralization)最早用来描述社会治理权力的分 布特征。从区块链应用角度出发,中心化是指以单 个组织为枢纽构建信任关系的场景特点。例如,电 子支付场景下用户必须通过银行的信息系统完成 身份验证、信用审查和交易追溯等;电子商务场景 下对端身份的验证必须依靠权威机构下发的数字 证书完成。相反,去中心化是指不依靠单一组织进 行信任构建的场景特点,该场景下每个组织的重要 性基本相同。

加密货币

区块链工作流程

区块链的工作流程主要包含生成区块、共识验证、账本维护

  1. 生成区块。区块链节点收集广播在网络中的 交易——需要记录的数据条目,然后将这些交易打 包成区块——具有特定结构的数据集。

  1. 共识验证。节点将区块广播至网络中,全网 节点接收大量区块后进行顺序的共识和内容的验 证,形成账本——具有特定结构的区块集。

  1. 账本维护。节点长期存储验证通过的账本数 据并提供回溯检验等功能,为上层应用提供账本访 问接口。

区块链类型

非许可链也称为公链(public blockchain),是一种完全开放的区块链,即任何人都可以加入网络 并参与完整的共识记账过程,彼此之间不需要信 任。公链以消耗算力等方式建立全网节点的信任关 系,具备完全去中心化特点的同时也带来资源浪 费、效率低下等问题。公链多应用于比特币等去监 管、匿名化、自由的加密货币场景。(也就是需要权限)

许可链是一种半开放式的区块链,只有指定的成员可以加入网络,且每个成员的参与权各有不 同。许可链往往通过颁发身份证书的方式事先建立 信任关系,具备部分去中心化特点,相比于非许可链拥有更高的效率。进一步,许可链分为联盟链 ( consortium blockchain )和私链(fully private blockchain)。联盟链由多个机构组成的联盟构建, 账本的生成、共识、维护分别由联盟指定的成员参 与完成。在结合区块链与其他技术进行场景创新 时,公链的完全开放与去中心化特性并非必需,其 低效率更无法满足需求,因此联盟链在某些场景中 成为实适用性更强的区块链选型。私链相较联盟链而言中心化程度更高,其数据的产生、共识、维护 过程完全由单个组织掌握,被该组织指定的成员仅具有账本的读取权限。

区块链体系结构

网络层是区块链信 息交互的基础,承载节点间的共识过程和数据传 输,主要包括建立在基础网络之上的对等网络 及其安全机制;数据层包括区块链基本数据结构及其原理;共识层保证节点数据的一致性, 封装各类共识算法和驱动节点共识行为的奖惩 机制;控制层包括沙盒环境、自动化脚本、智 能合约和权限管理等,提供区块链可编程特性, 实现对区块数据、业务数据、组织结构的控制; 应用层包括区块链的相关应用场景和实践案 例,通过调用控制合约提供的接口进行数据交 互,由于该层次不涉及区块链原理,因此在第 5 节中单独介绍。

网络层

网络层关注区块链网络的基础通信方式——对等(P2P, peer-to-peer)网络。对等网络是区别于 “客户端/服务器”服务模式的计算机通信与存储架 构,网络中每个节点既是数据的提供者也是数据的 使用者,节点间通过直接交换实现计算机资源与信 息的共享,因此每个节点地位均等。区块链网络层 由组网结构、通信机制、安全机制组成。其中组网 结构描述节点间的路由和拓扑关系,通信机制用于 实现节点间的信息交互,安全机制涵盖对端安全和 传输安全。

组网结构

对等网络的体系架构可分为无结构对等网络、 结构化对等网络和混合式对等网络[9],根据节点的 逻辑拓扑关系,区块链网络的组网结构也可以划分 为上述 3 种,如图 3 所示。

无结构对等网络是指网络中不存在特殊中继 节点、节点路由表的生成无确定规律、网络拓扑呈 现随机图状的一类对等网络。该类网络结构松散, 设计简洁,具有良好的容错性和匿名性,但由于采 用洪泛机制作为信息传播方式,其可扩展性较差。 典型的协议有 Gnutella 等。

结构化对等网络是指网络中不存在特殊中继 节点、节点间根据特定算法生成路由表、网络拓扑 具有严格规律的一类对等网络。该类网络实现复杂 但可扩展性良好,通过结构化寻址可以精确定位节 点从而实现多样化功能。常见的结构化网络以 DHT (distributed hash table)网络为主,典型的算法有 Chord、Kademlia 等。(有结构能确定唯一路径)

混合式对等网络是指节点通过分布式中继节 点实现全网消息路由的一类对等网络。每个中继节 点维护部分网络节点地址、文件索引等工作,共同 实现数据中继的功能。典型的协议有 Kazza 等。(路径可能不唯一,因为有无结构的成分在里面)

通信机制

通信机制是指区块链网络中各节点间的对等 通信协议,建立在 TCP/UDP 之上,位于计算机网 络协议栈的应用层,如图 4 所示。该机制承载对等 网络的具体交互逻辑,例如节点握手、心跳检测、 交易和区块传播等。由于包含的协议功能不同(例 如基础链接与扩展交互),本文将通信机制细分为 3 个层次:传播层、连接层和交互逻辑层.

传播层实现对等节点间数据的基本传输,包括2 种数据传播方式:单点传播和多点传播。单点传 播是指数据在 2 个已知节点间直接进行传输而不经 过其他节点转发的传播方式;多点传播是指接收数 据的节点通过广播向邻近节点进行数据转发的传 播方式,区块链网络普遍基于 Gossip 协议[10]实现洪 泛传播。连接层用于获取节点信息,监测和改变节 点间连通状态,确保节点间链路的可用性 (availability)。具体而言,连接层协议帮助新加入 节点获取路由表数据,通过定时心跳监测为节点保 持稳定连接,在邻居节点失效等情况下为节点关闭 连接等。交互逻辑层是区块链网络的核心,从主要 流程上看,该层协议承载对等节点间账本数据的同 步、交易和区块数据的传输、数据校验结果的反馈 等信息交互逻辑,除此之外,还为节点选举、共识 算法实施等复杂操作和扩展应用提供消息通路。

安全机制

安全是每个系统必须具备的要素。

以比特币为 代表的非许可链利用其数据层和共识层的机制,依 靠消耗算力的方式保证数据的一致性和有效性,没 有考虑数据传输过程的安全性,反而将其建立在不 可信的透明 P2P 网络上。随着隐私保护需求的提出, 非许可链也采用了一些网络匿名通信方法,例如匿 名网络 Tor(the onion router)通过沿路径的层层数 据加密机制来保护对端身份。许可链对成员的可信 程度有更高的要求,在网络层面采取适当的安全机 制,主要包括身份安全和传输安全两方面。

身份安全是许可链的主要安全需求,保证端到端的可信, 一般采用数字签名技术实现,对节点的全生命周期 (例如节点交互、投票、同步等)进行签名,从而 实现许可链的准入许可。传输安全防止数据在传输 过程中遭到篡改或监听,常采用基于 TLS 的点对点 传输和基于 Hash 算法的数据验证技术。

#网络层研究

研究现状

目前,区块链网络层研究主要集中在 3 个方向: 测量优化、匿名分析与隐私保护、安全防护

随着近年来区块链网络的爆炸式发展以及开 源特点,学术界开始关注大型公有链项目的网络状况,监测并研究它们的特点,研究对象主要为比特 币网络。Decker 等[11]设计和实现测量工具,分析传 播时延数据、协议数据和地址数据,建模分析影响 比特币网络性能的网络层因素,基于此提出各自的 优化方法。Fadhil 等[12]提出基于事件仿真的比特币 网络仿真模型,利用真实测量数据验证模型的有效 性,最后提出优化机制 BCBSN,旨在设立超级节 点降低网络波动。Kaneko 等[13]将区块链节点分为 共识节点和验证节点,其中共识节点采用无结构组 网方式,验证节点采用结构化组网方式,利用不同 组网方式的优点实现网络负载的均衡。

匿名性是加密货币的重要特性之一,但从网络层视角看,区块链的匿名性并不能有效保证,因为 攻击者可以利用监听并追踪 IP 地址的方式推测出 交易之间、交易与公钥地址之间的关系,通过匿名 隐私研究可以主动发掘安全隐患,规避潜在危害。 Koshy 等[14]提出识别比特币地址和 IP 地址之间映 射关系的启发式算法,学习了近 1 000 对可能的映 射关系。Biryukov 等[15]通过监测比特币网络的地址 传播信息来标识节点身份,进而提出一种客户端去 匿名化方法。Venkatakrishnan 等[16-17]从网络拓扑、 传播层协议和作恶模型 3 个方面对比特币网络进行 建模,通过理论分析和仿真实验证明了比特币网络 协议在树形组网结构下仅具备弱匿名性,在此基础 上提出 Dandelion 网络策略以较低的网络开销优化 匿名性,随后又提出 Dandelion++原理,以最优信 息理论保证来抵抗大规模去匿名攻击。

区块链重点关注其数据层和共识层面机制,并 基于普通网络构建开放的互联环境,该方式极易遭 受攻击。为提高区块链网络的安全性,学术界展开 研究并给出了相应的解决方案。Heilman 等[18]对比 特币和以太坊网络实施日蚀攻击(eclipse attack) ——通过屏蔽正确节点从而完全控制特定节点的 信息来源,证实了该攻击的可行性。Apostolaki 等[19] 提出针对比特币网络的 BGP ( border gateway protocal)劫持攻击,通过操纵自治域间路由或拦截 域间流量来制造节点通信阻塞,表明针对关键数据 的沿路攻击可以大大降低区块传播性能。

数据层

“从不同应用信 息的承载方式出发,考虑数据关联性、验证高效性 和信息匿名性需求,可将数据层关键技术分为信息模型、关联验证结构和加密机制 3 类” (曾诗钦;霍如;黄韬;刘江;汪硕;冯伟, 2020, p. 6)

信息模型

交易信息的数据结构?

区块链承载了不同应用的数据(例如支付记 录、审计数据、供应链信息等),而信息模型则是 指节点记录应用信息的逻辑结构,主要包括 UTXO (unspent transaction output)、基于账户和键值对模 型 3 种。

需要说明的是,在大部分区块链网络中, 每个用户均被分配了交易地址,该地址由一对公私 钥生成,使用地址标识用户并通过数字签名的方式 检验交易的有效性.

UTXO:

UTXO 是比特币交易中的核心概念,逐渐演变 为区块链在金融领域应用的主要信息模型,如图 5 所示。每笔交易(Tx)由输入数据(Input)和输出 数据(Output)组成,输出数据为交易金额(Num) 和用户公钥地(Adr),而输入数据为上一笔交易 输出数据的指针(Pointer),直到该比特币的初始交 易由区块链网络向节点发放

基于账户的信息模型以键值对的形式存储数 据,维护着账户当前的有效余额,通过执行交易来 不断更新账户数据。相比于 UTXO,基于账户的信 息模型与银行的储蓄账户类似,更直观和高效.

不管是 UTXO 还是基于账户的信息模型,都建 立在更为通用的键值对模型上,因此为了适应更广 泛的应用场景,键值对模型可直接用于存储业务数 据,表现为表单或集合形式。该模型利于数据的存取并支持更复杂的业务逻辑,但是也存在复杂度高 的问题。

关联验证结构

基本区块结构

区块由区块头(Header)和区块体(Body)两 部分组成,区块体包含一定数量的交易集合;区块 头通过前继散列(PrevHash)维持与上一区块的关 联从而形成链状结构,通过 MKT(MerkleTree)生 成的根散列。(RootHash)快速验证区块体交易集合 的完整性。因此散列算法和 MKT 是关联验证结构 的关键,以下将对此展开介绍。

散列(Hash)算法也称为散列函数,它实现了明 文到密文的不可逆映射;同时,散列算法可以将任意 长度的输入经过变化得到固定长度的输出;最后,即 使元数据有细微差距,变化后的输出也会产生显著不 同。利用散列算法的单向、定长和差异放大的特征, 节点通过比对当前区块头的前继散列即可确定上一 区块内容的正确性,使区块的链状结构得以维系。区块链中常用的散列算法包括 SHA256 等。

MKT 包括根散列、散列分支和交易数据。MKT 首先对交易进行散列运算,再对这些散列值进行分 组散列,最后逐级递归直至根散列。MKT 带来诸 多好处:一方面,对根散列的完整性确定即间接地 实现交易的完整性确认,提升高效性;另一方面, 根据交易的散列路径(例如 Tx1:Hash2、Hash34) 可降低验证某交易存在性的复杂度,若交易总数为N,那么 MKT 可将复杂度由 N 降为 lbN。除此之外, 还有其他数据结构与其配合使用,例如以太坊通过 MPT ( Merkle Patricia tree ) ——PatriciaTrie 和 MerkleTree 混合结构,高效验证其基于账户的信息 模型数据。

此外,区块头中还可根据不同项目需求灵活添 加其他信息,例如添加时间戳为区块链加入时间维 度,形成时序记录**;添加记账节点标识,以维护成 块节点的权益;添加交易数量,进一步提高区块体 数据的安全性。

加密机制

非 对称加密技术是指加密者和解密者利用 2 个不同秘 钥完成加解密,且秘钥之间不能相互推导的加密机 制。常用的非对称加密算法包括 RSA、Elgamal、 背包算法、Rabin、D-H、ECC(椭圆曲线加密算法) 等。

#数据层研究

研究现状

数据层面的研究方向集中在高效验证、匿名分 析、隐私保护 3 个方面。

高效验证的学术问题源于验证数据结构(ADS, authenticated data structure),即利用特定数据结构 快速验证数据的完整性,实际上 MKT 也是其中的 一种。为了适应区块链数据的动态性(dynamical) 并保持良好性能,学术界展开了研究。Reyzin 等 [20] 基于 AV L 树形结构提出 AV L + ,并通过平衡验证路 径、缺省堆栈交易集等机制,简化轻量级节点的区 块头验证过程。Zhang 等 [21] 提出 GEM2-tree 结构, 并对其进行优化提出 GEM2כ-tree 结构,通过分解 单树结构、动态调整节点计算速度、扩展数据索引 等机制降低以太坊节点计算开销。

区块数据直接承载业务信息,因此区块数据的 匿名关联性分析更为直接。Reid 等 [22] 将区块数据建 模为事务网络和用户网络,利用多交易数据的用户 指向性分析成功降低网络复杂度。Meiklejohn 等 [23] 利用启发式聚类方法分析交易数据的流动特性并 对用户进行分组,通过与这些服务的互动来识别主要机构的比特币地址。Awan 等 [24] 使用优势集 (dominant set)方法对区块链交易进行自动分类, 从而提高分析准确率。

隐私保护方面,Saxena 等 [25] 提出复合签名技术 削弱数据的关联性,基于双线性映射中的 Diffie-Hellman 假设保证计算困难性,从而保护用户 隐私。Miers 等 [26] 和 Sasson 等 [27] 提出 Zerocoin 和 Zerocash,在不添加可信方的情况下断开交易间的 联系,最早利用零知识证明(zero-knowledge proof) 技术隐藏交易的输入、输出和金额信息,提高比特 币的匿名性。非对称加密是区块链数据安全的核 心,但在量子计算面前却显得“捉襟见肘”,为此 Yin 等 [28] 利用盆景树模型(bonsai tree)改进晶格签 名技术(lattice-based signature),以保证公私钥的 随机性和安全性,使反量子加密技术适用于区块链 用户地址的生成。

共识层

即拜 占庭错误——相互独立的组件可以做出任意或恶 意的行为,并可能与其他错误组件产生协作,此类 错误在可信分布式计算领域被广泛研究。

PoX 类协议

PoW 也称为 Nakamoto 协议,是比特币及其衍 生项目使用的核心共识协议,如图 7 所示。

该协议在区块链头结构中加入随机数 Nonce, 并设计证明依据:为生成新区块,节点必须计算出 合适的 Nonce 值,使新生成的区块头经过双重SHA256 运算后小于特定阈值。该协议的整体流程 为:全网节点分别计算证明依据,成功求解的节点 确定合法区块并广播,其余节点对合法区块头进行 验证,若验证无误则与本地区块形成链状结构并转 发,最终达到全网共识。PoW 是随机性协议,任何 节点都有可能求出依据,合法区块的不唯一将导致 生成分支链,此时节点根据“最长链原则”选择一 定时间内生成的最长链作为主链而抛弃其余分支 链,从而使各节点数据最终收敛。

PoW 协议采用随机性算力选举机制,实现拜占 庭容错的关键在于记账权的争夺,目前寻找证明依 据的方法只有暴力搜索,其速度完全取决于计算芯 片的性能,因此当诚实节点数量过半,即“诚实算 力”过半时,PoW 便能使合法分支链保持最快的增 长速度,也即保证主链一直是合法的。PoW 是一种 依靠饱和算力竞争纠正拜占庭错误的共识协议,关 注区块产生、传播过程中的拜占庭容错,在保证防 止双花攻击的同时也存在资源浪费、可扩展性差等 问题。

BFT 类协议

PBFT 是 BFT 经典共识协议,其主要流程如 图 8 所示。PBFT 将节点分为主节点和副节点,其 中主节点负责将交易打包成区块,副节点参与验证 和转发,假设作恶节点数量为 f。PBFT 共识主要分 为预准备、准备和接受 3 个阶段,主节点首先收集 交易后排序并提出合法区块提案;其余节点先验证 提案的合法性,然后根据区块内交易顺序依次执行 并将结果摘要组播;各节点收到 2f 个与自身相同的 摘要后便组播接受投票;当节点收到超过 2f+1 个投 票时便存储区块及其产生的新状态

PBFT 协议解决消息传播过程的拜占庭容错, 由于算法复杂度为 O(n2)且存在确定性的主节点选 举规则,PBFT 仅适用于节点数量少的小型许可链 系统。

CFT类协议

Raft[37]是典型的崩溃容错共识协议,以可用性 强著称。Raft 将节点分为跟随节点、候选节点和领 导节点,领导节点负责将交易打包成区块,追随节 点响应领导节点的同步指令,候选节点完成领导节 点的选举工作。当网络运行稳定时,只存在领导节 点和追随节点,领导节点向追随节点推送区块数据 从而实现同步。节点均设置生存时间决定角色变化 周期,领导节点的心跳信息不断重置追随节点的生 存时间,当领导节点发生崩溃时,追随节点自动转 化为候选节点并进入选举流程,实现网络自恢复。 Raft 协议实现崩溃容错的关键在于领导节点的 自选举机制,部分许可链选择降低可信需求,将拜 占庭容错转换为崩溃容错,从而提升共识速度

奖惩机制

奖惩机制包括激励机制与惩罚策略,其中激励 机制是为了弥补节点算力消耗、平衡协议运行收益 比的措施,当节点能够在共识过程中获得收益时才 会进行记账权的争夺,因此激励机制利用经济效益 驱动各共识协议可持续运行。激励机制一般基于价 值均衡理论设计,具有代表性的机制包括 PPLNS、 PPS 等。为了实现收益最大化,节点可能采用不诚 实的运行策略(如扣块攻击、自私挖矿等),损害 了诚实节点的利益,惩罚策略基于博弈论等理论对 节点进行惩罚,从而纠正不端节点的行为,维护共 识可持续性。

#共识层研究

研究现状

随着可扩展性和性能需求的多样化发展,除 了传统的 BFT、CFT 协议和 PoX 协议衍生研究, 还产生了混合型协议(Hybrid)——主要为 PoX 类协议混合以及 PoX-BFT 协议混合。因此本节从 PoX 类、BFT 类以及 Hybrid 类协议归纳共识层研 究进展。

控制层

区块链节点基于对等通信网络与基础数据结 构进行区块交互,通过共识协议实现数据一致,从 而形成了全网统一的账本。控制层是各类应用与账 本产生交互的中枢,如果将账本比作数据库,那么 控制层提供了数据库模型,以及相应封装、操作的 方法。具体而言,控制层由处理模型、控制合约和 执行环境组成。处理模型从区块链系统的角度分析 和描述业务/交易处理方式的差异。控制合约将业务 逻辑转化为交易、区块、账本的具体操作。执行环 境为节点封装通用的运行资源,使区块链具备稳定 的可移植性。

处理模型

账本用于存储全部或部分业务数据,那么依据 该数据的分布特征可将处理模型分为链上 (on-chain)和链下(off-chain)2 种。

链上模型是指业务数据完全存储在账本中,业务逻辑通过账本的直接存取实现数据交互。该模型 的信任基础建立在强关联性的账本结构中,不仅实 现防篡改而且简化了上层控制逻辑,但是过量的资 源消耗与庞大的数据增长使系统的可扩展性达到 瓶颈,因此该模型适用于数据量小、安全性强、去 中心化和透明程度高的业务。

链下模型是指业务数据部分或完全存储在账 本之外,只在账本中存储指针以及其他证明业务数 据存在性、真实性和有效性的数据。该模型以“最 小化信任成本”为准则,将信任基础建立在账本与 链下数据的证明机制中,降低账本构建成本。由于 与公开的账本解耦,该模型具有良好的隐私性和可 拓展性,适用于去中心化程度低、隐私性强、吞吐 量大的业务。

控制合约

区块链中控制合约经历了 2 个发展阶段,首先 是以比特币为代表的非图灵完备的自动化脚本,用 于锁定和解锁基于 UTXO 信息模型的交易,与强关 联账本共同克服了双花等问题,使交易数据具备流 通价值。其次是以以太坊为代表的图灵完备的智能 合约,智能合约是一种基于账本数据自动执行的数 字化合同,由开发者根据需求预先定义,是上层应 用将业务逻辑编译为节点和账本操作集合的关键。 智能合约通过允许相互不信任的参与者在没有可 信第三方的情况下就复杂合同的执行结果达成协 议,使合约具备可编程性,实现业务逻辑的灵活定 义并扩展区块链的使用。

执行环境

执行环境是指执行控制合约所需要的条件,主 要分为原生环境和沙盒环境。原生环境是指合约与 节点系统紧耦合,经过源码编译后直接执行,该方 式下合约能经历完善的静态分析,提高安全性。沙 盒环境为节点运行提供必要的虚拟环境,包括网络 通信、数据存储以及图灵完备的计算/控制环境等, 在虚拟机中运行的合约更新方便、灵活性强,其产 生的漏洞也可能造成损失。

#控制层研究

研究现状

控制层的研究方向主要集中在可扩展性优化 与安全防护 2 个方面。

侧链(side-chain)在比特币主链外构建新的分 类资产链,并使比特币和其他分类资产在多个区块 链之间转移,从而分散了单一链的负荷。

一方面,沙盒环境承载了区块链节点运行条 件,针对虚拟机展开的攻击更为直接;另一方面, 智能合约直接对账本进行操作,其漏洞更易影响业 务运行,因此控制层的安全防护研究成为热点。Luu 等[59]分析了运行于 EVM 中的智能合约安全性,指 出底层平台的分布式语义差异带来的安全问题。 Brent 等[60]提出智能合约安全分析框架 Va n d a l ,将 EVM 字节码转换为语义逻辑关,为分析合约安全 漏洞提供便利。Jiang 等[61]预先定义用于安全漏洞 的特征,然后模拟执行大规模交易,通过分析日志 中的合约行为实现漏洞检测。

技术选型分析

本节将根据前文所述层次化结构对比特 币、以太坊和超级账本 Fabric 项目进行分析,然后 简要介绍其他代表性项目并归纳和对比各项目的 技术选型及特点。

比特币

以太坊
超级账本 Fabric
其他代表性区块链项目

区块链应用研究

智慧城市
边缘计算
人工智能

#未解决的问题 #研究难点 #存储

技术挑战与研究展望

区块链存在“三元悖论”——安全性、扩展性 和去中心化三者不可兼得,只能依靠牺牲一方的效 果来满足另外两方的需求。以比特币为代表的公链 具有较高的安全性和完全去中心化的特点,但是资 源浪费等问题成为拓展性优化的瓶颈。尽管先后 出现了 PoS、BFT 等共识协议优化方案,或侧链、 分片等链上处理模型,或 Plasma、闪电网络等链 下扩展方案,皆是以部分安全性或去中心化为代 价的。因此,如何将区块链更好地推向实际应用 很大程度取决于三元悖论的解决,其中主要有 2 种 思路。

层次优化

网络层主要缺陷在于安全性,可拓展性则有待优化。如何防御以 BGP 劫持为代表的网络攻击将 成为区块链底层网络的安全研究方向[19]。信 息 中 心 网络将重塑区块链基础传输网络,通过请求聚合和 数据缓存减少网内冗余流量并加速通信传输[69]。相 比于数据层和共识层,区块链网络的关注度较低, 但却是影响安全性、可拓展性的基本因素。

数据层的优化空间在于高效性,主要为设计新 的数据验证结构与算法。该方向可以借鉴计算机研 究领域的多种数据结构理论与复杂度优化方法,寻找适合区块链计算方式的结构,甚至设计新的数据 关联结构。实际上相当一部分项目借鉴链式结构的 思想开辟新的道路,例如压缩区块空间的隔离见 证、有向无环图(DAG)中并行关联的纠缠结构 (Tangle),或者 Libra 项目采用的状态树。

共识机制是目前研究的热点也是同时影响三 元特性的最难均衡的层次。PoW 牺牲可拓展性获得 完全去中心化和安全性,PoS 高效的出块方式具备 可扩展性但产生了分叉问题,POA 结合两者做到了 3 种特性的均衡。以此为切入的 Hybrid 类共识配合 奖惩机制的机动调节取得了较好效果,成为共识研 究的过渡手段,但是如何做到三元悖论的真正突破 还有待研究。

控制层面是目前可扩展性研究的热点,其优势 在于不需要改变底层的基础实现,能够在短期内应 用,集中在产业界的区块链项目中。 侧链具有较好 的灵活性但操作复杂度高,分片改进了账本结构但 跨分片交互的安全问题始终存在,而链下处理模型 在安全方面缺少理论分析的支撑。因此,三元悖论 的解决在控制层面具有广泛的研究前景。

深度融合

如果将层次优化称为横向优化,那么深度融合 即为根据场景需求而进行的纵向优化。一方面,不 同场景的三元需求并不相同,例如接入控制不要求 完全去中心化,可扩展性也未遇到瓶颈,因此可采 用 BFT 类算法在小范围构建联盟链。另一方面,区块链应用研究从简单的数据上链转变为链下存储、 链上验证,共识算法从 PoW 转变为场景结合的服 务证明和学习证明,此外,结合 5G 和边缘计算可 将网络和计算功能移至网络边缘,节约终端资源。 这意味着在严格的场景建模下,区块链的层次技术 选型将与场景特点交叉创新、深度融合,具有较为 广阔的研究前景。