收藏 分销(赏)

可编辑区块链的研究现状与挑战.pdf

上传人:自信****多点 文档编号:647561 上传时间:2024-01-23 格式:PDF 页数:23 大小:1.22MB
下载 相关 举报
可编辑区块链的研究现状与挑战.pdf_第1页
第1页 / 共23页
可编辑区块链的研究现状与挑战.pdf_第2页
第2页 / 共23页
可编辑区块链的研究现状与挑战.pdf_第3页
第3页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第 8 卷 第 4 期信 息 安 全 学 报Vol.8 No.42023 年 7 月Journal of Cyber SecurityJuly 2023通讯作者:温金明,博士,研究员,Email:。本课题得到国家自然科学基金(No.11871248、No.12271215、No.61972156、No.61932011),广东省高等学校珠江学者岗位计划资助项目,广东省自然科学基金(No.2021A1515010857),广东省基础与应用基础研究基金联合基金(No.2019B1515120010),广东省重点领域研发项目(No.2020B0101090002),科技部重点研发项目(No.2020

2、YFB1005600)资助。收稿日期:2021-12-24;修改日期:2022-02-21;定稿日期:2023-04-18可编辑区块链的研究现状与挑战罗彬1,温金明1,2,吴永东1,陈洁31暨南大学信息科学技术学院 广州 中国5106322密码科学技术国家重点实验室 北京 中国1008783华东师范大学软件工程学院 上海 中国200062摘要区块链是一种去中心化和不可篡改的数据库,不仅能有效解决需要第三方介入所引发的信任问题,还能保证应用执行过程公平公正。然而,不可篡改性限制了区块链的许多应用。例如,不同机构需要删除区块链上存储的非法数据或对旧数据进行编辑。因此,如何设计一种可编辑的区块链,对

3、链上数据进行合法编辑是拓展区块链应用的一个重要问题。本文旨在对当前主流的可编辑区块链方案进行系统性调查和分析。首先,总结了这些方案提出的时间脉络和编辑操作的统一流程,针对编辑共识、编辑处理和编辑证明三个重要环节,分别从编辑操作的种类、编辑所属权、编辑涉及的链结构、编辑对象粒度、编辑过程使用的数据结构和编辑共识技术六个不同角度对典型方案进行了细粒度分类。其次,概括了每个方案的核心思想、新颖之处和优缺点,并对方案涉及的密码学原语、常用技术和共识机制等重要组成部分进行了全面回顾,包括变色龙哈希函数、秘密共享、委员会选取、激励惩罚机制、工作量证明、权益证明等。再次,根据身份管理、物联网和外包的不同场景

4、需求,分类讨论了几个利用可编辑区块链技术的最新应用方案,以及区块链可编辑功能所产生的潜在价值。最后,指出了目前方案有待完善或尚未解决的问题,这些问题将提供新的研究方向、拓展区块链的应用场景、加速区块链与更多领域结合、促进区块链技术的发展。关键词可编辑区块链;变色龙哈希;投票;共识机制中图法分类号TP311.13DOI号10.19363/J10-1380/tn.2023.07.05State of theArt and Challenges of Redactable BlockchainLUO Bin1,WEN Jinming1,2,WU Yongdong1,CHEN Jie31College

5、 of Information Science and Technology,Jinan University,Guangzhou 510632,China2China State Key Laboratory of Cryptology,Beijing 100878,China3Software Engineering Institute,East China Normal University,Shanghai 200062,ChinaAbstractAs a decentralized and immutable database,blockchain cannot only effec

6、tively solves the trust problemscaused by the need for third-party intervention,but also ensures the fairness and justice of the application executionprocess.However,immutability limits a multitude of applications of blockchain.For example,different institutions need todelete illegal data stored on

7、the blockchain or edit old data.Therefore,how to design a redactable blockchain and legallyredact the data on the blockchain is an important problem for expanding the application of blockchain.This article aims tosystematically investigate and analyze the current redactable blockchain schemes.Firstl

8、y,the timeline of these schemesand the unified process of redacting operations are summarized.Aiming at the three important segments of redactingconsensus,redacting processing,and redacting proof,the typical schemes are classified in fine-grained from six differentperspectives:redacting operation ty

9、pe,redacting right ownership,chain structure involved in redacting,redacting objectgranularity,the data structure used in the redacting process and redacting consensus technology.Secondly,this articlesummarizes the main idea,novelty,advantages,and disadvantages of each scheme,and comprehensively rev

10、iews theimportant components of these schemes,such as cryptography primitives,common technologies,and consensusmechanisms,including chameleon hash function,secret sharing,committee selection,incentive,and punishmentmechanisms,proof of work and proof of stake,etc.Thirdly,according to the different ap

11、plication requirements of identitymanagement,the Internet of Things,and outsourcing,several latest application schemes using redactable blockchaintechnology and the potential value generated by the redactable function of blockchain are classified and discussed.Finally,we present some open problems t

12、hat need to be improved or not solved in the current schemes,which may lead to newresearch directions,expand the application scenarios of blockchain,accelerate the combination of blockchain and morefields,and promote the development of blockchain technology.罗彬 等:可编辑区块链的研究现状与挑战63Key wordsredactable b

13、lockchain;chameleon hash;e-voting;consensus1引言区块链是比特币的底层核心技术,可以看作是一种由包含交易信息的区块有序链接起来的数据结构,通常被视为一个公开账本。它也是在分布式、不可信环境中,所有节点通过点对点网络执行某种共识机制,就公共账本的交易状态达成一致的技术。区块链一般具有以下几个特点:去中心化、公开透明性以及不可篡改性,其中去中心化和不可篡改性是区别于其他技术最重要的性质,赋予了大众对区块链技术的信任,工商业界也在考虑把区块链技术部署到更多实际应用中,如医疗1、物流2、政务3等,同时区块链作为又一次产业革命的新兴要素,有助于打造未来数字经济生

14、态。1.1研究需求和意义近几年,随着区块链应用的不断落地,越来越多案例表明不可篡改性具有两面性:它虽然保障了区块链数据的安全和可信,但也在一定程度上限制了区块链的应用。例如,在许多业务中存在纠正错误数据或删除过时数据的需求,然而区块链的不可篡改性阻碍了这一功能的实现。此外,如果恶意方在区块链中存储了一些不恰当的内容,如非法图片、文件、恶意言语等,这些会给社会造成不良舆论,也会给区块链的数据安全带来负面影响。因此,虽然区块链的不可篡改性对其安全有着重要作用,但是该性质也限制了区块链的应用场景,如政府、服务商需要对存储的公民和用户数据进行管理。如果区块链不可编辑,那么即使公民和用户的数据资料出现错

15、误也不能更改,无法在原位对数据纠错;另一方面,随着区块链的发展,其所需的存储空间也在不断增长,如果任何数据都被允许永久保留在链上而不修剪的话,可能导致拥有较弱硬件设备的用户无法使用区块链的相关应用;其次,在智能合约中,如果后期发现合约存在漏洞,现有方法只能通过硬分叉进行漏洞修复4,这不仅会影响其他交易的结果,而且不利于区块链系统的稳定;在信息管理方面,近些年报道了在区块链中,特别是在比特币中,存在着一些非法数据,包括图片、链接、文档等5,由于区块链的不可篡改性使得去除非法数据变得几乎不可能;再者在隐私保护方面,欧盟的 数 据 保 护 通 用 条 例(General Data Protectio

16、nRegulation,GDPR)等法规的发布,要求赋予公民遗忘权(The Right To Be Forgotten),然而目前的区块链因不可篡改性是无法满足这些法规的要求6。综上,针对许多应用场景,有待提出一种安全可控和高效编辑区块链数据的方案。1.2区块链编辑技术可编辑区块链是一类具有编辑链上数据功能的区块链,其编辑操作主要针对区块链的不可篡改性。即在不破坏区块链的其他性质且满足一定条件时,实现链上数据的删除、修改、插入操作。第一个可编辑方案是在 2017 年由 Ateniese 等人提出7,该方案使用变色龙哈希函数代替了区块链原本的哈希函数,在保持哈希值不变的情况下能够修改区块链数据,

17、但由于变色龙哈希函数陷门的存在,引入了密钥管理问题。此外,该方案使用安全多方计算和秘密共享等一些复杂的密码学技术,会带来高昂的通信开销,不适合应用在大规模的公链场景。2019 年Deuber 等人基于投票机制在公链上提出了可编辑方案8,该方案没有使用复杂的密码学工具,只是在区块中增加一个“旧状态”来维持哈希链的完整,但方案中是以区块为单位进行修改,而不是更加细粒度的交易级修改,且缺乏对编辑权的限制。最近 Tian等人提出了在公链中细粒度的重写方案9,方案主要使用了基于密钥策略的属性基加密实现对编辑权限的控制,与之前方案相比在公开问责方面有所改进,然而该方案中没有经过交易拥有者同意也可以修改数据

18、,可能存在恶意修改者对数据进行任意修改,而且仍存在密钥管理问题。在过去的 5 年中,区块链的可编辑技术作为新兴的研究方向,针对目前可编辑方案的缺陷,学者们致力于研究一种安全、可控、高效的编辑方法来插入、删除和修改区块链中的数据,同时不会影响区块链的完整性。他们先后提出了一些可编辑区块链的方案,图1 展示了不同类型的可编辑区块链方案提出的时间表,包括基于变色龙哈希和基于投票的方案。在本文中,我们依据可编辑区块链的几个特征,对这些方案进行了分类,如图 2 所示。一般来说,我们大致可从六个角度对它们进行分类:编辑操作种类、编辑所属权、编辑涉及的链结构、编辑对象粒度、编辑过程使用的数据结构、编辑共识技

19、术。此外,我们根据目前的可编辑区块链方案,概括出其总体流程如图 3 所示。具体来说,主要分为以下五个步骤:64Journal of Cyber Security 信息安全学报,2023年7月,第8卷,第4期图 1近五年可编辑区块链发展的时间表Figure 1Development schedule of redactable blockchain in recent five year图 2可编辑区块链研究分类Figure 2Classification of redactable blockchain scheme图 3可编辑区块链方案的总体流程Figure 3The overall pro

20、cess of redactable blockchain scheme罗彬 等:可编辑区块链的研究现状与挑战651)区块链用户提出编辑请求。通常请求包括编辑交易或编辑区块的索引、编辑后交易或区块的内容、编辑操作的种类以及其他附加元素。不同方案对提出编辑请求的用户身份具有不同要求,比如在非许可链中可以是区块链系统中的任何用户,而在许可链中可能只是交易拥有者或其指定的用户等。2)拥有编辑权的用户(编辑者)对请求进行验证和编辑共识。当编辑者收到编辑请求时,首先依据指定策略对请求内容进行验证,若验证通过,则在编辑者之间对是否同意该编辑请求进行共识。3)在达成共识后,编辑者根据编辑请求的内容处理链上数

21、据。一般根据编辑类型和对象,在编辑处理的过程中采用不同的方法对数据进行编辑。4)为了区分未编辑和已编辑的数据,编辑者在链上需要加入相应的编辑证明,必要时会借助辅助结构。5)在编辑操作完成后编辑者会向全网广播新链。当每个节点收到更新消息时,依据策略对消息内容进行验证,验证通过后更新自己的本地区块链。1.3相关工作Politou 等人的可编辑区块链综述10侧重于遗忘权问题,回顾了几个可编辑区块链的解决方案7-8,11-12和一些密码学技术13,并讨论了在许可或无许可区块链中应用它们的潜力和局限性。但文章并没有把几个可编辑区块链方案进行系统分类讨论,也没有提供今后可能的研究方向或有待解决的问题。Yu

22、an等人的综述14提出了可编辑区块链的工作框架,并从数据修改、删除、插入、过滤和隐藏五个环节阐述可编辑区块链的技术与方法,讨论了该领域亟待解决的一些问题。虽然文章对现有可编辑区块链方案进行了分类讨论,但主要针对的是编辑操作的类型这一角度,没有从编辑使用的数据结构等更多角度对可编辑方案进行探讨。Zhang 等人的综述15把目前区块链编辑机制分为四类,分析了每一类的安全和性能,总结了在区块链中编辑数据的典型方法,讨论了设计可编辑方案的挑战,并提出一系列评估标准。但是文章给出四类修改机制中不包括插入操作,并且也没有对可编辑区块链技术的相关应用案例进行讨论。一方面,目前的综述文献中明显缺乏对现有可编辑

23、区块链方案涉及的共识机制的回顾,以及对方案更加细粒度的分类与讨论。另一方面,若从应用场景的角度对可编辑方案的实现进行充分探讨,会有利于可编辑技术的发展,但现有的综述文章没有讨论可编辑区块链的应用方案,例如将区块链的可编辑操作应用在指纹识别系统16,其中利用变色龙哈希函数对链上数据进行编辑。特别是如图 1 所示,变色龙哈希函数作为可编辑区块链的重要密码学工具,近几年来在密码学界中发展迅速17,为可编辑区块链方案的安全性和实用性提供了可靠保证。总的来说,现有的综述没有提供统一的编辑流程,也没有对先进的可编辑区块链的应用案例、相关的共识机制和密码学工具进行详细分类和讨论,我们这篇综述的主要目的就是填

24、补上述不足之处,针对区块链的可编辑技术进行总结归纳。本文和上述讨论的可编辑区块链综述文章的对比如表 1 所示。表 1本文和现有可编辑区块链综述文章的对比Table 1Comparison between this article and existing redactable blockchain overview articles文章是否进行分类讨论是否提供未来可能的研究方向是否讨论密码学技术是否提供编辑方案的统一流程是否讨论应用方案是否讨论共识机制Politou10Yuan14Zhang15本文1.4贡献和文章组织在本文中,我们填补了上述综述中的空白,总结了目前可编辑区块链方案的统一流程,

25、针对其中三个重要环节对方案进行了细粒度分类,给出了相应的代表方案,分析各自的核心思想、创新点以及优缺点,并对可编辑区块链涉及的密码学工具、常用技术、共识机制等方面进行全面的回顾和讨论,这些技术是可编辑方案的重要组成部分。此外,我们还讨论了区块链的可编辑功能所带来的潜在应用价值,总结目前方案尚待解决或需要完善的问题,为相关研究人员提供新的见解和未来可能的研究方向,以拓展区块链的使用场景,实现更实用的区块链解决方案。本文的其余部分组织如下:第 2 节介绍了可编辑区块链的预备知识,包括相关密码学工具、方案常用的技术等。第 3 节从编辑共识、编辑处理、编辑66Journal of Cyber Secu

26、rity 信息安全学报,2023年7月,第8卷,第4期证明这三个重要环节对目前可编辑区块链方案进行分类讨论。在第 4 节中,我们分析了使用可编辑区块链的几个应用场景。最后,第 5 节总结了目前方案有待完善或解决的问题,并讨论潜在的研究方向。2预备知识2.1可编辑区块链涉及的密码学原语密码学技术作为区块链的基石,为其安全性提供了保障。其中哈希函数是区块链中最基础,也是最核心的一个密码学技术,它能将任意长度的字符串转化为固定长度的输出,对其输入的微小改动也会导致输出结果的显著变化,所以通常用于维护区块链数据的完整性和实现认证功能,是区块链数据不可篡改的重要保障。本节主要介绍目前可编辑区块链方案中涉

27、及的一些常用密码学原语,包括变色龙哈希函数、秘密共享、安全多方计算、数字签名及它的拓展等。2.1.1变色龙哈希函数变色龙哈希函数变色龙哈希函数(Chameleon Hash Function)是由Krawczyk 和 Rabin 提出的一种带陷门的单向哈希函数18,粗略的说变色龙哈希函数的原理是:给定一个消息 m 及其哈希值 H(m),如果没有陷门则很难找到 m 的哈希碰撞,但若知道陷门,那么持有陷门的实体可以有效地找到消息 m 的碰撞,即可以找到 m使得 H(m)=H(m)。文献20给出了正式定义,一个变色龙哈希函数通常包含以下五个算法:1)?CHPG?1?:公共参数生成算法 CHPG 以安

28、全参数作为输入,输出一个公共参数 pp,该公共参数作为其他算法的隐式输入;2)?,?CHKG?:密 钥 对 生 成 算 法CHKG 以公共参数 pp 作为输入,输出一对变色龙哈希的公私钥 pk 和 sk,其中私钥 sk 也叫做陷门;3)?,?CHash?,?:变色龙哈希生成算法CHash 以公钥 pk 和消息 m 作为输入,输出变色龙哈希值 h 和随机数 r;4)?CHV?,?,?,?:哈希验证算法 CHV 以变色龙哈希的公钥 pk、消息 m、哈希值 h 以及随机数 r 作为输入,输出一个布尔值?0,1?,若哈希值h 合法则输出 1,反之为 0;5)?HCol?,?,?,?,?:碰撞生成算法

29、HCol以变色龙哈希的陷门 sk、旧消息 m、新消息 m、哈希值 h 和旧随机数 r 作为输入,输出新随机数 r,使得 CHV?,?,?,?CHV?,?,?,?。2.1.2秘密共享秘密共享秘密共享(Secret sharing)是由 Shamir 提出的密码学方案21,目的是将秘密在多个实体之间安全地共享,简单来说秘密共享的思想是把秘密分成 n 份并分发给不同实体,只有不少于 t 个实体一起使用多项式插值才能恢复秘密。方案如下:1)?1,?2,?Share?:输入一个秘密值?,选取随机系数?1,?2,?1?,生成一个t1 次的多项式 f(x)=s+1 x+2 x2+.+t1xt1mod p,其

30、中?表示所有自然数构成的集合,?是一个素数。然后计算将要分发的 n 个份额:?,?1,2,?,?,通常?。2)?或?Rec?1,?2,?:输 入 t 个 份 额?1,?2,?,使用插值计算出多项式(X)=0+1 X+2X2+.+t1 Xt1,则?0?0?。通常,秘密共享技术需要和安全多方计算一起使用,这样才能保护各方拥有的份额在重构时不会被泄露。2.1.3安全多方计算安全多方计算安全多方计算(secure multi-party computation,SMPC)主要用于隐私保护的场景。SMPC 是 1982 年由姚期智先生提出的概念22,其主要目的是在没有信任基础的参与者间计算某个共同函数且

31、不泄露各自的秘密信息。简单来说,SMPC 就是指一个分布式环境中有 n 个无信任基础的参与者?1,?2,?,各自拥有秘密值?1,?2,?,他们都想获取一些函数值?1,?2,?,这些函数需要输入各方的秘密值,即?1,?2,?,此时运用 SMPC 协议,各方分别输入秘密值?进行协同计算得到所需要的函数值,在整个计算的过程中,各方秘密值都没有被泄漏。比如一个群体想计算该群体的平均年龄,而又不想让别人知道自己的年龄,此时就可以使用 SMPC 来计算。2.1.4数字签名数字签名数字签名(Digital Signature)是区块链的重要密码学原语之一,消息接收者使用它来验证发送者对消息的签名是否合法。数

32、字签名具有完整性、认证和不可否认性三个重要性质。其中完整性可以通过比较接收消息的哈希值来判断传输过程中签名内容是否发生改变;认证是指消息接收者可以用发送者的公钥对签名进行验证,除了签名者,任何人都无法伪造该签名;不可否认是指因为只有签名者才知道签名私钥,所以他不能否认自己的签名。数字签名通常包含以下三个算法:1)?,?Gen?1?:密钥对生成算法 Gen 以安全参数作为输入,输出用户的一对公私钥。其中私钥 sk 用来签名,公钥 pk 用来让其他用户验证签名的合法性;罗彬 等:可编辑区块链的研究现状与挑战672)?Sign?,?:签名算法以用户私钥和消息 m 作为输入,输出对消息 m 的签名?,

33、一般是对消息m的哈希值H(m)进行签名,而不是直接对m签名;3)?Ver?,?:验证算法 Ver 以用户公钥 pk作为输入,输出一个布尔值?0,1?,若签名合法则输出 1,反之为 0。在可编辑区块链方案中,除了使用普通的数字签名,还会涉及与它相关的签名方法,如多重签名23、聚合签名24、群签名25、环签名26等。下面分别作简要介绍:多重签名(Multi-Signature)是指在 n 个用户中,只有超过m个用户对同一消息进行签名,该签名才是有效的。聚合签名(Aggregate Signature)是将多个签名聚合在一起,压缩成一个签名,这能够显著减少签名的传输量,实现交易的批量验证,提高效率。

34、群签名(Group Signature)和环签名(Ring Signature)经常在涉及隐私保护的方案中使用。在群签名中,任意一个群中的成员能以匿名的形式代表整个群体对指定消息进行签名。环签名和群签名的功能相似,都是能够隐藏签名者的身份,但是群签名中存在群管理员这个可信第三方,能够在必要时揭示签名者的身份,而在环签名中其他用户是不能识别出签名者的身份,除非签名者自己揭示身份,所以具有更好的匿名性。2.1.5基于属性的加密基于属性的加密合理分配和管理编辑权是可编辑区块链方案中重要的环节。为了减少冗余操作,支持细粒度和可控的编辑,越来越多的方案考虑使用基于属性的加密技术,因为该原语能够实现数据拥

35、有者自己设置数据的控制策略,规定谁有权访问加密数据。该原语最先是由 Waters 提出的27,基于属性的加密(AttributeBased Encryption,ABE),被认为是最具前景的支持细粒度访问的加密原语。不同于传统公钥加密方案,ABE 方案使密钥和密文与策略和属性集关联,这样能够灵活设置对数据的访问策略,降低开销,便于加解密;与基于身份的加密原语相比,基于属性的原语无需用户在加密时提前知道接收者的身份信息。ABE 主要分为两类:基于密文策略的属性基加密(Ciphertext Policy-ABE,CP-ABE)和基于密钥策略的属性基加密(Key Policy-ABE,KP-ABE)

36、。前者的密文和访问策略相关,如果用户的属性满足该策略则可以成功解密密文;后者的密文和属性关联,如果密文关联的属性符合用户的密钥策略,那么该用户可以解密密文。由于 KP-ABE 和 CP-ABE 相似,所以这里我们主要介绍CP-ABE,其通常由概率多项式时间算法的元组?Setup?,KeyGen?,Enc?,Dec?组成:1)(mpk,msk)Setupcp(1):以安全参数作为输入,生成一个系统主私钥 msk 和公钥 mpk,公钥 mpk作为其他算法的隐式输入;2)?KeyGen?,?:以 系 统 主 私 钥msk和属性集U作为算法输入,输出和属性相关联的私钥?;3)?Enc?,?:以明文 m

37、 和访问结构 A 作为输入,输出一个密文 c;4)?或?Dec?c,?:以密文 c 和用户属性私钥?作为输入,如果用户属性 U 满足密文的访问结构 A,则输出明文 m,否则返回错误?。2.2可编辑方案中的常用技术这节中我们主要介绍在可编辑区块链方案中使用的一些常用技术,包括公平合理地选取委员会、激励和惩罚机制、智能合约等,这些技术对可编辑区块链方案的安全、效率和公平公正等方面具有重要的推动作用。2.2.1委员会选取委员会选取在可编辑区块链方案中,特别是基于变色龙哈希函数的方案里,为了减少编辑权的中心化影响,通常需要对陷门进行划分,并在一群随机选取的委员会中分发这些陷门碎片,所以如何合理公平的选

38、取委员会,而不会让敌手提前知道被选者的身份是一个重要问题。目前方案主要使用可验证的随机函数(Verifiable Random Function,VRF)28,这是一种可以生成公开可验证伪随机数的函数,通常生成的随机数与节点相关联,任何节点都可以通过 VRF 的验证函数来验证生成该随机数的节点是否具有成为委员 会 成 员 的 资 格。此 外,可 验 证 的 延 迟 函 数(Verifiable Delay Functions,VDF)29是当前方案未使用但颇有前景的一个函数。粗略来说该函数的特点是计算函数结果需要一段时间,即使利用并行工具也不能加速计算。2.2.2激励与惩罚机制激励与惩罚机制为

39、了维护区块链的良好环境,需要加入一些激励或惩罚机制来奖励诚实节点和惩罚作恶节点。目前区块链中的激励与惩罚主要是经济方面,包括代币、权益、金钱奖励和金钱惩罚等。其中代币是现有区块链系统中最具吸引力的激励方法,也是一种价值交换的媒介;权益是通过赋予用户对某些事情的决策权力,以带给这些用户一定的利益,从而激励用户积极参与维护区块链系统;奖励一般是给予用户一些金钱或其他形式的经济奖励,惩罚是为了遏制在区块链上发生作恶事件的机制,例如参与活动之前需要缴纳保证金、作恶发现后加入黑名单等。68Journal of Cyber Security 信息安全学报,2023年7月,第8卷,第4期在可编辑区块链方案中

40、,需要加入一些合理的激励或惩罚机制来维护编辑操作的正常执行。2.2.3智能合约智能合约区块链中智能合约(Smart Contract)30是把真实世界合约电子化的一种协议,可以理解为是提前编写的程序,若发生了相关事件,则会触发合约按照一定的流程执行操作。目前公链中以太坊是最主要的智能合约平台之一,智能合约的出现把区块链的用途从单纯的数字货币交易过渡到可编程社会。一般智能合约编写好后被写入区块链中,由于不可篡改性,智能合约在上链后将无法被修改,实现了可追溯和公开透明。但是在 DAO 事件发生后,越来越多研究4发现正因为智能合约是人为编写的代码,因此不可避免会出现漏洞。在传统区块链中,若合约出现漏

41、洞,将无法及时修复,这可能带给用户不可挽回的损失。如果允许在可控条件下对区块链进行编辑,那么就能及时解决此类事件带来的不良影响。2.2.4快照与剪枝快照与剪枝快照(snapshot)是记录某时刻系统状态的一种技术,通常在区块链中用于节点定期保存链上状态或记录指定区块高度的状态,这样既能减小存储空间,又能快速获得当前链上的状态数据,加快节点验证数据和同步新链的过程。如 Sidecoin 就是对比特币进行快照的一种机制31。随着时间的推移,链上存在越来越多无用的数据,浪费大量的空间,所以如何合理减少存储空间成为一个关注点。如 Palm 等人提出了一种在区块链中减少存储规模的剪枝(prune)策略3

42、2,该方法是基于一种剪枝函数,能够让每位用户独立选择和删除任意交易。但是在该方法中,如果区块链的所有节点都删除了某些交易,那么可能导致某些数据丢失,而且对于新加入的节点来说,无法分辨链上数据是否被删除过。剪枝技术是一种特殊的删除操作,其目标侧重于减少区块链的存储负担,通常是大规模删除历史数据,而可编辑里的删除目标侧重于去除非法或不合适的历史数据,通常是小规模的删除操作。目前的交易级剪枝方案较少,大多是区块级的剪枝,且该方法隐式假设剪去的数据和后续交易无关,因此只适合安全性要求较弱的应用场景。2.3安全要求安全要求主要包括用户输入数据的机密性、完整性和计算的正确性,以及数据的可用性。输入数据的机

43、密性是指除了数据输入方知道输入的具体内容,其余用户对这些输入内容是不可见、不可知的,如可以使用同态加密来实现33;区块链中数据的完整性是指存储在链上的所有数据没有被更改,一般用数据哈希值验证完整性;计算的正确性是指涉及对数据的计算,其结果一定能被证明是正确的,可以使用合适的技术实现,如零知识证明34;数据可用性是指合法授权的用户能够访问到相应的数据,不会出现访问阻塞,数据不可用的现象,如使用黑名单、定时检测等方法,防止恶意用户实施泛洪攻击破坏数据的可用性。另一个安全要求是对密钥的安全有效管理,其中密钥主要分为对称和非对称两种,前者表示用来加解密的密钥是相同的,后者通常包括一对公私钥,表示加解密

44、的密钥是不同的。在已有的可编辑区块链方案中,除了分别使用对称和非对称的密钥方案,还有两者混合使用的方案。通常密钥的整个生命周期由生成密钥、分发密钥、存储密钥、备份或恢复密钥、更新密钥、使用和撤销密钥五个阶段组成。如何安全高效地管理密钥对可编辑区块链方案是非常重要的,不同方案对密钥管理的要求也不同。例如在基于变色龙哈希的方案中,陷门的管理是整个方案的关键。因为谁掌握了陷门相当于拥有区块链数据的编辑权,所以若授予用户编辑权,那么需要考虑当用户作恶时,能够及时地撤销其编辑权限,防止恶意用户滥用编辑权。若发生了密钥泄漏或是密钥过期,则需要及时更新密钥。2.4安全性质和假设区块链具有三个重要的安全性质3

45、5:链质量、链增长和公共前缀。简单来说,链质量是指在诚实方持有链的任何一段中,敌手区块的占比不超过?,其中?是敌手所控资源的份额比例;链增长是指区块链总是以和时间成正比的速度拓展成更长的新链;公共前缀在可编辑区块链方案中又叫做可编辑的公共前缀,是指如果两个诚实节点在不同时刻持有两条链?、?,那么其中一条较短链C移去最右边的?个区块后得到的链是另一条较长链的前缀,记作?。此外,区块链还需满足两个性质:活性和持久性。活性是指如果系统中所有诚实用户都试图将某笔交易纳入各自的账本,那么在经过交易确认的时间后,当所有用户诚实地进行查询和回复时,都会指明交易是稳定的。如果某交易所在区块后面至少存在 k 个

46、区块,则说明该交易是稳定的,其中 k 是一个系统参数,表示稳定交易的区块数目。持久性是指如果某个用户声称某一交易成为稳定交易,那么其余所有用户在账本里的相同位置都报告该交易,或不把其他冲突交易报告成稳定交易。上述两个性质保证了在一段时间后,系统里所有诚实用户都会拥罗彬 等:可编辑区块链的研究现状与挑战69有一致的区块链状态视图,由诚实用户发布的交易最终将会被包含在区块链内。由于在实际应用中需要权衡安全和效率两个方面,所以为了设计更加安全有效的方案,需要指定区块链的安全假设,例如许多可编辑方案安全假设是系统中诚实方占大多数。此外,不同可编辑区块链方案使用的共识不同,对系统敌手的容错率也不同。目前

47、方案主要涉及的共识机制及其容错率如表 2 所示。表 2不同共识机制的容错率Table 2Fault tolerance of different consensusalgorithms共识机制容错率(容忍敌手占比的上限)Proof Of Work,POW1/2Proof Of Stake,POS1/2Practical Byzantine Fault Tolerance,PBFT1/3(注:根据文献36,有些可编辑区块链方案涉及的 POW 容错率实际上是 1/3)3可编辑区块链方案的分类本节主要根据图 3 可编辑区块链方案的总体流程,结合图 2 的分类,分别从编辑共识、编辑处理、编辑证明这三个

48、重要环节对方案进行分类讨论。通常,在编辑共识中主要涉及编辑所属权和共识技术,编辑处理环节主要考虑编辑操作种类和编辑对象粒度,编辑证明环节需要考虑编辑使用的数据结构以及链架构。3.1编辑共识当区块链用户提出编辑请求后,拥有编辑权的用户(编辑者)需要验证请求是否合法,如果验证通过,则需要在编辑者之间对是否同意该编辑进行共识。这是因为某个交易或区块被编辑以后,区块链的状态就发生了改变,为了让区块链状态在全部节点之间重新达成一致,需要一种共识机制。编辑共识环节需要考虑的是编辑所属权和共识技术两个方面,其中编辑所属权是指编辑权掌握在哪些用户的手中,共识技术主要分为基于变色龙哈希函数、基于投票共识、基于可

49、变交易以及其他方法。3.1.1编辑所属权编辑所属权在编辑共识中,由于编辑权赋予了不同的实体,所以可以将方案分为单中心化、多中心化和去中心化的编辑共识,三种分类如图 4 所示。单中心化是指编辑权掌握在一个实体中,可以是个人,也可以是一个机构,这种情况下共识不需图 4依据编辑所属权划分的方案类别Figure 4Scheme category based on redactingauthority在多方之间进行交互。如 Lee 等人提出的一种在无许可区块链中借助侧链构建单中心化的可编辑方案37,在该方案中只允许交易拥有者自己提出编辑操作,其他用户没有编辑权限。其核心思想是使用方案定义的交易目标值,而

50、不是交易本身来计算区块的哈希值,当修改交易时,根据修改困难度,交易拥有者把修改请求提交给指定侧链,侧链上的矿工需要找一个前缀相等的哈希碰撞,再次进行 POW 生成修改命令块来争夺交易的编辑权,当侧链最终化时,依据修改命令块在主链上执行相应的编辑操作,其中困难度依赖于用户发送交易时的设置,如果涉及金融资产转账的交易,方案会限制用户只能把该交易设置为不可篡改的级别,这样能够使修改交易的方式和传统公链中同意交易的方式保持一致,最小化对传统链的修改,适合用于公有链中的金融和云服务场景。由于编辑权是单中心化的,只有交易拥有者自己才拥有编辑权,如果拥有者上传了非法数据,其他用户无法进行更改,缺乏相应监管,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服