科普 | 可编辑区块链:如何清除区块链上的有害数据?
本文来源:AAS自动化学报,作者:袁勇,王飞跃,原题《可编辑区块链: 模型、技术与方法》
可编辑区块链是区块链领域新兴而颇有争议的热点课题,致力于在保障区块链安全可信等良好性质的前提下实现链上数据的可控编辑操作。本文提出了可编辑区块链的工作框架,并从数据修改、删除、插入、过滤和隐藏五个环节详细阐述了可编辑区块链的技术与方法。
图1. 可编辑区块链的研究框架
编辑架构:即单链架构和平行链架构,前者有物理修改和追加修改两类;后者则包括双区块链和双哈希链两类
控制策略:即数据范围、编辑权限、编辑流程和约束规则等要素
值得一提的是,在分布式和去中心化的区块链系统中,真正在所有节点上完全实现修改、删除等编辑操作是不可能实现的。部分区块链节点可以通过单方面地不执行编辑操作、拒绝升级甚至硬分叉等手段来保存修改前的数据。在这些情况下,目前尚缺乏有效手段实现数据的强制编辑。
01
数据修改技术
平行双哈希链:扩展区块结构、使得相邻区块间保留两条哈希链接,数据修改操作仅破坏其中一条哈希链路,如图3所示。
图2. 平行双区块链模式
图3. 平行双哈希链模式
02
数据删除技术
包括本地数据删除和全局数据删除两种类型,前者是指分布式节点可以独立地删除其本地部分数据,以解决持续增长的区块链数据规模导致的存储瓶颈问题,是目前研究的重点;后者则是指分布式节点通过共识算法来共同删除某些链上数据,主要解决清除链上不良信息的问题。
实际上,中本聪在比特币创世论文中已经提出回收磁盘空间RDS和简化支付验证SPV技术来降低区块链账本规模。现有文献中一般采用选择性交易剪枝技术来删除本地数据。然而,本地剪枝可能会导致“公共地悲剧”问题,即“理性”节点总是有动机执行本地数据剪枝,只存储必要数据并在需要时向网络中其他节点请求数据,从而导致区块链因缺乏历史数据而失去信任基础。
03
数据插入技术
重点和难点是如何在去中心化的公有链中插入任意类型的数据,现有文献大多以比特币为原型加以研究。通常有四类数据插入手段,分别将任意数据插入到Coinbase交易、OP_RETURN脚本、P2X类型交易脚本、以及非标准交易脚本(极少数情况)中。
04
数据过滤技术
过滤技术是在数据实际写入到区块链之前,通过技术手段使得矿工在共识过程中过滤和净化上链数据。由于被过滤的数据并没有实际上链,因此不会涉及链上数据修改,也不会破坏区块之间哈希链路的完整性。现有研究的基本思路主要是从提高不良信息上链的技术难度(如基于文本检测的过滤技术)和经济成本两方面展开,以求最大程度上过滤不良信息。
05
数据隐藏技术
特定场景下,链上数据存在明显的数据隐藏需求,目前该领域仅有零星讨论。主要思路包括1)加密需要隐藏的数据;2)将需要隐藏的数据修改为适合公开的数据;以及3)链下存储实际数据,链上仅存储哈希指针等。
作为一个颇受争议的新热点,可编辑区块链领域还存在诸多迫切需要解决的关键问题,包括可编辑性与安全可信的兼容、上下文相关的交易级编辑技术、面向编辑权的冲突与竞争、具有普适性的可编辑技术、以及链上数据的内容安全与监管等。
致谢:感谢本文写作过程中与西安电子科技大学裴庆祺教授、刘雪峰教授和华东师范大学金澈清教授的有益讨论,这些讨论为此文提供了许多思路和启发。
作者简介
袁勇,中国科学院自动化研究所复杂系统管理与控制国家重点实验室副研究员,中国自动化学会区块链专委会主任。主要研究方向为社会计算、计算广告学与区块链。本文通信作者。E-mail: yong.yuan@ia.ac.cn
王飞跃,中国科学院自动化研究所复杂系统管理与控制国家重点实验室主任,国防科技大学军事计算实验与平行系统技术研究中心主任,中国科学院大学中国经济与社会安全研究中心主任,青岛智能产业技术研究院院长。主要研究方向为平系统的方法与应用、社会计算、平行智能以及知识自动化。E-mail: feiyue.wang@ia.ac.cn