区块链安全问题: 研究现状与展望

区块链安全问题: 研究现状与展望——韩 璇、袁 勇、王飞跃

  • 1 区块链概述
    • 1.1 比特币的工作原理
    • 1.2 区块链的基本概念
    • 1.3 区块链的安全挑战
  • 2 区块链的安全目标
    • 2.1 数据安全
    • 2.2 共识安全
    • 2.3 隐私保护
    • 2.4 智能合约安全
    • 2.5 内容安全
  • 3 区块链的安全性问题
    • 3.1 数据层
      • 3.1.1 量子计算威胁
      • 3.1.2 密钥管理不当
      • 3.1.3 交易关联紧密
      • 3.1.4 代码漏洞
    • 3.2 网络层
      • 3.2.1 P2P 网络安全漏洞
      • 3.2.2 节点的网络拓扑
      • 3.2.3 隐私保护问题
    • 3.3 共识层
      • 3.3.1 安全性证明不完备
      • 3.3.2 安全性假设不可靠
      • 3.3.3 一致性不稳定
      • 3.3.4 扩展性差
      • 3.3.5 初始化难问题
      • 3.3.6 重构困难问题
    • 3.4 激励层
      • 3.4.1 自私挖矿攻击与 Nothing at stake 攻击
      • 3.4.2 扣块攻击
      • 3.4.3 不可持续问题
    • 3.5 合约层
      • 3.5.1 代码漏洞
      • 3.5.2 外部数据源调用问题
      • 3.5.3 形式化验证不完善
      • 3.5.4 隐私保护问题
    • 3.6 应用层
      • 3.6.1 跨链操作难
      • 3.6.2 监管技术缺失
      • 3.6.3 其他攻击
  • 4 区块链的平行安全
  • 5 未来区块链安全方面研究重点
    • 5.1 打破 “不可能三角”
    • 5.2 隐私保护与可控监管
    • 5.3 区块链互联
    • 系统级安全体系
  • 6 结束语

区块链将哈希函数、Merkle 树、工作量证明 (Proof of work, PoW) 等成熟的技术进行重组, 结合公钥 加密、数字签名和零知识证明等密码学技术, 成为一 种全新的分布式基础架构和计算范式.
因为安全问题引发的事件:
2014 年 2 月 28 日, 曾经世界规模最大的比特币交易平 台 Mt.Gox 声称遭受交易延展性攻击 (Transaction malleability attack)[7], 85 万个比特币被盗, 损失估 计约 4.67 亿美元, Mt.Gox 最终破产. 2016 年 6 月 17 日, 黑客利用以太坊智能合约漏洞攻击去中心自 治组织 (Decentralized autonomous organization, DAO) 的众筹项目 The DAO, 导致 300 多万以太币 资产被分离出 The DAO 资金池, 以太坊被迫进行 硬分叉弥补损失. 2017 年 5 月 12 日, 比特币勒索病 毒 WannaCry 在全球范围内爆发, 百余国家遭到袭 击, 其中包括我国部分高校和政府机构网络.

1 区块链概述

1.1 比特币的工作原理

新用户生成公私钥对和地址后加入比特币网络, 可通过挖矿或者他人转账的方式获得比特币. 用户 首先创建并广播交易. 网络中的节点接收交易后, 将该交易转发给相邻的几个节点, 通过泛洪式的传播 机制将交易在整个比特币网络中进行传播. 矿工收 到交易首先进行验证, 若交易有效, 则保存在自己本 地的交易池中, 等待打包成区块; 若交易无效, 则丢 弃. 之后, 矿工按照一定规则从交易池中选取交易, 构造 Merkle 树. 然后将当前区块链尾部区块的哈希 值、Merkle 树的根和 PoW 难度作为求解 PoW 的 输入, 通过穷举的方式得到满足条件的随机数, 填充 区块的头部信息. 随后, 矿工将新生成的区块连接到 区块链尾部并广播新区块链, 等待网络节点达成共 识. 其他矿工收到一个或多个新区块链后, 会对新区 块链中的交易、PoW 等进行逐一验证, 并与本地存 储的区块链进行对比. 最终, 诚实的矿工将在最长的 有效区块链上达成共识, 并在尾部继续挖矿.
比特币通过哈希函数将交易区块按时间顺序前 后相连, 形成链式结构, 区块链结构如图 1 所示
区块链安全问题: 研究现状与展望_第1张图片

1.2 区块链的基本概念

从应用角度来看, 区 块链是一种集成了密码学算法、分布式网络、共识 机制、博弈论等技术的复合分布式网络技术, 利用链 式区块结构存储数据, 利用共识机制实现交易的更 新和共享, 利用密码学技术保证交易的安全性, 利用 自动化脚本代码实现可编程性和自治性, 利用经济 学激励机制激发节点自主维护系统稳定, 构成了一 种全新的、自治的分布式基础架构与计算范式。英国央行联合伦敦大 学提出的法定数字货币框架 RSCoin 方案是典型的 许可区块链[20], 由央行作为中心节点负责身份认证、 下层节点分组和区块链数据整合等操作, 现已进入 实验测试阶段.

1.3 区块链的安全挑战

首先, 区块链面临理论模型与实际网络状况相 差甚远的安全性分析的挑战。
其次, 区块链结构复杂, 缺乏系统级安全评估手 段。
另外, 计算技术的发展为区块链安全性带来威 胁。
最后, 完全去中心的匿名区块链系统缺乏有效 的监管手段, 当攻击者对系统安全性造成威胁、 非法用户利用区块链实施违法行为时, 系统无法对 攻击者和非法用户进行追责.

2 区块链的安全目标

数据安全是 区块链的首要安全目标. 共识安全、智能合约安全、 隐私保护和内容安全等安全目标与数据安全联系紧 密, 是数据安全目标在区块链各层级中的细化, 也是 区块链设计中需要特别考虑的安全要素.
根据网络系统的安全需求, 结合区块链的特点, 区块链系统构建的基本安全目标是通过密码学和网 络安全等技术手段, 保护区块链系统中的数据安全、 共识安全、隐私保护、智能合约安全和内容安全, 各 安全目标之间的关系如图 2 所示.
区块链安全问题: 研究现状与展望_第2张图片数据安全是 区块链的首要安全目标. 共识安全、智能合约安全、 隐私保护和内容安全等安全目标与数据安全联系紧 密, 是数据安全目标在区块链各层级中的细化, 也是 区块链设计中需要特别考虑的安全要素.

2.1 数据安全

本文采用 CIA 信息安全三元组来定义区块链的数据安全, 即保密性 (Confidentiality)、完整性 (Integrity) 和可用性 (Availability)。
保密性: 规定了不同用户对不同数据的访问控 制权限, 仅有权限的用户才可以对数据进行相应的 操作, 信息不能被未授权用户知晓和使用, 引申出隐 私保护性质.
完整性: 是指区块链中的任何数据不能被未经 过授权的用户或者以不可察觉的方式实施伪造、修 改、删除等非法操作.
可用性: 指数据可以在任何时间被有权限的用 户访问和使用. 区块链中的可用性包括四个方面. 首先, 可用性要求区块链具备在遭受攻击时仍然能 够继续提供可靠服务的能力, 需要依赖支持容错的 共识机制和分布式入侵容忍等技术实现. 其次, 可用 性要求当区块链受到攻击导致部分功能受损的情况 下, 具备短时间内修复和重构的能力, 需要依赖网络 的可信重构等技术实现. 另外, 可用性要求区块链可 以提供无差别服务. 即使是新加入网络的节点依旧 可以通过有效方式获取正确的区块链数据, 保证新 节点的数据安全. 可用性亦指用户的访问数据请求 可以在有限时间内得到区块链网络响应, 进一步可 引申出可扩展性的含义. 可扩展性是指区块链具有 高吞吐量、低响应时延, 即使在网络节点规模庞大或 者通信量激增的情况下, 仍能提供稳定的服务.

2.2 共识安全

本文引用比特币 骨干协议中定义的一致性 (Consistency) 和活性 (Liveness) 两个安全属性来衡量和评估区块链的共 识安全.
一致性: 要求任何已经被记录在区块链上并达 成共识的交易都无法更改, 即一旦网络中节点在一条区块链上达成共识, 那么任意攻击者都无法通过 有效手段产生一条区块链分叉, 使得网络中的节点 抛弃原区块链, 在新区块链分叉上达成共识.根据共识机制在 达成共识的过程中是否出现短暂分叉, 一致性又分 为弱一致性和强一致性. 弱一致性是指在网络节点 达成共识的过程中有短暂分叉的出现. 一些情况下, 节点可能会无法立即在两个区块链分叉中做出选择, 形成左右摇摆的情况. 强一致性是指网络中新区块 一旦生成, 网络节点即可判断是否对它达成共识, 不 会出现阶段性分叉.
活性: 要求诚实节点提交的合法数据终将由全 网节点达成共识并被记录在区块链上.活性保证了诚实节点能够 抵抗拒绝服务攻击, 维护区块链持续可靠运行.

2.3 隐私保护

区块链的隐私保护 可划分为身份隐私保护和交易隐私保护.
身份隐私保护: 要求用户的身份信息、物理地 址、IP 地址与区块链上的用户公钥、地址等公开信 息之间是不关联的. 任何未授权节点仅依靠区块链 上公开的数据无法获取有关用户身份的任何信息, 也不能通过网络监听、流量分析等网络技术手段对 用户交易和身份进行追踪.
交易隐私保护: 要求交易本身的数据信息对非 授权节点匿名.

2.4 智能合约安全

根据智能合约的整个生命周期运作流程, 智能 合约安全可以被划分为编写安全和运行安全两部分. 文本安全是实现智能合约稳定运行的第 一步. 智能合约开发人员在编写智能合约之前, 需要 根据实际功能设计完善的合约文本, 避免由合约文 本错误导致智能合约执行异常甚至出现死锁等情况. 代码安全要求智能合约开发人员使用安全成熟的语 言, 严格按照合约文本进行编写, 确保合约代码与合 约文本的一致性, 且代码编译后没有漏洞.
运行安全: 涉及智能合约在实际运行过程中的 安全保护机制, 是智能合约在不可信的区块链环境 中安全运行的重要目标.运行安全指智能合约在执 行过程中一旦出现漏洞甚至被攻击, 不会对节点本 地系统设备造成影响, 也不会使调用该合约的其他 合约或程序执行异常, 包括模块化和隔离运行两方 面. 模块化要求智能合约标准化管理, 具有高内聚低 耦合的特点, 可移植, 可通过接口实现智能合约的安 全调用. 遭受攻击后的异常结果并不会通过合约调 用的方式继续蔓延, 保证了智能合约的可用性. 隔离 运行要求智能合约在虚拟机等隔离环境中运行, 不 能直接运行在参与区块链的节点本地系统上, 防止 运行智能合约的本地操作系统遭受攻击.

2.5 内容安全

内容安全是在数据安全的基础上衍生出来的应 用层安全属性, 要求区块链上传播和存储的数据内 容符合道德规范和法律要求, 防止不良或非法内容 在区块链网络中传播, 保证区块链网络中信息的纯 净度. 由于区块链具 有不可篡改的特点, 一旦非法内容被记录在区块链 上, 将很难被修改或撤销, 也将影响公众和政府对区 块链应用的态度.

3 区块链的安全性问题

3.1 数据层

数据层既规定了交易、区块、链式结构在内的 狭义区块链的数据结构和存储形式等基本模块, 也 包括了关于用户身份、地址的密钥管理机制以及区 块链所需的其他密码学组件等安全模块, 是实现其 他五层功能的基础. 综合数据层各组件特点, 数据层 面临着量子计算威胁、密钥管理不当、交易关联性 紧密和密码组件代码漏洞等安全性问题.

3.1.1 量子计算威胁

尽管现阶段量子计算的研究成果还不能对区块 链中的密码算法构成威胁, 但是从长远看, 区块链 的发展势必要引入可以抵抗量子攻击的加密系统.

3.1.2 密钥管理不当

区块链在金融领域的应用往往涉及数字资产交 易, 直接关系到用户的个人利益, 也容易成为贪心攻 击者的攻击目标. 区块链的不 可篡改性也使得密钥一旦丢失或被盗, 用户将遭受 不可逆转的经济损失, 亟需合理的密钥管理机制.

3.1.3 交易关联紧密

基于区块链的数字货币平台大多使用数字假名, 允许用户拥有多个假名, 但是这种方式仅能提供较 弱的用户身份的匿名性, 交易之间的关联性和交易 金额等信息均公开在区块链上. 一旦用户的一个地
址暴露, 该用户的所有公钥地址都可能被推断出来. 通过交易图谱分析和交易聚类分析[30] 也可以根据 交易的统计特性推断出交易所有者的真实身份.

3.1.4 代码漏洞

一些密码组件在编译的过程中也可能存在缺陷 和漏洞. 交易延展性攻击[36] 就是一种针对数据层代 码漏洞实施的攻击, 利用比特币使用数字签名构造 的交易在编译过程中的延展性, 常被用于针对比特 币交易平台进行攻击.

3.2 网络层

总的来说, 网络层的安全问题主要包括 P2P 网络的安全问题、 网络拓扑被用于攻击以及网络层面的隐私保护问题.

3.2.1 P2P 网络安全漏洞

P2P 网络为对等网络环境中的节点提供一种分 布式、自组织的连接模式, 缺少身份认证、数据验 证、网络安全管理等机制. 攻击者可以自由发布非法 内容, 传播蠕虫、木马、病毒, 甚至实施分布式拒绝 服务攻击 (Distributed denial of service, DDoS)、 路由攻击等, 具有不易检测、传播迅速等特点. 由于 P2P 网络采用不同于 C/S 网络的对等工作模式, 无 法使用防火墙、入侵检测等技术进行有针对性的防 护, 网络中的节点更易遭受攻击. 另外, P2P 网络中 节点也不是完全平等的. 节点的权限会因加入网络 的先后顺序而有所差异. 越先加入网络的节点占据 的资源越多, 越可能限制新加入节点享有的数据资 源和操作权限. 因此, 在 P2P 网络上建立的区块链 也会存在各节点享有资源和权限不均等的情况, 轻 节点容易受到全节点的限制.

3.2.2 节点的网络拓扑

节点的网络拓扑结构会为攻击者寻找攻击目标 并实施攻击创造便利. 攻击者可以采用主动式注入 报文或者被动式监听路由间传输的数据包来监测 网络拓扑结构, 很容易获得目标节点的路由信息并 控制其邻居节点, 进而实施攻击. 日蚀攻击 (Eclipse attack)[16] 就是攻击者利用节点间的拓扑关系实现 网络隔离的一种典型攻击方式. 其基本思想是攻击 者通过网络拓扑控制目标节点的数据传入传出节点, 限制目标节点与外界的数据交互, 甚至将目标节点 与区块链主网络隔离, 使目标节点仅能接收到攻击 者传输的消息, 导致目标节点保存的区块链视图与 主网区块链视图不一致, 破坏局部的一致性。

3.2.3 隐私保护问题

数据层的隐私保护技术利用密码学技术从数据 结构角度为区块链中用户与交易提供了基本的隐私 保护, 却无法避免交易在网络传输中与用户 IP 地址 之间的关联性. 用户创建交易并打包成 IP 数据包, 经过网络路由间传输至整个区块链网络. 攻击者可 以利用监听并追踪 IP 地址的方式推测出交易之间、 交易与公钥地址之间的关系, 破坏了区块链追求的 隐私保护目标.

3.3 共识层

区块链上的 共识机制发展尚不完善, 普遍存在安全性证明不完 备、安全性假设不可靠、扩展性差、一致性不稳定、 初始化和重构难等问题. 不同类型的共识机制还面 临不同的攻击威胁.

3.3.1 安全性证明不完备

由于共识机制下层的网络环境复杂, 新的共识 机制不断涌现, 传统的可证明安全框架无法完全适 用于区块链. 共识机制的安全性面临建模困难、安 全性证明不完备的问题.

3.3.2 安全性假设不可靠

现代密码体制的安全性评估依赖计算复杂性理 论, 常用可证明安全理论将密码体制的安全性归约 到某个公开的数学困难问题上, 如椭圆曲线上的离 散对数问题. 然而, 采用 PoW 和 PoS 的共识机制 的安全性假设并不依赖计算困难问题, 而是依赖所 有的诚实节点所拥有的算力或者权益占多数这类 看似合理的假设. 这些安全性假设在实际应用中 很容易被打破.

3.3.3 一致性不稳定

如何保证共识机制可以持续稳定地实现一致性 是目前共识层的研究重点. 一致性是衡量共识机制 安全性强弱的重要性质.

3.3.4 扩展性差

可扩展性是区块链共识机制研究关注的重要属 性, 是区块链可用性必不可少的一部分[57].

3.3.5 初始化难问题

大量研究关注共识机制实现一致性的过程, 往 往忽略了区块链的初始化问题, 即如何在 P2P 网络 中保证创世块的安全生成. 区块链的初始化直接关 系到后续共识机制的执行过程是否安全可靠, 是保 证共识机制稳定可靠的前提. 区块链一直面临初始 化困难的问题. 目前, 区块链的初始化有两种方式, 一种是依赖 第三方产生创世块, 另一种由现有的、成熟的区块链 自然过渡得到新区块链的创世块.

3.3.6 重构困难问题

共识机制赋予了区块链不可篡改性, 提升了系 统的可信度, 但是也增加了区块链重构的难度. 一旦 出现共识机制的安全性假设被打破、数据层密码组 件被攻破、代码漏洞被利用等严重威胁区块链安全 性的攻击, 在缺少可信第三方或者外界干预的情况 下, 区块链无法有效实现灾难恢复, 无法自动恢复到 被攻击之前的安全状态. 无效数据或违法操作被写 入区块链并执行, 将对用户造成不可弥补的损失, 甚 至影响整个区块链的后续运行. 硬分叉是目前区块链唯一可行的重构方式.

3.4 激励层

在无许可区块链中, 激励层与共识层相互依存, 共同维护区块链系统的安全性与稳定性. 共识机制 设计直接影响激励实体的选取和激励分配策略. 相 应地, 激励机制设计是否合理也关系到共识机制的 安全性和区块链的稳定性.

3.4.1 自私挖矿攻击与 Nothing at stake 攻击

自私挖矿包含多种挖矿策略, 最典型的是当某 PoW 区块链矿工成功生成一个区块后不立即广播, 而是在这个新区块后继续挖矿.
与自私挖矿类似, Nothing at stake 攻击是针对 PoS 激励机制的一种攻击. 由于 PoS 中节点生成区块的成本较低, 当出现区块链分叉时, 为了利益最大 化, 矿工的最佳策略是在两个区块链分叉后均进行 挖矿. 这就使得发起区块链分叉的恶意攻击极容易 成功, 增加了区块链分叉和双重支付的概率.

3.4.2 扣块攻击

矿池降低了个体参与挖矿的成本, 人人都可参 与维护区块链获得奖励收益. 矿池也将节点集结起 来形成算力或权益优势节点, 威胁共识机制的安全 性假设. 矿池间的博弈也对区块链安全性、效率产生 巨大影响. 一些矿池为了获得更高的奖励会利用目 标矿池的奖励分配策略来实施扣块攻击, 通过委派 部分矿工加入到目标矿池贡献无效的工作量, 分得 目标矿池的奖励, 追求矿池整体获得更高的奖励.

3.4.3 不可持续问题

比特币等数字货币的激励机制包含区块奖励和 交易费两部分, 其中占矿工节点主要收益的区块奖 励普遍呈现逐渐减少直至降为 0 的趋势. 随着区块 奖励的降低, 这些区块链必将完全依赖交易费驱动 系统, 面临不可持续的问题.

3.5 合约层

除智能 合约创建者在设计业务逻辑时的文本安全问题以外, 合约层还面临智能合约代码漏洞、外部数据源调用、 缺乏形式化验证、难实现隐私保护等问题.

3.5.1 代码漏洞

由于以太坊采用自制的脚本语言编写智能合约, 尚不成熟, 难以避免出现漏洞。

  1. 交易依赖攻击: 智能合约执行过程中的每次 操作都需要以交易的形式发布状态变量的变更信息, 不同的交易顺序可能会触发不同的状态, 导致不同 的输出结果. 这种智能合约问题被称为交易顺序依 赖. 恶意的矿工甚至故意改变交易执行顺序, 操纵智 能合约的执行. 2) 时间戳依赖攻击: 一些智能合约执行过程中 需要时间戳来提供随机性, 或者作为某些操作的触 发条件. 而网络中节点的本地时间戳略有偏差, 攻击 者可以通过设置区块的时间戳来左右智能合约的执 行, 使结果对自己更有利. 3) 调用栈深度攻击: 以太坊 EVM 设置调用栈 深度为 1024, 攻击者可以先迭代调用合约 1023 次 再发布交易触发该合约, 故意突破调用栈深度限制, 使得合约执行异常. 4) 可重入攻击: 当一个合约调用另一个合约时, 当前执行进程就会停下来等待调用结束, 这就产生 了一个中间状态. 攻击者利用中间状态, 在合约未 执行结束时再次调用合约, 实施可重入攻击. 著名的 The DAO 事件就是攻击者实施可重入攻击, 不断重 复地递归调用 withdrawblance 函数, 取出本该被清零的以太坊账户余额, 窃取大量以太币. 5) 整数溢出攻击: 智能合约中规定了整数的范 围, 难以避免变量、中间计算结果越界, 导致整数溢 出. 程序中仅保存异常结果, 影响智能合约的执行. 6) 操作异常攻击: 智能合约的执行可能需要调 用其他合约, 缺少被调用合约的状态验证或返回值 验证将会对智能合约的执行带来潜在威胁. 部分被 调用合约执行异常, 异常结果可能会传递到调用合 约上, 影响调用合约的执行. 7) Gas 限制: 以太坊规定了交易消耗的 Gas 上 限, 如果超过则交易失效. 如果 Gas 消耗设计不合 理, 则会被攻击者利用实施 DoS 攻击. Extcodesize 和 Suicide 是 DoS 攻击者反复执行降低 Gas 操作 的攻击实例, 最终导致以太坊交易处理速度缓慢, 浪 费了大量交易池硬盘存储资源.

3.5.2 外部数据源调用问题

区块链最初的设计是为了在无可信第三方的情 况下实现安全支付, 仅能对区块链上的数据进行操 作. 区块链和智能合约迫切地需要通过可信技术访 问外部数据, 建立与外部数字世界的连接. 预言机作 为可信实体成为了连接智能合约和 Web API 之间 的桥梁, 却引入了安全问题

3.5.3 形式化验证不完善

以太坊提供的 EVM 具有错综复杂的语义, Solidity 语言尚不成熟, 暴露出来的安全问题直接危害 智能合约的执行和用户的个人数字资产, 需要形式 化验证和程序分析工具对智能合约代码和执行过程 进行分析.

3.5.4 隐私保护问题

以太坊、超级账本项目都是开源的智能合约平 台, 上面支持的智能合约普遍都是公开的. 智能合约 常涉及多用户的参与, 执行也需要用户提供经济激 励, 用户的账户信息、交易、智能合约的状态变量等 信息都公开于整个网络中, 亟需增加隐私保护机制.

3.6 应用层

从当前区块链应用发展来看, 应用层设计面临跨 链操作难、监管技术缺失和应用层攻击等问题.

3.6.1 跨链操作难

面对数量众多的异构区块链应用, 亟需跨链技 术将它们连接起来, 构建互联、互通、互信的区块链 应用网络. 去中心化的区块链无法像传统网络系统 通过中心节点实现互通, 如何实现去中心化区块链 平台间的连接、解决跨链操作的原子性问题是跨链 技术面临的最大挑战.

  1. 公证机制: 通过中间节点资金托管的方式保 证安全支付.
  2. 侧链或中继网络: 将侧链或中继区块链作为 异构区块链间的中介网络, 典型代表有 Cosmos 和 Polkadot 方案.
  3. 哈希时间锁合约: 要求只有在规定时间内给 出正确的哈希值原像的节点才可以使用这笔被锁定 的代币.
  4. 分布式私钥控制: 通过安全多方计算或者门 限密钥分享等方式实现对账户资产的锁定与解锁.

3.6.2 监管技术缺失

比特币和以太坊先后出现的暗网交易、勒索病 毒、数字资产被盗等安全事件引起了社会各界对区 块链平台监管缺失问题的广泛讨论. 监管技术的目 标是对于非法行为的检测、追踪和追责, 从而保证区 块链平台的内容安全. 然而, 区块链去中心化、不可 篡改、匿名等特点却增加了监管机制设置的难度.

3.6.3 其他攻击

在应 用层开发过程中同样存在代码漏洞问题, 尤其在第 三方平台介入的应用场景下, 更容易出现越权漏洞 风险. 钓鱼攻击、中间人攻击、木马劫持等传统网 络攻击手段也会对上层区块链应用构成威胁. 另外, 在有多方参与的区块链应用中, 攻击者可以在个人 权限范围内控制应用软件或硬件, 实施 MATE 攻击 (Man-at-the-end attack)[73], 违反应用层协议规定 或行业规范, 恶意泄露或篡改用户信息, 破坏数据的 保密性与完整性. 在应用层的设计上还需要充分考 虑组织管理上的人员安全, 增强应用层的软件保护.

4 区块链的平行安全

本质上, 区块链的平行安全系统就是以人工 区块链系统作为 “计算实验室”, 利用不同攻击策略 下的人工区块链系统试错实验与理性慎思, 实现真实区块链系统在遭受安全威胁时的实时管理与决策.
区块链的平行安全理论框架如图 5 所示, 其核 心思想是基于ACP 方法来实现区块链系统建模、攻 击模拟实验与辅助决策, 即: 利用人工系统 (A) 方 法对实际区块链系统建模, 能够反映实际系统的运 行状态; 利用计算实验 © 方法, 在人工系统中进行 不同的人工攻击实验、分析和评估, 从而掌握对应 实际区块链系统在各种攻击下的演化规律与应对措 施, 形成完善的 “情景 - 应对” 知识库; 利用平行执 行 § 方法, 通过人工系统和实际系统在相同攻击 下的平行执行与协同演化, 实现对实际区块链系统 的学习与培训、实验与评估、管理与控制.
区块链安全问题: 研究现状与展望_第3张图片

5 未来区块链安全方面研究重点

区块链的创新性在于实现了分布式共识, 其上 运行的智能合约也可实现丰富的业务功能, 具有重 要的研究价值和广阔的应用前景. 尽管区块链的理 论研究和应用发展日新月异, 但是目前区块链体系 架构中的各个层面均存在安全缺陷, 还需要在共识 机制、隐私保护、监管机制、跨链技术等方面进一步 研究探索.

5.1 打破 “不可能三角”

共识机制是保证区块链数据一致性的关键, 也 是影响区块链系统性能效率的主要环节, 在区块链 出现至今的发展历程中, 一直都是学术界和产业界 关注的焦点. 虽然共识机制的研究取得了一些成果, 但是依然面临去中心化、安全性和可扩展性三者不 可兼顾的问题.

5.2 隐私保护与可控监管

隐私保护在开放式网络环境中必不可少. 在区 块链体系架构中, 隐私保护涉及数据层、网络层、合 约层和应用层, 依赖零知识证明、同态加密等密码学 技术、混币技术、Tor 网络等匿名网络通讯技术, 实 现对交易数据、用户身份、智能合约和用户行为信 息的保护.
监管机制是区块链世界与现实社会组织结构之 间重要的衔接点, 有助于拓宽区块链的应用范围, 为 区块链应用平台提供纯净健康的网络环境, 是区块 链应用层架构不可或缺的组件. 未来区块链上的监 管机制设计将从政策规定和技术工具两个层面并行 发展, 关注区块链的内容安全. 国家要加强制定不同 领域区块链应用的合法操作规则和必要的政策约束.

5.3 区块链互联

大量区块链平台分立于区块链生态体系中, 处 于相互独立状态. 众多异构的区块链平台需要有效 的跨链技术实现互联. 然而, 区块链跨链技术普遍存 在效率低的问题. Interledger、Cosmos 等主流跨链 协议也仅能实现跨链的金融支付交易, 协议移植差, 不适用其他应用场景. 虽然 Polkadot 跨链方案支持 更多类型的区块链互联, 但是方案设计尚处于研究 阶段, 不能广泛应用在区块链平台上. 跨链技术在设 计过程中需要更加注意安全性、执行效率和跨链操 作的原子性问题.

系统级安全体系

区块链的发展还需要建立系统级安全体系, 从 整体上提升区块链的安全性, 推动区块链安全标准 化, 为区块链开发和使用提供设计、管理和使用指 南. 区块链系统级安全体系的构建将围绕数据安全、 共识安全、隐私保护、智能合约安全和内容安全等 安全目标, 关注区块链的物理存储、密钥管理、网络 传输、功能应用、机密数据和可控监管等方面的技 术规范和保护措施.

6 结束语

区块链解决了分布式网络中的一致性问题, 颠 覆了依赖可信第三方实现大规模组织管理控制的传 统技术架构, 应用逐渐延伸至金融、物联网、智能制 造等众多领域, 成为全球学术界的研究热点. 区块链 行业风风火火发展的同时, 技术本身存在的共识安 全薄弱、隐私泄露、系统漏洞、监管缺失、扩展性差 等问题正阻碍区块链的发展.

你可能感兴趣的:(论文总结)