Processing math: 9%
  • 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
高级检索

大语言模型安全与隐私风险综述

姜毅, 杨勇, 印佳丽, 刘小垒, 李吉亮, 王伟, 田有亮, 巫英才, 纪守领

姜毅, 杨勇, 印佳丽, 刘小垒, 李吉亮, 王伟, 田有亮, 巫英才, 纪守领. 大语言模型安全与隐私风险综述[J]. 计算机研究与发展. DOI: 10.7544/issn1000-1239.202440265
引用本文: 姜毅, 杨勇, 印佳丽, 刘小垒, 李吉亮, 王伟, 田有亮, 巫英才, 纪守领. 大语言模型安全与隐私风险综述[J]. 计算机研究与发展. DOI: 10.7544/issn1000-1239.202440265
Jiang Yi, Yang Yong, Yin Jiali, Liu Xiaolei, Li Jiliang, Wang Wei, Tian Youliang, Wu Yingcai, Ji Shouling. A Survey on Security and Privacy Risks in Large Language Models[J]. Journal of Computer Research and Development. DOI: 10.7544/issn1000-1239.202440265
Citation: Jiang Yi, Yang Yong, Yin Jiali, Liu Xiaolei, Li Jiliang, Wang Wei, Tian Youliang, Wu Yingcai, Ji Shouling. A Survey on Security and Privacy Risks in Large Language Models[J]. Journal of Computer Research and Development. DOI: 10.7544/issn1000-1239.202440265
姜毅, 杨勇, 印佳丽, 刘小垒, 李吉亮, 王伟, 田有亮, 巫英才, 纪守领. 大语言模型安全与隐私风险综述[J]. 计算机研究与发展. CSTR: 32373.14.issn1000-1239.202440265
引用本文: 姜毅, 杨勇, 印佳丽, 刘小垒, 李吉亮, 王伟, 田有亮, 巫英才, 纪守领. 大语言模型安全与隐私风险综述[J]. 计算机研究与发展. CSTR: 32373.14.issn1000-1239.202440265
Jiang Yi, Yang Yong, Yin Jiali, Liu Xiaolei, Li Jiliang, Wang Wei, Tian Youliang, Wu Yingcai, Ji Shouling. A Survey on Security and Privacy Risks in Large Language Models[J]. Journal of Computer Research and Development. CSTR: 32373.14.issn1000-1239.202440265
Citation: Jiang Yi, Yang Yong, Yin Jiali, Liu Xiaolei, Li Jiliang, Wang Wei, Tian Youliang, Wu Yingcai, Ji Shouling. A Survey on Security and Privacy Risks in Large Language Models[J]. Journal of Computer Research and Development. CSTR: 32373.14.issn1000-1239.202440265

大语言模型安全与隐私风险综述

基金项目: 国家重点研发计划项目(2022YFB3102100);国家自然科学基金项目(U244120033, U24A20336).
详细信息
    作者简介:

    姜毅: 1982年生. 博士生研究生,CCF会员. 主要研究方向为数据驱动安全与隐私、人工智能安全

    杨勇: 1996年生. 博士生研究生,CCF会员. 主要研究方向为人工智能的安全与隐私

    印佳丽: 1993年生. 博士,研究员. CCF会员. 主要研究方向为要研究方向为计算摄影学、深度特征融合、神经网络模型可解释性、对抗训练

    刘小垒: 1992年生. 博士,副研究员,CCF会员. 主要研究方向为装备信息安全和人工智能安全

    李吉亮: 1989年生. 博士,研究员,博士生导师,CCF会员. 主要研究方向为网络与信息安全、人工智能安全和大模型安全

    王伟: 1976年生. 博士,教授,博士生导师. CCF杰出会员. 主要研究方向为网络与系统安全、区块链及隐私保护

    田有亮: 1982年生. 博士,教授,博士生导师. CCF高级会员. 主要研究方向为密码学与安全协议、大数据安全与隐私保护

    巫英才: 1983年生. 博士,教授,博士生导师. CCF高级会员. 主要研究方向为可视分析

    纪守领: 1986年生. 博士,教授,博士生导师. CCF高级会员. 主要研究方向为数据驱动安全和隐私、人工智能安全和大数据挖掘与分析

    通讯作者:

    纪守领(sji@zju.edu.cn

  • 中图分类号: TP391

A Survey on Security and Privacy Risks in Large Language Models

Funds: This work was supported by the National Key Research and Development Program of China (2022YFB3102100) and the National Natural Science Foundation of China (U244120033, U24A20336).
More Information
    Author Bio:

    Jiang Yi: born in 1982. PhD candidate. member of CCF. His main research interests include data-driven security and privacy, AI security

    Yang Yong: born in 1996. PhD candidate. member of CCF. His main research interests include AI security and privacy

    Yin Jiali: born in 1993. PhD,professor PhD supervisor. member of CCF. Her main research interests include computational photography, interpretability of neural networks, adversarial training

    Liu Xiaolei: born in 1992. PhD, associate professor. Member of CCF. His current research interests include equipment information security and AI security

    Li Jiliang: born in 1989. PhD, professor, PhD supervisor. Member of CCF. Distinguished member of CCF. His current research interests include AI security and large language model security

    Wang Wei: born in 1976. PhD, professor, PhD supervisor. His current research interests include cyberspace and system security, blockchain, and privacy preservation

    Tian Youliang: born in 1982. PhD, professor, PhD supervisor. Senior member of CCF. His current research interests include cryptography and security protocols, big data security and privacy protection

    Wu Yingcai: born in 1983. PhD, professor, PhD supervisor. Senior member of CCF. His current research interests include visual analytics

    Ji Shouling: born in 1986. PhD, professor, PhD supervisor. Senior member of CCF. His current research interests include data-driven security and privacy, AI security and big data mining and analytics

  • 摘要:

    近年来,大语言模型(large language model,LLM)作为深度学习网络技术的关键分支,在自然语言处理(natural language processing,NLP)领域取得了一系列突破性成就,并被广泛采用. 然而,在其包括预训练、微调和实际部署在内的完整生命周期中,多种安全威胁和隐私泄露的风险相继被发现,引起了学术和工业界越来越多的关注. 首先以LLM发展过程中出现的预训练-微调范式、预训练-提示学习范式和预训练指令微调范式为线索,梳理了针对LLM的常规安全威胁,即3种对抗攻击(对抗样本攻击、后门攻击、投毒攻击)的代表性研究,接着总结了一些最新工作披露的新型安全威胁,然后介绍了LLM的隐私风险及其研究进展. 相关内容有助于LLM的研究和部署者在模型设计、训练及应用过程中,识别、预防和缓解这些威胁与风险,同时实现模型性能与安全及隐私保护之间的平衡.

    Abstract:

    In recent years, Large Language Models (LLMs) have emerged as a critical branch of deep learning network technology, achieving a series of breakthrough accomplishments in the field of Natural Language Processing (NLP), and gaining widespread adoption. However, throughout their entire lifecycle, including pre-training, fine-tuning, and actual deployment, a variety of security threats and risks of privacy breaches have been discovered, drawing increasing attention from both the academic and industrial sectors. Navigating the development of the paradigm of using large language models to handle natural language processing tasks, as known as the pre-training and fine-tuning paradigm, the pre-training and prompt learning paradigm, and the pre-training and instruction-tuning paradigm, this article outline conventional security threats against large language models, specifically representative studies on the three types of traditional adversarial attacks (adversarial example attack, backdoor attack and poisoning attack). It then summarizes some of the novel security threats revealed by recent research, followed by a discussion on the privacy risks of large language models and the progress in their research. The content aids researchers and deployers of large language models in identifying, preventing, and mitigating these threats and risks during the model design, training, and application processes, while also achieving a balance between model performance, security, and privacy protection.

  • 当前,移动互联、万物互联以及数字化转型所带动的海量数据流量致使人们对存储的需求呈现爆发式增长. 伴随海量数据所增长的储存和处理需求直接拉动云环境下外包数据存储市场高增. 然而,在人们享受云存储带来的便利的同时,数据安全性的问题随之而来. 为了防止云服务提供商和黑客未经授权访问用户的外包数据,用户可以将敏感和隐私数据进行加密再外包至云服务器. 然而,传统加密方法会改变数据的原始特征,云服务器无法对密文进行搜索和处理,严重影响外包数据的可用性. 为了解决上述问题,研究者们提出了可搜索加密技术——在保障用户安全方便地使用外包数据存储服务的同时,使云服务器端能够在不解密数据的前提下对密文进行搜索,从而保证了外包数据的机密性与可用性. 近年来,可搜索加密技术得到了广泛且深入的研究,但仍面临许多挑战.

    首先是动态更新方面. 现实场景中,企业及个人用户外包数据很少是一成不变的,经常需要频繁定期更新. 已有可搜索加密方案中利用前向索引构造的方案[1]支持直接文件更新,动态性较好,易于实际开发应用,但是前向索引结构泄露了和明文相关的信息,容易被敌手进行统计攻击,而且搜索效率不尽如人意. 倒排索引结构是实现关键字到文件映射关系的最佳方式,能够实现高效搜索[2],然而,倒排索引动态更新过程较为复杂,添加或删除文件时必须对索引中的所有条目进行线性扫描. 现有基于倒排索引的可搜索加密方案的动态更新过程大多需要额外更新结构进行辅助,这些更新结构通常过于复杂,导致更新效率非常低,并且只能允许有限的更新操作. 除此之外,已有的动态更新方法在更新过程中往往会向服务器泄露较多信息,例如关于更新关键字的关联信息等,即敌手可将更新的文件与之前的历史搜索结果建立联系,进而使方案无法抵抗文件注入攻击.

    其次,为了更好地提高用户的搜索体验,可搜索加密一个重要的研究方向是提高搜索语句表达性,例如支持多关键字布尔搜索[3]. 严格意义上的布尔搜索是指利用布尔逻辑运算符连接各个搜索关键字,然后由计算机进行相应逻辑运算,以找出所需信息的方法. 布尔搜索在所有搜索功能中使用面最广、使用频率最高. 但是,布尔搜索不仅需要云服务器进行关键字密文搜索,还需要对搜索结果进行布尔运算,过程中更容易由于节点崩溃或外部攻击而返回不正确的布尔搜索结果. 因此为了应对上述问题,亟需引入搜索结果验证机制来保证搜索结果的正确性. 一些可搜索加密方案通过数据认证技术,如MAC认证结构[4]、Merkle哈希树[5]和布隆滤波器[6]等,实现对搜索结果的验证. 然而上述验证方法仅能验证搜索语句表达性较差的搜索请求,甚至单一关键字搜索请求. 对于多关键词布尔搜索,目前的验证方法主要使用基于数据持有性证明技术中随机抽取的思想来实现[7],面临误差较大以及结果验证计算负载较大等缺陷,不能适应实际广泛的应用场景.

    最近几年,随着加密货币和去中心化应用的流行,区块链技术受到了各行业极大的关注. 区块链数据存储成为构建分布式存储平台的关键技术. 例如Bigchain DB[8]和Bluzelle[9],其通过共识协议确保数据存储的一致性和不可篡改性,为解决上述这些问题提供了可能. 近年来,很多方法将密码学加密技术与区块链结构相融合,一定程度上实现了链上数据的隐私保护[10-11]. 一些可搜索加密方案以智能合约代替传统的可信第三方来提供搜索公平性的保证[12-14]. 然而,上述方案中安全索引仍然部署于服务器端,而且受制于区块链固有的分叉问题导致方案的可用性受到了影响,并未发挥出区块链数据存储固有的防篡改和增量更新性等优势.

    本文针对上述问题展开研究,提出基于区块链索引的可验证布尔搜索加密方案VBSE-BI.方案将可搜索加密中的安全索引结构与区块链数据存储进行深度融合,限制服务器由于单点故障原因对索引结构进行破坏,实现索引的存储机密性、动态更新性以及搜索正确性. 同时方案在支持对多关键字布尔搜索的同时,保证了布尔搜索结果的不可伪造性. 本文主要工作如下:

    1)提出基于区块链存储结构的增量链式安全索引构造方法. 首先构建“关键字-文件”链式索引结构,将索引拆分为数据块的形式存储在区块链结构的交易信息中,利用指针进行链接,并引入同态加密机制代替标准加密方法来加密索引信息,在不解密索引的情况下实现高效搜索. 此方法以区块链的不可篡改性来提供搜索正确性和可靠性,并且避免了构建辅助更新索引结构导致的索引存储及更新开销大的问题.

    2)提出针对布尔搜索结果的完整性验证方法. 针对服务器端布尔运算完整性验证需求,给出VBSE-BI的搜索结果不可伪造性定义,基于双线性映射累加器和扩展欧几里德算法设计面向布尔搜索的完整性证明以及验证方法,并且,基于双线性q阶强Diffie-Hellman假设,对该方法的不可伪造性进行了严格的安全性证明.

    3)对VBSE-BI方案每个算法和协议进行详细构建,并从存储开销、计算开销以及通信开销3个维度对比分析方案性能;对VBSE-BI方案进行了编程实现,并通过对算法的性能测试来分析方案在实际应用中的性能表现. 性能分析结果显示,本方案降低了服务器端存储以及搜索开销的同时,降低了用户计算复杂度,满足实际云环境下资源受限本地设备的应用需求.

    近几年,学者们对可搜索加密方案的各方面问题进行了深入的研究. 针对可搜索加密的动态更新问题,2012年,Kamara等人[2]提出了基于正反双链表结构的动态可搜索加密方案,但是在更新文件的时候会造成较大信息泄露,无法抵抗文件注入攻击. 为了降低更新泄露,Hahn等人[15]中提出一种新的动态可搜索加密方案,主要思想是根据用户的搜索历史构造前向索引和倒排索引2个索引结构,云服务器不会得到除了搜索令牌之外的任何用户信息,但是该方案仅在文件数据庞大而关键字数目不多的场景下具有高的搜索效率.2016年,Bost[1]构造了一个满足向前安全性的动态可搜索加密方案,向前安全性保证了更新文件时敌手无法将其关键字信息与之前的搜索历史进行匹配.2018年,Zuo等人[16]基于二进制树和同态加密算法构建了2个动态可搜索加密方案,并支持范围查询,第1个方案拥有前向安全,第2个方案拥有前向安全和部分后向安全,但对加密文档的数量有限制.

    在搜索结果的可验证性方面,2013年,Chai等人[17]首先提出并研究了支持搜索结果验证可搜索加密问题. 2015年,Wang等人[18]提出了一种在混合云中支持容错性和可验证性的可搜索加密方案,通过基于字典的索引构建方法,生成模糊关键字字典,实现搜索结果的动态排序和可验证性. Kurosawa等人[19]利用RSA累加器生成搜索标签,从而实现搜索结果的验证并支持对文件的动态更新. 2015年,Ameri等人[20]利用布隆过滤器和多层级访问控制略构造了一种通用的多层级可验证关键字搜索方案. 2017年,Jiang等人[21]基于特殊倒排索引结构QSet、二进制矢量以及MAC函数设计了支持多关键字排序的可验证可搜索加密方案. 2018年,Wang等人[22]基于OXT的连接关键词检索方法,采用聚合器和采样检测技术提出了公开可验证的连接关键词检索方案. 已有的支持搜索结果验证的方案或多或少会牺牲搜索性能. 2020年,闫玺玺等人[23]提出了一种可验证属性基搜索加密方案,方案结合区块链技术解决半诚实且好奇的云服务器模型下返回搜索结果不正确的问题. 2021年,Najafi等人[24]针对实际应用场景中对多关键字可搜索加密的需求,提出多关键字动态可搜索加密及搜索结果完整性验证方法. 2024年,Xie等人[25]提出了一种新的可验证中文多关键字模糊排序可搜索加密方案,使用认证标签和概率陷门提高安全性、准确性和效率,解决了现有模糊关键词搜索方法的存储和计算资源消耗问题.

    基于上述研究现状可以看出,现有的支持验证的可搜索加密方法中,数据拥有者端通常需要存储庞大的辅助结构,导致本地存储负载较大,而且大多可验证算法包含复杂的通信与计算代价,在实际应用中具有局限性. 考虑到资源受限的移动设备数量急剧增加,用户端的结果验证代价应尽可能小,否则将没有实用价值. 因此,提高搜索语句的表达性并且降低用户验证代价是可验证可搜索加密中亟待解决的关键问题.

    VBSE-BI方案主要考虑2类实体:用户U和云服务器S.方案模型架构如图1所示. 用户U通过对本地文件集合进行信息提取来构建搜索索引,将索引利用密码学算法进行结构化加密,生成安全链式索引,并将链式索引拆分为交易值的形式存储于区块链索引中,根据对应的交易地址以及附加辅助验证元素生成以关键字为键的查找表,将查找表同样利用密码学算法进行结构化加密,生成密态查找表发送给云服务器S.区块链的增量存储特性使得索引能够满足文件的动态更新需求,即用户U可以随时添加或删除文件,并同时更新索引和查找表结构. 随后,用户发起生成布尔搜索请求,利用密码学工具将布尔表达式中的关键字信息进行加密,生成搜索令牌并发送给云服务器S.云服务器S在收到搜索令牌后,在密态查找表中定位到区块链索引中的搜索关键字对应的链式索引交易地址,进而在区块链安全索引中进行搜索并对搜索结果进行布尔运算. 随后,云服务器S将搜索结果以及对于布尔搜索结果正确性的证明返回给用户U. 用户U在收到搜索结果和相关的证明之后,在本地验证搜索结果的正确性,验证通过则可判定云服务器S正确执行了布尔搜索请求. 值得说明的是,区块链只负责存储链式索引结构,而真实的数据以加密的形式存储在云服务器S中.

    图  1  VBSE-BI 模型架构
    Figure  1.  VBSE-BI model architecture

    本节列出了论文中涉及的符号及其对应的含义,如表1所示.

    表  1  符号描述
    Table  1.  Symbols Description
    符号 含义
    1k 安全参数
    f 文件集合
    fwi 包含关键字wi的文件集合
    BC 区块链索引
    T 密态查找表
    ϕ(W) 关键字W布尔表达式
    Rϕ(W) 搜索结果
    L 泄露函数
    π 证据
    τ 搜索/更新令牌
    FGP 伪随机函数
    K1K2K3 伪随机函数FGP的密钥
    K 用户密钥
    Lw=(N1,,N#fw) BC中关键字w对应的虚拟链表
    addr(N) 节点NBC中的地址
    acc(fwi) fwi的双线性累加值
    I/U/D 交/并/差集
    flag 添加/删除标志
    下载: 导出CSV 
    | 显示表格

    定义1. VBSE-BI方案主要由5个多项式时间算法和协议组成,即KeyGen,Setup,Search,Verify,Update,具体描述如下:

    1)(K,PP)KeyGen(1k). 密钥生成算法,由用户U执行. 输入安全参数1k,输出密钥K和公共参数PP.

    2)(T,BC)Setup(K,f). 初始化算法,由用户U执行. 输入密钥K,文件集合f,输出区块链索引BC以及密态查找表T.

    3)(Rϕ(W),π;)Search(U(K,ϕ(W));S(T,BC)). 搜索协议,由用户U和云服务器S交互执行. 用于搜索文件. 用户输入密钥K、布尔表达式ϕ(W),云服务器S输入密态查找表T和区块链索引BC,输出布尔搜索结果Rϕ(W)以及正确性证明π.

    4)bVerify(K,Rϕ(W),π). 验证算法,由用户U执行. 输入密钥K、搜索结果Rϕ(W)以及证明π,输出输入1或者0表示接受或拒绝.

    5)(;(T,BC))Update(U(K,f);S(T,BC)). 更新协议,由用户U和云服务器S交互执行. 用户输入密钥K、更新文件f,云服务器输入密态查找表T和区块链索引BC,输出更新后的区块链索引BC以及密态查找表T.

    定义2. VBSE-BI正确性.VBSE-BI方案的正确性包括搜索正确性以及更新正确性:

    1)搜索正确性. 对于所有的安全参数k、所有的由KeyGen(1k)生成的K、所有的文件f以及所有由Setup(K,f)输出的(T, BC)和Update(U(K,f);S(T,BC))即任意顺序的更新操作,用户U与云服务器S交互执行的搜索协议Search(U(K,f);S(T,BC))总会得到正确的结果Rϕ(W). 即用户端的验证算法Verify(K,Rϕ(W),π)输出为1.

    2)更新正确性. 用户U利用更新协议Update(U(K,f);S(T,BC))与云服务器S交互添加或删除包含关键字信息的文件f时,协议执行后服务器端的更新的密态查找表T和区块链索引BC会正确添加或删除文件f的相关信息,且二者仍然保持一致性且完整性.

    在VBSE-BI方案的威胁模型中,假设云服务器为恶意敌手,即可能伪造搜索结果的布尔运算过程. 在这种威胁存在的情况下,VBSE-BI方案应该满足以下安全性定义:

    定义3. 动态IND-CKA2安全性. 设A为敌手,Sim为模拟器,L1L2L3分别为初始化、搜索、更新文件阶段的泄露函数. 定义如下2个实验:

    1)RealA(1k). 为敌手A和挑战者C之间的交互式实验,使用真实的方案算法. 在该实验中,挑战者C运行KeyGen(1k)生成密钥K和公共参数PP. 敌手A输出文件集合f给挑战者C,挑战者C运行初始化算法Setup(K,f),输出(T,BC)给敌手. 敌手A可以向挑战者发起多项式次自适应质询{ϕ(Wi),fi}1. 对于每次质询 \left\{ {\phi ({\mathcal{W}_i}),{f_i}} \right\} ,挑战者\mathcal{C}为敌手\mathcal{A}生成搜索令牌{\tau _{s,i}}. 或者更新令牌{\tau _{u,i}}. 由于\mathcal{A}是自适应敌手,所以其每次质询的结果都可以作为输入来产生下一次质询. 在所有q次质询结束后,敌手\mathcal{A}输出一个比特值b作为该实验的输出.

    2) Idea{l_{{\mathcal{A}},{\mathcal{S}}}}({1^k}) . 为敌手\mathcal{A}和模拟器\mathcal{S}im之间的交互式实验. 敌手\mathcal{A}输出索引结构\delta . 根据泄露函数{\mathcal{L}_1},模拟器\mathcal{S}im生成模拟的(\widetilde T,\widetilde {BC})并发送给敌手\mathcal{A}. 敌手\mathcal{A}可以向模拟器\mathcal{S}im发起多项式次自适应质询\{ \phi ({\mathcal{W}_i}), {\delta _{{f_i}}}\} _{1 \leqslant i \leqslant q}. 对于每次质询(\phi ({\mathcal{W}_i}),{\delta _{{f_i}}}),模拟器可以访问泄露函数{\mathcal{L}_2}{\mathcal{L}_3}其中之一,并返回给敌手对应的模拟搜索令牌{\tilde \tau _{\mathcal{S}}}. 最终,敌手\mathcal{A}返回一个比特值b作为该实验的输出.

    VBSE-BI方案满足动态IND-CKA2安全性,当且仅当对于所有满足概率多项式时间计算能力的敌手\mathcal{A},存在多项式时间计算能力的模拟器\mathcal{S}im,使得

    |Pr[Rea{l_{\mathcal{A}}}({1^k}) = 1] - Pr[Idea{l_{{\mathcal{A}},{\mathcal{S}}}}({1^k}) = 1]| \leqslant negl({1^k}) \text{,}

    其中negl({1^k})为以 {1^k} 为输入的可忽略函数.

    定义4. 不可伪造性. 设\mathcal{A}为一个有状态的敌手,\mathcal{C}为挑战者,{\mathcal{L}_1}{\mathcal{L}_2}{\mathcal{L}_3}分别为初始化、搜索、更新文件阶段的泄露函数. 考虑游戏 Forg{e_{\mathcal{A}}}({1^k}) 中,敌手\mathcal{A}输出文件集合f给挑战者\mathcal{C},挑战者\mathcal{C}运行初始化算法(T,BC) \leftarrow Setup{\text{(}}K,f{\text{)}},输出区块链索引BC以及密态查找表T给敌手. 敌手\mathcal{A}可以向挑战者发起多项式次自适应质询 {[\left\{ {\phi ({\mathcal{W}_i}),{f_i}} \right\}]_q} . 在所有q次质询结束后,敌手输出包含一组关键字的布尔表达式\phi (\mathcal{W})、一个针对该表达式的错误搜索结果 {\widetilde R_{\phi ({\mathcal{W}})}} 和针对这一错误结果的证明 \pi . 如果证明可以通过验证算法的验证,即 Verify(K,{\widetilde R_{\phi ({\mathcal{W}})}},\pi ) = 1 ,那么实验输出1,否则输出0.

    VBSE-BI方案满足不可伪造性,当且仅当对于所有满足多项式时间计算能力的敌手\mathcal{A},使得:Pr{\text{[}}Forg{e_{\mathcal{A}}}({1^k}) = 1] \leqslant negl({1^k}),其中negl({1^k})为以{1^k}为输入的可忽略函数.

    本节给出VBSE-BI方案的设计思路与具体构建方法. 首先通过构建基于区块链数据存储的增量安全索引结构来实现对密文的搜索以及高效更新,然后设计布尔搜索结果完整性验证方法来实现布尔搜索结果的完整性验证;最后根据设计思路完成方案中每个算法和协议的详细构建.

    VBSE-BI的主要搜索结构包含存储于区块链结构中的增量链式安全索引(简称区块链索引BC)以及存储于云服务器的密态查找表T. 令FGP为3个伪随机函数,用户U随机选择3个长度k 比特的比特串 {K_1} {K_2} {K_3} 作为伪随机函数FGP的密钥. 用户首先在文件集合f = ({f_1},{f_2}, … ,{f_{\# f}})中提取到关键字信息{\mathcal{W}} = ({w_1},{w_2}, … ,{w_{\# {\mathcal{W}}}}),构建以关键字为引导的进行组织的\# {\mathcal{W}}条虚拟链表({L_1},{L_2}, … ,{L_{\# {\mathcal{W}}}}),每个链表都由\# {f_w}个节点({N_1},{N_2}, … ,{N_{\# {f_w}}})构成,每个节点都存储一个唯一的“文件/关键字”对,所有链表共同构成链式索引结构. 随后,用户将链式索引结构以数据条目的形式上传到区块链中,每个节点存储在BC中的一条交易中. 为了能够将区块链索引中一条虚拟链表中的不同节点进行连接,在每个节点{N_i}内额外添加指针信息addr({N_{i - 1}}),指向链表内上一个节点{N_{i - 1}}的交易地址,从而实现整条链表的高效定位与查找. 定义节点{N_i}的结构为{N_i} = \langle {f_i},addr({N_{i - 1}}),flag\rangle ,其中{f_i}为文件的唯一标识, addr({N_{i - 1}})表示链表内上一个节点{N_{i - 1}}的交易地址,flag为增删标识位. 链表{L_w}中的所有节点都使用{P_{{K_3}}}(w)进行异或加密从而对索引的真实索引信息进行隐私保护,其中{K_3}为伪随机函数P的密钥. 除此之外,用户构建查找表T,包含了系统中的所有关键字信息,对于每个关键字w,查找表T中的对应元素以{F_{{K_1}}}(w)为键,以指向指向区块链索引中链表{L_w}的末节点地址addr\left( {{N_{\# {f_w}}}} \right)为值,其中{K_1}为伪随机函数F的密钥,addr\left( {{N_{\# {f_w}}}} \right)使用{G_{{K_2}}}(w)进行异或加密,其中{K_2}是伪随机函数G的密钥.

    搜索关键字{w_i} \in {\mathcal{W}}包含的文件时,服务器S使用{F_{{K_1}}}({w_i})作为键来在密态查找表T中定位到到密态地址,使用{G_{{K_2}}}({w_i})来解密得到{L_{{w_i}}}的末节点地址明文,并链接到区块链索引BC中的相关交易,最后使用{P_{{K_3}}}({w_i})来解密交易信息,获得文件标识和前一个节点的地址信息,进而在区块链索引BC中提取到链表 {L_w}_{_i} 中所有节点 \left( {{N_1},{N_2}, … ,{N_{\# {f_{{w_i}}}}}} \right) 的信息,得到针对关键字{w_i}的文件标识符集合{f_{{w_i}}}.

    图2为索引结构示意图. 为了更好地说明方案的索引结构间的关系和搜索过程,图2中索引结构均以明文形式阐述. 在区块链结构中,一定数量的新数据条目作为交易的形式封装到一个新的块中,块头包含当前链的最后一个块的哈希值、随机数、交易的Merkle哈希根以及时间戳等信息,块体包含了所有的交易信息,即存储索引BC. 例如,对于关键字{w_2},在查找表中键{w_2}对应的值为402,即指向了区块链中地址为402的交易. 地址为402的交易信息中存储了一个指向地址为101的交易的指针,地址为101的交易中存储的指针指向了地址0,然后结束遍历. 通过对关键字{w_2}的虚拟链表的遍历,所有包含关键字{w_2}的文件都可以被找到. 上述过程实现搜索正确性的思想是,由于区块链结构对网络中的所有对等点都是可审计的,一旦挖掘出一个块并达成一致意见,就不再在该块中进一步执行修改操作. 因此区块链索引凭借着安全不可篡改的特性, 能防止已经确认的交易记录被更改,能够保证每个得到有效性验证的区块数据和交易记录中的节点信息的完整性,因此其保证了索引存储以及搜索的正确性.

    图  2  BC 索引结构示意图
    Figure  2.  Schematic diagram of BC index structure

    为了搜索针对关键字集合{\mathcal{W}} = \{ {w_1},{w_2}, … ,{w_n}\} 的某个布尔表达式\phi (\mathcal{W}),服务器S需要通过查找表对每个关键字{w_i} \in \mathcal{W}在区块链中定位链表{L_{{w_i}}}的末节点{N_{\# {f_{{w_i}}}}}的地址addr\left( {{N_{\# {f_{{w_i}}}}}} \right),并分别在区块链索引中进行搜索,得到结果R{\text{ = }}\left( {{f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_{_{{\text{\# }}{\mathcal{W}}}}}}}} \right)后进行针对布尔表达式\phi (\mathcal{W})的运算. 根据类型不同,布尔运算正确性满足如下性质:

    1)交集. 如果I = \{ {f_1},{f_2}, … ,{f_m}\} {f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_n}}}正确交集,当且仅当下列2个条件成立:①子集条件. 作为集合的交集,集合I一定为每一个集合{f_{{w_i}}}的子集,即 \left( {I \subseteq {f_{{w_1}}}} \right) \cap … \cap \left( {I \subseteq {f_{{w_n}}}} \right) ;② 完备性条件. 集合I必须包含集合{f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_n}}}的所有共同关键字,即 \left( {{f_{{w_1}}} - I} \right) \cap … \cap \left( {{f_{{w_n}}} - I} \right) = {f_{{w_m}}} .

    2)并集. 直观上,U = \{ {f_1},{f_2}, … ,{f_m}\} {f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_m}}}正确并集,当且仅当下列2个条件成立:①成员条件. 作为集合的并集,集合U中的任何文件一定包含于某个集合{f_{{w_i}}},即\forall {f_k} \in U,\exists i \in \left\{ {1,2, … ,n} \right\}:{f_k} \in {f_{{w_n}}};②超集条件. 任何集合{f_{{w_i}}}一定是集合U的子集,即 \left( {U \supseteq {f_{{w_1}}}} \right) \wedge \left( {U \supseteq {f_{{w_2}}}} \right) \wedge … \wedge \left( {U \supseteq {f_{{w_n}}}} \right) .

    3)差集. 给定集合D和2个集合{f_{{w_i}}},{f_{{w_j}}}D{f_{{w_i}}},{f_{{w_j}}}正确差集当且仅当差集条件成立:集合D中的文件包含所有包含关键字{w_i}但不包含关键字{w_j}中的文件,即D = {f_{{w_i}}} - {f_{{w_j}}} \Leftrightarrow {f_{{w_i}}} - \left( {{f_{{w_i}}} - D} \right) = {f_{{w_i}}} \cap {f_{{w_j}}}. 如果{I_{{w_i} \wedge {w_j}}}为集合{f_{{w_i}}}{f_{{w_j}}}的交集,即{I_{{w_i} \wedge {w_j}}} = {f_{{w_i}}} \cap {f_{{w_j}}},则集合D{I_{{w_i} \wedge {w_j}}}的并集与集合{f_{{w_i}}}相等:D \cup {I_{{w_i} \wedge {w_j}}} = {f_{{w_i}}}. 因此,证明D = {f_{{w_i}}} - {f_{{w_j}}}等价于证明{f_{{w_i}}} = D \cup {I_{{w_i} \wedge {w_j}}},即证明{f_{{w_i}}}D{I_{{w_i} \wedge {w_j}}}的并集.

    本文设计融合双线性映射累加器和扩展欧几里德算法的集合运算正确性证明方法.

    具体来讲,为了证明并集搜索结果I的子集条件,对于所有w \in {\mathcal{W}},首先用户分别为{f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_n}}}计算累加值acc({f_{{w_i}}}),然后便可以为每一个集合{f_{{w_i}}}生成对应的子集包含证据(I,{{\mathcal{W}}_{ I,{f_{{w_i}}}}}). 用户利用acc({f_{{w_i}}})(I,{{\mathcal{W}}_{ I,{f_{{w_i}}}}})验证集合I和集合{S_i}之间的子集包含关系了. 除此之外,若集合I是完备的,当且仅当存在多项式{q_1}(s),{q_2}(s), … ,{q_n}(s),使得{q_1}(s){P_1}(s) + {q_2}(s){P_2}(s) + … + {q_n}(s){P_n}(s) = 1,其中

    {P_i}(s) = \prod\limits_{f \in {S_i} - I} {\left( {s + id(f)} \right)} .

    因此假设I并不是完备的集合,那么在多项式{P_1}(s),{P_2}(s), … ,{P_n}(s)中至少存在一个公因式. 在这种情况下,便不存在多项式{q_1}(s),{q_2}(s), … ,{q_n}(s)使得{q_1}(s){P_1}(s) + {q_2}(s){P_2}(s) + … + {q_n}(s){P_n}(s) = 1. 因此如果能找到符合要求的{q_1}(s),{q_2}(s), … ,{q_n}(s),那么就说明{P_1}(s),{P_2}(s), … ,{P_n}(s)中一定不存在公因式.

    为了证明并集搜索结果U的成员条件,需要为集合U中的每个文件{f_j}生成针对文件集合{f_{{w_i}}}的成员证据 {\mathcal{M}_{j,i}} . 验证时,验证成员条件通过验证下列等式是否成立: e\left( {{{\mathcal{M}}_{j,i}},{g^{{f_j}}}{g^s}} \right) = e\left( {acc\left( {{f_{{w_i}}}} \right),g} \right) . 需要注意的是,对于集合U中的每个文件{f_j},只有当对于每个集合{f_{{w_i}}}上述等式都不成立时,才表示元素{f_j}不属于任意集合{f_{{w_i}}},此时认为验证失败. 证明超集条件时,需要为{f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_n}}}构造超集证据:对于1 \leqslant i \leqslant n,计算

    {P_i} = \prod\limits_{f \in U - {f_{{w_i}}}} {(s + f)} \text{,}

    \mathcal{S} = {\{ {\mathcal{S}_i}\} _{1 \leqslant i \leqslant n}} = {\{ {g^{{P_i}}}\} _{1 \leqslant i \leqslant n}}为超集证据. 验证时,通过验证下列等式是否成立,验证

    e\left( {{{\mathcal{S}}_i},acc\left( {{f_{{w_i}}}} \right)} \right) = e({g^{\prod\limits_{k = 1}^d {(s + {f_k})} }},g) \text{,}

    其中{S_i}为超集证据S中元素. 如果所有的验证过程都通过,那么就可以认为U是正确的,即的确是由{f_{{w_1}}},{f_{{w_2}}}, … ,{f_{{w_n}}}通过并集运算得到的结果. 由于差集证明方法可规约为并集证明,因此不再过多赘述.

    用户U可以随时在方案中添加或删除包含{{\mathcal{W}}_f} = ({w_1},{w_2}, … ,{w_n})关键字的文件f. 对于{{\mathcal{W}}_f}中的任意关键字{w_i},首先用户U和服务器S交互获取密态查找表T中与{w_i}对应的链表{L_{{w_i}}}的末节点{N_{\# {f_{{w_i}}}}}在区块链索引BC中的交易地址addr{\text{(}}{N_{\# {f_{{w_i}}}}})以及相关累加值acc({f_{{w_i}}}),并且利用此地址addr({N_{\# {f_{{w_i}}}}})更新链表{L_{{w_i}}}——增加文件f对应的新的末节点N_{\# {f_{{w_i}}}}^{'}. 之后用户将N_{\# {f_{{w_i}}}}^{'}作为交易的形式更新到区块链索引BC中,得到N_{\# {f_{{w_i}}}}^{'}的交易地址addr(N_{\# {f_{{w_i}}}}^{'}). 除此之外,用户需要利用原有{f_{{w_i}}}对应的累加值acc({f_{{w_i}}})和更新的文件f计算新的累加值acc({f_{{w_i}}})'. 最后用户将addr(N_{\# {f_{{w_i}}}}^{'})以及累加值acc({f_{{w_i}}})'更新到查找表中{w_i}键对应的值中,至此完成安全索引结构的更新. 由于区块链结构为增量数据结构,且具有防篡改性,因此无法修改或删除已有交易值信息,针对上述情况,将添加和删除文件过程均利用添加节点至区块链来进行,通过在每个节点内区分标flag标志位的值来区分添加和删除操作,flag{\text{ = 1}}则表示f为增加的文件,flag{\text{ = 0}}则表示f为删除的文件. 上述动态更新过程中服务器S可以在无需对查找表进行解密的情况下,使用用户发送的更新令牌中的密文信息直接对密态查找表直接进行更新.

    F:{\{ 0,1\} ^k} \times {\{ 0,1\} ^*} \to {\{ 0,1\} ^k}G:{\{ 0,1\} ^k} \times {\{ 0,1\} ^*} \to {\{ 0,1\} ^*}P:{\{ 0,1\} ^k} \times {\{ 0,1\} ^*} \to {\{ 0,1\} ^k} 为3个固定长度伪随机函数, {\sum _{BC}}(Init,Put,Get) 为区块链数据存储结构,具体的算法及协议描述如下:

    (K,PP) \leftarrow KeyGen{\text{(}}{{\text{1}}^k}{\text{)}}:进行用户端密钥的生成. 主要步骤如下:

    1)随机选择3个长度为k比特的比特串{K_1},{K_2},{K_3}.

    2)选择双线性配对的参数 (p,G,{\mathcal{G}},e,g) .

    3)选择 s \in \mathbb{Z}_p^* 作为一个随机的秘密陷门.

    4)计算 (g,{g^s},{g^{{s^2}}}, … {g^{{s^q}}}) 作为公开参数.

    5)输出密钥K = ({K_1},{K_2},{K_3},s),并输出公开参数PP = (g,{g^s},{g^{{s^2}}}, … ,{g^{{s^q}}}).

    (T,BC) \leftarrow Setup{\text{(}}K,f{\text{)}}:用户U初始化索引结构. 主要步骤如下:

    1)初始化长度为\# {\mathcal{W}}的查找表T.

    2)调用 {\sum }_{BC}{}_{·}Init\text{(}k\text{)} 算法,输入安全参数k,初始化区块链索引BC.

    3)对于每个关键字w \in {\mathcal{W}}

    ① 构建一个由\# {f_w}个节点({N_1},{N_2} … ,{N_{\# {f_w}}})构成的链表L,节点的结构定义为

    {N_i} = \langle {f_i},addr({N_{i - 1}}),flag\rangle \oplus {P_{{K_2}}}(w)\text{,}

    其中{f_i}为文件标识,addr({N_{i - 1}})表示节点{N_{i - 1}}的交易地址,addr({N_1}) = \bot flag为增删标识位;

    ② 对于链表{L_w}的所有节点({N_1},{N_2}, … ,{N_{\# {f_w}}}),依次调用 {\sum }_{BC}{}_{·}Put\text{(}{N}_{i}\text{)} 算法,将节点{N_i}作为交易值封装进区块链索引BC的区块上并获取交易地址addr({N_i}),最终返回addr({N_{\# {f_w}}}).

    4)对于每个关键字w \in {\mathcal{W}}

    ① 计算 {f_w} 的累加值,即

    acc({f_w}) = {g^{\prod\limits_{f \in {f_w}} {\left( {s + id(f)} \right)} }} .

    ② 输出区块链索引BC和密态查找表T共同作为安全索引结构,即

    T\left[ {{F_{{K_1}}}(w)} \right] = \left\langle {{\theta _1}{\text{,}}{\theta _2}} \right\rangle = \left\langle {addr({N_{\# {f_w}}}) \oplus {G_{{K_3}}}(w),acc({f_w})} \right\rangle .

    ({R_{\phi ({\mathcal{W}})}},\pi ; \bot ) \leftarrow Search(U(K,\phi ({\mathcal{W}}));S(T,BC)) :用户U和云服务器S交互执行针对关键字集合\mathcal{W} = \{ {w_1}, … ,{w_n}\} 的布尔表达式\phi (\mathcal{W})的搜索过程,服务器针对搜索结果生成相应布尔运算证明. 主要步骤如下:

    1)用户U.

    ① 针对每个搜索关键字w_i \in \mathcal{W}:生成搜索令牌{\tau _i} = ({\tau _{i,1}},{\tau _{i,2}},{\tau _{i,3}}) = ({F_{{K_1}}}({w_i}),{G_{{K_2}}}({w_i}),{P_{{K_3}}}({w_i})).

    ② 发送搜索令牌{\tau _s} = (\phi (\mathcal{W}),{\{ {\tau _i}\} _{i \in \mathcal{W}}})给服务器S.

    2)服务器S.

    对于每个关键字{w_i} \in \mathcal{W},执行以下步骤:

    ① 使用{\tau _{i,1}}作为键检索密态查找表T中的值{\theta _1} \leftarrow T[{\tau _{i,1}}].

    ② 计算链表头节点在索引BC中的交易地址{\alpha _1} \leftarrow {\theta _1} \oplus {\tau _{i,2}}.

    ③ 在BC中获取地址addr({N_{\# {f_{{w_i}}}}})的交易值 t{x}_{1}\leftarrow {\sum }_{BC}{}_{·}Get\left(add{r}_{{N}_{\#{f}_{w}}}\right) .

    ④ 计算{a_1}||{a_2}||{a_3} \leftarrow t{x_1} \oplus {\tau _{i,3}}.

    ⑤ 如果{a_3} = 1,则更新 {R_{{w_i}}} \leftarrow {R_{{w_i}}} \cup \left\{ {{a_1}} \right\} ,如果{a_3} = 0,则更新 {R_{{w_i}}} \leftarrow {R_{{w_i}}}/\left\{ {{a_1}} \right\} .

    ⑥ 如果{a_2} \ne \bot ,则重复过程③④,继续查找BC中地址为{a_2}的交易值,直到{a_2} = \bot . 对于所有关键字 {w_i} \in \mathcal{W}搜索完毕后,得到搜索结果R = ( {R_{{w_1}}},{R_{{w_2}}}, … , {R_{{w_{_{\# {\mathcal{W}}}}}}} ).

    对于布尔表达式\phi (\mathcal{W}),云服务器S进行如下步骤完整集合运算的证明:

    1)交集证明.

    步骤1. 计算交集{R_I} = {R_{{w_1}}} \cap {R_{{w_2}}} \cap … \cap {R_{{w_n}}},其中{R_I} = \{ {f_1},{f_2}, … ,{f_m}\} .

    步骤2. 对于每个集合 {R_{{w_i}}} 1 \leqslant i \leqslant n,执行如下:

    ①计算多项式{P_i} = \prod\limits_{f \in {R_{{w_i}}} - {R_I}} {\left( {s + f} \right)} .

    ②计算集合{R_I}对于 {R_{{w_i}}} 的子集包含证据 {{\mathcal{I}}_{{R_I},{R_{{w_i}}}}} = {g^{{P_i}}} .

    ③计算子集证据{\mathcal{I}} = \{ {{\mathcal{I}}_i}\} = {\{ {{\mathcal{I}}_{I,{f_{{w_i}}}}}\} _{1 \leqslant i \leqslant n}}.

    ④使用公开参数(g,{g^s}, … ,{g^{{s^q}}})来计算{g^{{P_i}}}的值.

    ⑤给定\{ {P_1},{P_2}, … ,{P_n}\} ,使用扩展欧几里德算法找到多项式\{ {q_1},{q_2}, … ,{q_n}\} ,满足{q_1}{P_1} + {q_2}{P_2} + … + {q_n}{P_n} = 1. 整合{\mathcal{C}} = \{ {g^{{q_1}}},{g^{{q_2}}}, … ,{g^{{q_n}}}\} 为完备性证据.

    步骤3. 整合交集证据 {\pi _I} = \{ {\mathcal{I}},{\mathcal{C}}\} .

    2)并集证明.

    步骤1. 计算并集{R_U} = {R_{{w_1}}} \cup {R_{{w_2}}} \cup … \cup {R_{{w_n}}},其中{R_U} = \{ {f_1},{f_2}, … ,{f_m}\} .

    步骤2. 对于每个集合 {R_{{w_i}}} 1 \leqslant i \leqslant n,执行如下:

    ①对于{R_U}中每个文件{f_k},计算多项式

    {F_{k,i}} = \prod\limits_{f \in {R_{{w_i}}} - {f_k}} {(s + f)} .

    ②使用公开参数(g,{g^s}, … ,{g^{{s^q}}})计算{\mathcal{M}_{k,i}} = {g^{{F_{k,i}}}}.

    步骤3. 计算多项式{P_i} = \prod\limits_{f \in {R_U} - {R_i}} {(s + f)} .

    步骤4. 计算成员证据\mathcal{M}{ = }{\{ {\mathcal{M}_{i,j}}\} _{1 \leqslant i \leqslant n,1 \leqslant k \leqslant m}},超集证据\mathcal{S} = {\{ {\mathcal{S}_i}\} _{1 \leqslant i \leqslant n}} = {\{ {g^{{P_i}}}\} _{1 \leqslant i \leqslant n}}.

    步骤5. 整合并集证据 {\pi _U} = \{ {\mathcal{M}},{\mathcal{S}}\} .

    3)差集证明.

    设差集搜索令牌{\tau _s} = (\mathcal{D}({w_i},{w_j}),{\tau _i},{\tau _j}) ,计算差集{R_D} = {R_{{w_i}}} - {R_{{w_j}}},其中{R_D} = \{ {f_1},{f_2}, … ,{f_m}\} . 之后服务器按照如下方式计算证据 {\pi _D} = \{ {\mathcal{M}},{\mathcal{S}}\} 以完成证明:

    步骤1. 对于{R_D}中每个文件{f_k}1 \leqslant k \leqslant m

    ①计算多项式

    {F_1} = \prod\limits_{f \in {R_D} - {f_k}} {(f + s)} {F_{2,1}} = \prod\limits_{f \in {R_{{w_i}}} - {f_{_k}}} {(f + s)} ,以及{F_{2,2}} = \prod\limits_{f \in {R_{{w_j}}} - {f_{_k}}} {(f + s)} .

    ②使用公开参数(g,{g^s}, … ,{g^{{s^q}}})来计算

    {\mathcal{M}}= \{ {\mathcal{M}}_1,{\mathcal{M}}_2,{\mathcal{M}}_3\} \text{,}

    其中 {\mathcal{M}}_1=g^{F_1} {\mathcal{M}}_2=g^{F_{2,1}} {\mathcal{M}}_3=g^{F_{2,2}}.

    步骤2. 计算交集{I_{{w_i} \wedge {w_j}}} = {R_{{w_i}}} \cap {R_{{w_j}}}.

    步骤3. 计算 acc({I_{{w_i} \wedge {w_j}}}) = {g^{\prod\limits_{f \in {I_{{w_i} \wedge {w_j}}}} {(f + s)} }} .

    步骤4. 对于集合{R_D}{I_{{w_i} \wedge {w_j}}},计算

    {P_1} = \prod\limits_{f \in {R_{{w_i}}} - {R_D}} {(f + s)} \text{,}
    {P_2} = \prod\limits_{f \in {R_{{w_i}}} - {I_{{w_i} \wedge {w_j}}}} {(f + s)} \text{,}
    {P_3} = \prod\limits_{f \in {R_D}} {(f + s)} ,
    {P_4} = \prod\limits_{f \in {I_{{w_i} \wedge {w_j}}}} {(f + s)} .

    步骤5. 计算超集证据:

    \mathcal{S} = ({\mathcal{S}_1},{\mathcal{S}_2},{\mathcal{S}_3},{\mathcal{S}_4}) = ({g^{{P_1}}},{g^{{P_2}}},{g^{{P_3}}},{g^{{P_4}}}) .

    步骤6. 整合差集证据 {\pi _D} = \{ {\mathcal{M}},{\mathcal{S}}\} .

    随后,云服务器S将搜索结果集合 {R_{\phi ({\mathcal{W}})}} 和针对该集合的证明 \pi 返回给用户U.

    b \leftarrow Verify(K,{R_{\phi ({\mathcal{W}})}},\pi ) :用户U验证布尔搜索结果的完整性. 主要步骤如下:

    1)交集验证.

    步骤1. 对于{\tau _s}中的每个{\tau _i}1 \leqslant i \leqslant n,使用 {\theta _2}通过以下等式来验证子集条件:

    e( {{g^{\prod\limits_{k = 1}^m {(s + {f_k})} }},{\mathcal{S}_i}} ) = e\left( {{\theta _2},g} \right) \text{,}

    其中({f_1},{f_2}, … ,{f_m})为交集中的元素,{\mathcal{S}_i} = {g^{{P_i}}}为子集证据\mathcal{S}中元素.

    步骤2. 通过以下等式来验证完备性条件:

    \prod\limits_{i = 1}^m {e({\mathcal{S}_i},{\mathcal{C}_i})} = e(g,g)\text{,}

    其中{\mathcal{S}_i}{\text{ = }}{g^{{P_i}}}为子集证据\mathcal{S}中元素,{\mathcal{C}_i} = {g^{{q_i}}}为完备性证据\mathcal{C}中对应元素.

    步骤3. 如果上述验证过程都通过,则输出1代表验证成功;否则输出0代表验证失败.

    2)并集验证.

    步骤1. 对于每个文件{f_k} \in U1 \leqslant k \leqslant m,使用{\theta _2}通过以下等式来验证验证成员条件:

    e\left( {{\mathcal{M}_{k,i}},{g^{{f_k}}}{g^s}} \right) = e\left( {{\theta _2},g} \right)\text{,}

    其中{\mathcal{M}_{k,i}}{\text{ = }}{g^{{F_{k,i}}}}\mathcal{M}中的元素.

    步骤2. 对于每个集合{R_{{w_i}}},1 \leqslant i \leqslant n,通过以下等式来验证超集条件:

    e\left( {{{\mathcal{S}}_i},acc\left( {{f_{{w_i}}}} \right)} \right) = e({g^{\prod\limits_{k = 1}^d {(s + {f_k})} }},g) \text{,}

    其中{\mathcal{S}_i}为超集证据\mathcal{S}中元素.

    只有{R_U}中的存在文件对于任意集合{f_{{w_i}}}的成员条件均不成立时,认为验证失败.

    步骤3. 如果上述验证过程都通过,则输出1代表验证成功;否则输出0代表验证失败.

    3)差集验证.

    步骤1. 对于每个文件标识{f_k} \in {R_{{w_i}}},1 \leqslant k \leqslant m,通过以下等式来验证成员条件:

    \begin{split} e\left( {{{\mathcal{M}}_1},{g^{{f_k}}}{g^s}} \right) =\;& e\left( {acc\left( {{R_D}} \right),g} \right) \text{,} e\left( {{{\mathcal{M}}_2},{g^{{f_k}}}{g^s}} \right) = \\ &e\left( {acc({R_{{w_i}}}),g} \right) \text{,} e\left( {{{\mathcal{M}}_3},{g^{{f_k}}}{g^s}} \right) = \\ &e\left( {acc({R_{{w_j}}}),g} \right) \text{,} \end{split}

    其中({\mathcal{M}_1},{\mathcal{M}_2},{\mathcal{M}_3}) = ({g^{{F_1}}},{g^{{F_{2,1}}}},{g^{{F_{2,2}}}})为成员证据\mathcal{M}中的元素.

    步骤2. 对于集合R{I_{{w_i} \wedge {w_j}}},通过以下等式来验证超集条件:

    e\left( {{{\mathcal{S}}_1},{{\mathcal{S}}_3}} \right) = e({g^{\prod\limits_{k = 1}^d {(s + {f_k})} }},g) \text{,}
    e\left( {{{\mathcal{S}}_2},{{\mathcal{S}}_{\text{4}}}} \right) = e({g^{\prod\limits_{k = 1}^d {(s + {f_k})} }},g) \text{,}

    其中 ({\mathcal{S}_1},{\mathcal{S}_2},{\mathcal{S}_3},{\mathcal{S}_4}) = ({g^{{P_1}}},{g^{{P_2}}},{g^{{P_3}}},{g^{{P_4}}}) 为超集证据\mathcal{S}中元素.

    步骤3. 当步骤1中成员条件3个等式都不成立时,判定验证失败. 如果上述验证过程都通过,则输出1代表验证成功;否则输出0代表验证失败.

    ( \bot ;T';BC') \leftarrow Update{\text{(}}U(K,f);S(T);BC) :用于用户U添加或删除包含 {{\mathcal{W}}_f} = ({w_1},{w_2}, … ,{w_d}) 关键字的文件 f 时索引结构的更新. 主要步骤如下:

    用户U计算 ({F_{{k_F}}}({w_1}),{F_{{k_F}}}({w_2}), … ,{F_{{k_F}}}({w_d})) 发送至服务器S.

    服务器S对于每一个 t_u^j ,在查找表中获取 T{\text{[}}t_u^j{\text{]}} ,将 ({\theta _1},{\theta _2}, … ,{\theta _d}) 按序发送回用户U.

    1)用户U对于每一个 {\theta _i} ,执行以下步骤:

    步骤1. 计算 add{r_{{N_{\# {f_{{w_i}}} - 1}}}} = {\theta _i} \oplus {G_{{k_G}}}({w_i}) .

    步骤2. 如添加文件,计算

    {N_{\# {f_{{w_i}}}}} = \left\langle {f{\text{,}}add{r_{{N_{\# {f_{{w_i}}} - 1}}}},1} \right\rangle \oplus {P_{{K_P}}}({w_i}) \text{,}

    如删除文件,计算

    {N_{\# {f_{{w_i}}}}} = \left\langle {f{\text{,}}add{r_{{N_{\# {f_{{w_i}}} - 1}}}},0} \right\rangle \oplus {P_{{K_P}}}({w_i}).

    步骤3. 调用 {\sum }_{BC}{}_{·}Put\left({N}_{\#{f}_{{w}_{i}}}\right) ,将{N_{\# {f_{{w_i}}}}}作为交易值封装进区块链索引BC的区块上并获取交易地址 addr\left( {{N_{\# {f_{{w_i}}}}}} \right) .

    步骤4. 计算更新后{f_{{w_i}}}对应的相关累加值

    \tau _{u,i}^3 \leftarrow {\theta _2}^{s + f}.

    步骤5. 计算\tau _i^2 \leftarrow {G_{{K_G}}}({w_i}) \oplus addr\left( {{N_{\# {f_{{w_i}}}}}} \right).

    步骤6. 如果为添加操作,计算\tau _i^3 \leftarrow {\theta _2}^{s + f}.如果为删除操作,计算\tau _{u,i}^3 \leftarrow {\theta _2}^{1/\left( {s + f} \right)}.

    步骤7. 计算{\tau _i} = \left( {\tau _i^1,\tau _i^2,\tau _i^3} \right).

    步骤8. 对于所有{\theta _i}执行完步骤1~6后,将{\tau _u} = \left( {{\tau _1},{\tau _2}, … ,{\tau _d}} \right)作为更新令牌发送给服务器.

    2)服务器S对于每个\tau _i^{},执行以下步骤:

    步骤1. 获取({\theta _1},{\theta _2}) \leftarrow T[{\tau _{i,1}}].

    步骤2. 使用\tau _{u,i}^2{\theta _1}进行更新\theta _1^\prime \leftarrow \tau _{u,i}^1.

    步骤3. 使用\tau _{u,i}^3{\theta _2}进行更新\theta _2^\prime \leftarrow \tau _{u,i}^3.

    步骤4. 更新查找表T({\theta _1}^\prime ,{\theta _2}^\prime ) \leftarrow T[{\tau _{i,1}}].

    步骤5. 输出更新后的索引结构T\prime ;BC\prime .

    首先定义3个泄露函数{L_1}(T,I){{\mathcal{L}}_2}(f,\phi ({\mathcal{W}})){\mathcal{L}_3}(f)来描述初始化、搜索和更新文件执行期间向服务器泄露的信息. 接下来的定理表明,给定以上泄露函数的情况下,VBSE-BI方案在随机预言模型下满足动态自适应CKA安全性.

    定理1. 若F,G,P为伪随机函数,则VBSE-BI方案在随机预言模型下针对自适应选择关键字攻击是({\mathcal{L}_1},{\mathcal{L}_2},{\mathcal{L}_3})安全的,即满足动态IND-CKA2安全性.

    证明. 在Idea{l_{{\mathcal{A}},{\mathcal{S}}}}(k)中,通过{\mathcal{L}_1}的信息,模拟器可以确定可以获知查找表T的大小\# T、字典大小集合\# {\mathcal{W}}以及集合{[id(w)]_{w \in {\mathcal{W}}}}. 随后,它可以使用随机值来构建搜索结构,并输出作为模拟值(\widetilde T,\widetilde {BC}). 由于真实索引是使用伪随机函数F,G,P产生的,而模拟索引是由随机比特填充的,因此,如果函数F,G,P的伪随机性成立,则对于所有PPT敌手\mathcal{A},无法在多项式时间内区分真实索引和模拟索引.

    为了响应敌手的质询,模拟器需要使用{\mathcal{L}_2}{\mathcal{L}_3}来构建模拟搜索令牌和更新令牌,使其与真实令牌是无法区分的. 具体来说,泄露函数{{\mathcal{L}}_2}(\delta ,f,\phi ({\mathcal{W}}))向服务器泄露了所有关键字w \in \mathcal{W}的标识id(w),以及每个关键字标识id(w)和包含关键字w的文件标识之间的关联. 因为 {\tilde \tau _s} = ({\tilde \tau _1},{\tilde \tau _2}, … ,{\tilde \tau _n}) {\tilde \tau _i} = ( \gamma ( {id({w_i})} ) T\left[ {\gamma \left( {id({w_i})} \right)} \right] \oplus iT\left( {id({w_i})} \right),{K_{id({w_i})}} ) ,而 {\tilde \tau _s} = ({\tilde \tau _1},{\tilde \tau _2}, … ,{\tilde \tau _n}) {\tau _i} = ({F_{{K_1}}}({w_i}),{G_{{K_2}}}({w_i}), {P_{{K_3}}}({w_i})) ,根据函数F,G,P的伪随机性,对于所有概率多项式计算能力敌手A,不能区分搜索令牌和模拟搜索令牌{\tau _s}{\tilde \tau _s}. 同理,泄露函数{L_3}(f)泄露了更新协议中更新文件所包含的关键字的标识符集合. {\left[ {id(w)} \right]_{w \in {{\mathcal{W}}_f}}}. 以及关键字w是否是一个新的关键字{\left[ {apprs(w)} \right]_{w \in {{\mathcal{W}}_f}}},其中apprs(w)为一个1 b的标志位,值为1表示关键字w已经存在于索引中;值为0表示w是一个新关键字. 因此,基于函数F,G,P的伪随机性,敌手同样不能区分更新令牌{\tau _u}和模拟更新令牌.

    综上所述,对于所有PPT敌手\mathcal{A}来说,实验Rea{l_{\mathcal{A}}}(k)Idea{l_{{\mathcal{A}},{\mathcal{S}}}}(k)的输出是一致的,除了以可忽略的概率negl(k),即

    \left| {Pr\left[ {Rea{l_{\mathcal{A}}}(k) = 1} \right] - Pr\left[ {Idea{l_{{\mathcal{A}},{\mathcal{S}}}}(k) = 1} \right]} \right| \leqslant negl(k).

    因此,VBSE-BI方案在在随机预言模型下满足动态IND-CKA2安全性. 证毕.

    VBSE-BI方案的不可伪造性指对于所有概率多项式计算能力敌手\mathcal{A},针对伪造的布尔搜索结果,无法生成正确有效的证据.

    定理2. 如果双线性q-SDH假设成立,那么VBSE-BI方案满足不可伪造性.

    证明. 如果存在一个概率多项式计算能力敌手\mathcal{A}使得实验 Forg{e_{\mathcal{A}}}({1^k}) 的输出为1,那么就存在一个模拟器 Sim,有能力攻破双线性q-SDH假设. 证明主要针对交集布尔搜索场景的不可伪造性,并集以及差集证明方法与交集不可伪造性证明方法过程类似,不再赘述.

    假设\mathcal{A}在执行针对集合\mathcal{W}的搜索算法 {\text{Search}} 后,输出一个文件标识符集合 {\widetilde R_{\phi ({\mathcal{W}})}} \ne {R_{\phi ({\mathcal{W}})}} 和一个有效的证明\pi . 这意味着该证明 \pi 通过了验证算法{\text{Verify}}中的所有验证,即敌手\mathcal{A}成功的进行了伪造. 证明 \pi = \left\{ {\mathcal{S},\mathcal{C}} \right\} 中的伪造可以分为伪造 \mathcal{S} 和伪造 \mathcal{C} 这2种情况. 通过以下分析,我们能够得出,模拟器\mathcal{S}im能够通过伪造 \mathcal{S} 和伪造 \mathcal{C} 来攻破双线性q-SDH假设.

    给定模拟器\mathcal{S}im双线性q-SDH实例: (p,G,{\mathcal{G}},e,g) 以及一个(q + 1)元组(g,{g^s}, … ,{g^{{s^q}}}),模拟器\mathcal{S}im和敌手\mathcal{A}在实验 Ver{i_{\mathcal{A}}}({1^k}) 中交互.

    首先,由于模拟器\mathcal{S}im不知道给定实例中的s值,他需要对实验 Ver{i_{\mathcal{A}}}({1^k}) 进行修改,重新构造和s值相关的算法:

    1)KeyGen算法中,模拟器\mathcal{S}im在不知情s的情况下直接使用(g,{g^s},{g^{{s^2}}}, … ,{g^{{s^q}}})作为公开参数并发送给敌手\mathcal{A}.

    2)Setup算法中,模拟器\mathcal{S}im利用(g,{g^s},{g^{{s^2}}}, … ,{g^{{s^q}}})计算 acc({f_{{w_i}}}) = {g^{\prod\limits_{f \in {f_w}} {\left( {s + f} \right)} }} . 为了模拟更新令牌,模拟器\mathcal{S}im需要构造一个额外辅助结构\mathcal{N},为每个 acc({f_{{w_i}}}) 存储一个多项式 {n_w} = \prod\limits_{f \in {f_w}} {\left( {s + f} \right)} .

    3)Update协议中,模拟器\mathcal{S}im不能直接生成更新令牌{\tau _u},首先找到结构\mathcal{N}中与{\theta _{i,2}}相等的多项式{n_i},然后利用(g,{g^s},{g^{{s^2}}}, … ,{g^{{s^q}}})计算{g^{{n_i}(s + f)}},生成新的{\theta _2} = {g^{{n_i}(s + f)}}.

    模拟器\mathcal{S}im将和s值相关的数值通过上述方式计算,然而由于修改的实验中算法的输出和实验 Ver{i_{\mathcal{A}}}({1^k}) 算法的输出是不可区分的,所以在敌手\mathcal{A}的视角中,新计算的数值仍然有效. 那么如果敌手\mathcal{A}赢得了游戏,那么意味着敌手\mathcal{A}攻破了双线性q-SDH假设,即成功伪造了伪造子集证据 \mathcal{S} 或者成功伪造了完备性证据 \mathcal{C} .

    1)伪造子集证据 \mathcal{S} :敌手输出错误的搜索结果I' = \{ {f_1},{f_2}, … ,{f_m}\} 和伪造的子集证据{\mathcal{S}_i} = \stackrel{\frown}{g}^{{P_i}}. 令{S_i} = \{ {f_1}, {f_2}, … ,{f_q}\} 为包含关键字{w_i}的文件标识符集合,如果I' \not\subset {S_i},那么一定存在某个1 \leqslant j \leqslant m,使得{f_j} \notin {S_i}. 通过验证意味着

    e( {{g^{\prod\limits_{f \in I'} {(s + f)} }},{\mathcal{S}}} ) = e\left( {{g^{(s + {f_1})(s + {f_2}) … (s + {f_q})}},g} \right) \text{,}

    因为{f_j} \notin {S_i},因此(s + {f_j})并不能整除 (s + {f_1}) (s + {f_2}) … (s + {f_q}) . 所以存在一个次为q - 1的多项式Q(s)和一个常数c \ne 0,使得 (s + {f_1})(s + {f_2}) … (s + {f_q}) = Q(s)(s + {f_j}) + c . 因此

    e{( {g,\stackrel{\frown}{g}^{{P_i}}} )^{(s + {f_j})\prod\limits_{f \in I' - {f_j}} {(s + f)} }} = e{\left( {g,g} \right)^{Q(s)(s + {f_j}) + c}}

    经过变形后,最终可以得到

    e{\left( {g,g} \right)^{\frac{1}{{s + {f_j}}}}} = {\left( {e{{( {g,{\stackrel{\frown}{g}^{{P_i}}}} )}^{\prod\limits_{f \in I' - {f_j}} {(s + f)} }}e{{\left( {g,g} \right)}^{ - Q(s)}}} \right)^{1/c}} \text{,}

    这说明模拟器\mathcal{S}im可以借在多项式时间内解决双线性q-SDH问题的一个实例. 这违反了双线性q-SDH假设.

    2)伪造完备性证据 \mathcal{C} :这种情况下,敌手输出错误的交集搜索 {\widetilde R_{\phi ({\mathcal{W}})}} = \{ {f_1},{f_2}, … ,{f_m}\} 和一个完备性证据 \stackrel{\frown}{\cal C}. 因为 {\widetilde R_{\phi ({\mathcal{W}})}} R 的真子集,那么多项式{P_1},{P_2}, … ,{P_n}至少存在一个公因式. 令(s + f){P_1},{P_2}, … ,{P_n}的一个公因式,其中f \notin I'. 通过验证算法意味着 \prod\limits_{i = 1}^m {e( {\cal S},\stackrel{\frown}{\cal C} )} = e\left( {g,g} \right)成立. 通过计算{g^{{{P'}_i}}} = {({g^{{P_i}}})^{1/(s + f)}},将(s + f)从每个{P_i}中提取出来,即

    \begin{split} \prod\limits_{i = 1}^n {e\left( {{g^{{P_i}}},{g^{{q_i}}}} \right)} =\;& \prod\limits_{i = 1}^n {e( {{{( {{g^{{{P'}_i}}}} )}^{s + f}},{g^{{q_i}}}} )}= \\ &{\left( {\prod\limits_{i = 1}^n {e\left( {{g^{{{P'}_i}}},{g^{{q_i}}}} \right)} } \right)^{s + f}} =e(g,g) \end{split}

    因此模拟器\mathcal{S}im可以很容易的计算 e{\left( {g,g} \right)^{1/(s + f)}} = \prod\limits_{i = 1}^n {e\left( {{g^{{{P'}_i}}},{g^{{q_i}}}} \right)} ,从而找到双线性q-SDH问题的一个实例的解,这同样违反了双线性q-SDH假设.

    综上所述,如果敌手可以伪造出一个有效的证据,那么就存在一个模拟器\mathcal{S}im,可以攻破哈希函数{H_3}的抗碰撞性和双线性q-SDH假设的至少一个. 因此,对于所有概率多项式计算能力敌手\mathcal{A}来说,赢得实验 Ver{i_{\mathcal{A}}}({1^k}) 概率为:

    Pr{\text{[}}Forg{e_{\mathcal{A}}}({1^k}) = {\text{1}}] \leqslant negl({1^k}) \text{,}

    其中 negl({1^k}) 是一个以安全参数 {1^k} 为输入的可忽略函数. 因此VBSE-BI方案具有不可伪造性.

    本节主要分析提出VBSE-BI方案的性能,. 首先从理论层面对方案的各个阶段的性能进行综合对比评估,之后通过设计实验方案的原型系统,来对不同阶段的性能进行测试,得到实验结果.

    针对模型构建过程中的存储代价、计算代价以及通信代价3个维度分析方案性能. 设N表示关键字集合的大小,M为文件总个数,n为布尔搜索请求中包含的关键字个数,m为搜索结果中文件个数,d为更新文件包含的关键字个数. 方案的代价分析如表2所示.

    表  2  代价分析
    Table  2.  Cost Analysis
    复杂度类别 VBSE-BI方案 文献[23]方案
    用户端 服务器端 用户端 服务器端
    {\text{Sto}}{{\text{r}}_{{\text{Index}}}} {\mathcal{O}}(1) {\mathcal{O}}(N) {\mathcal{O}}(1) {\mathcal{O}}(NM){\text{ + }}{\mathcal{O}}(N){\text{ + }}{\mathcal{O}}(M)
    {\text{Com}}{{\text{p}}_{{\text{Search}}}} {\mathcal{O}}(n) {\mathcal{O}}(mn) {\mathcal{O}}(n) {\mathcal{O}}(n + mn)
    {\text{Com}}{{\text{p}}_{{\text{ProveI}}}} - {\mathcal{O}}(N{\log ^2}N\log \log N) - {\mathcal{O}}(N{\log ^2}N\log \log N)
    {\text{Com}}{{\text{p}}_{{\text{ProveU}}}} - {\mathcal{O}}(N\log N) - -
    {\text{Com}}{{\text{p}}_{{\text{ProveD}}}} - {\mathcal{O}}(N\log N) - -
    {\text{Com}}{{\text{m}}_{{\text{Search}}}} {\mathcal{O}}(n + m) {\mathcal{O}}(n + m) {\mathcal{O}}(n) {\mathcal{O}}(n\log n + m)
    {\text{Com}}{{\text{p}}_{{\text{Verify}}}} {\mathcal{O}}(n + m) - {\mathcal{O}}(n\log n + m) -
    {\text{Com}}{{\text{p}}_{{\text{Update}}}} {\mathcal{O}}(d) {\mathcal{O}}(d) {\mathcal{O}}(\log N + d) {\mathcal{O}}(d)
    {\text{Com}}{{\text{m}}_{{\text{Update}}}} {\mathcal{O}}(d) {\mathcal{O}}(d) {\mathcal{O}}(d) {\mathcal{O}}(d)
    注:{\text{Sto}}{{\text{r}}_{{\text{Index}}}}—存储空间复杂度;{\text{Com}}{{\text{p}}_{{\text{Search}}}}—搜索计算复杂度;{\text{Com}}{{\text{p}}_{{\text{ProveI}}}}—交集证明计算复杂度;{\text{Com}}{{\text{p}}_{{\text{ProveU}}}}—并集证明计算复杂度;{\text{Com}}{{\text{p}}_{{\text{ProveD}}}}—差集证明计算复杂度;{\text{Com}}{{\text{p}}_{{\text{Verify}}}}—验证计算复杂度;{\text{Com}}{{\text{m}}_{{\text{Search}}}}—搜索通信复杂度;{\text{Com}}{{\text{p}}_{{\text{Update}}}}—更新计算复杂度;{\text{Com}}{{\text{m}}_{{\text{Update}}}}—更新通信复杂度;-:无复杂度体现.
    下载: 导出CSV 
    | 显示表格

    存储代价主要考虑云服务器的安全索引存储代价,设T为长度为N的查找表,索引的空间复杂度为\mathcal{O}(N). 在计算代价方面,构建搜索令牌的计算代价与搜索关键字个数有关,时间复杂度为\mathcal{O}(n). 服务器对搜索令牌进行搜索操作时的计算复杂度为\mathcal{O}(mn),进行交集运算的渐近运行时间为\mathcal{O}(N{\log ^2}N\log \log N),并集和差集云服务器的渐近运行时间复杂度为\mathcal{O}(N\log N),用户端完成验证操作的渐近运行时间复杂度为\mathcal{O}(n) + \mathcal{O}(m). 搜索通信代价主要由搜索关键字个数以及搜索结果中文件个数决定. 当用户想要搜索n个关键字的布尔集合时,和服务器交互一次,发送搜索令牌的通信复杂度为\mathcal{O}(n),云服务器返回搜索结果的通信复杂度为\mathcal{O}(m),因此通信的数据规模为的通信复杂度为\mathcal{O}(n + m). 与同类型的文献[23]方案相比,本方案在支持更丰富的布尔查询语句的同时,降低了服务器端索引的存储代价以及搜索、验证以及更新的计算代价.

    本文对提出的方案进行了编程实现,然后通过对算法的性能测试来分析方案在实际应用中的表现. 方案部署一个远程服务器来模拟云服务器,处理器为Intel Core i7-2600 Quad-Core Processor 3.4 GHz,内存为8 GB;同时部署多台主机模拟用户端,每台主机模拟为一个和云服务器交互的用户. 此外,方案利用Ethereum仿真平台Ropsten Testnets模拟区块链存储平台,具体来说,利用Ethereum的web3 API包[26]来构建区块链索引,调用Metamask[27]创建本地钱包来实例化 {\sum }_{BC}{}_{·}Init\text{()} 算法,调用signTransaction函数实例化 {\sum }_{BC}{}_{·}Put\text{()} 算法来存储链式索引结构中的节点信息;调用sendRawTransaction函数接受已签名的交易同时输出交易的地址;搜索时,调用getTransaction函数来实例化 {\sum }_{BC}{}_{·}Get\text{()} 算法将交易的地址作为输入并输出关联的交易内容,然后读取数据字段以检索链式索引中的节点信息. 方案调用OpenSSL_SHA256-HMAC[28]算法实现伪随机函数FGP. 使用Enron邮件数据集[29]来进行性能的评估,从邮件集合中随机选择1 000个文件作为测试用的文件集.

    根据系统实现的功能,测试系统执行不同操作时的云服务器端和用户端的计算开销及通信开销,其中服务器计算开销主要测试的内容包括搜索时间、生成证明时间,用户的计算开销主要测试验证时间,通信开销主要测试云服务器返回搜索结果的数据量. 实验中每个数据均为实验重复50 次并取平均值后得到的结果.

    1)计算开销. 计算开销可以分为区块链索引搜索开销、服务器本地证明开销以及用户端本地验证开销,如图3所示. 当搜索关键字数量为(2,4,6,8,10)时,搜索区块链索引的时间开销与关键字个数大致呈线性关系(1.817~5.755 s). 证明过程耗时较搜索过程大,原因为包含较多指数运算和双线性配对运算,尽管关键字数量变化,时间开销相对稳定,维持在6.1~6.8 s之间,与理论分析一致. 由于这些计算的效率与所选用的曲线参数和配对算法有很大关系,通过多线程计算和预先计算,可以显著降低证明阶段的计算时间. 因此随着参数和算法的不断优化,其效率可以进一步得到提升. 此外,服务端的算法还可以进行一些实现方面的优化,从而可以大大降低证明阶段所花费的时间. 例如对集合证据使用多线程来计算,以及使用预先计算好的{P_i}{g^{{P_i}}}等. 用户计算开销主要测试在不同数目关键字情况下进行搜索时用户完成验证操作的时间,开销与关键字个数无关,维持在1.0~1.8 s之间. 验证过程中耗时最多的操作为双线性配对过程,与服务器端的搜索和证明时间相比,用户端计算开销为服务器端计算开销的9.98%~14.03%. 因此,VBSE-BI方案在用户端的计算开销相对较低,验证操作高效快速,极大地减少了用户端的计算负担. 这使得方案在实际应用中具有较好的用户体验,特别是在资源受限的移动设备上,表现尤为突出.

    图  3  计算开销与关键字数量之间的关系
    Figure  3.  The relationship between computational cost and the number of keywords

    2)通信开销. 通信开销主要包含搜索结果的数据量和额外证明的数据量. 图4表明了通信开销与搜索时布尔表达式中的关键字数量之间的关系. 当搜索时使用的关键字数量为(2,4,6,8,10)递增时,通信开销中搜索结果的数据量从758 B减少至201 B这是因为符合多个关键字布尔表达式的搜索结果减少,传输的数据量也相应减少. 证明数据量从502B增加至1 896 B,因为更多的关键字需要更多的证明数据来保证搜索结果的正确性和完整性,占总数据量的36.97%~76.54%. 因此,额外证明的数据量是影响通信开销的主要因素,与理论分析一致. 因此,对于频繁查询的关键字,预先生成并存储其证明数据,减少实时计算和传输的开销,可以显著减少VBSE-BI方案中的通信开销,提高整体性能. 特别是在处理较多关键字的搜索时,通过优化证明算法和减少冗余数据,可以有效地控制通信开销的增长,从而提高方案在实际应用中的效率和可扩展性.

    图  4  通信开销与关键字数量之间的关系
    Figure  4.  The relationship between communication cost and the number of keywords

    本文提出一种基于区块链索引的可验证布尔搜索加密方案. 设计基于区块链的索引构建算法和索引动态更新算法,并利用可证安全的对称加密和同态加密机制对索引进行加密,实现多关键字布尔搜索. 针对布尔搜索的完整性验证需求,给出布尔搜索结果不可伪造性定义,并提出基于双线性映射累加器和扩展欧几里德算法的布尔运算完整性验证算法. 安全性分析表明,本方案在随机预言模型下能够抵抗动态选择关键字攻击,并且在双线性阶强Diffie-Hellman 假设下满足不可伪造性. 性能分析表明,本方案有效地降低了搜索时的通信代价以及用户端计算复杂度. 本方案提升可搜索加密的可用性和确保用户享受的合法权益不受损害具有重要意义. 本文搜索协议在进行搜索结果证明时的计算代价具有提升空间,因此在未来的研究中重点关注此方面效率的提高. 除此之外,未来考虑使方案满足有隐私保护需求的更多密文搜索场景,例如基于兴趣的推荐服务以及云边协同隐私保护查询等.

    作者贡献声明:李宇溪负责模型设计,方案设计,算法设计,方案分析,论文撰写及修改;陈晶晶负责安全性分析,实验环境部署,论文撰写及修改;周福才负责模型设计,技术路线可行性分析;徐剑负责理论基础,整体思路确定;纪东负责实验分析,论文修改.

  • 图  1   大语言模型安全与隐私风险

    Figure  1.   Security and privacy risks of large language models

    图  2   部署LLM应用于NLP任务的3种范式

    Figure  2.   Three paradigms for deploying LLMs in NLP tasks

    图  3   LLM常规安全威胁示例

    Figure  3.   Examples of conventional security threats to LLMs

    图  4   典型对抗样本攻击示意图

    Figure  4.   Illustration of a typical adversarial sample attack

    图  5   提示中不同位置处的扰动

    Figure  5.   Perturbations at different positions in prompts

    图  6   代表性后门攻击场景及方法

    Figure  6.   Representative backdoor attack scenarios and methods

    图  7   大模型新型安全风险

    Figure  7.   Emerging security risks of large models

    表  1   针对LLM的代表性对抗样本攻击工作总结

    Table  1   Summary of Representative Adversarial Example Attacks on LLMs

    范式 方法 扰动粒度 隐蔽性 语义损害 实验任务 目标模型 扰动对象
    常规微调 Hotflip[13] C/W TC 样本
    Textbugger[14] C/W TC □/■ 样本
    Behjati 等人[15] W TC 样本
    UAT[16] W/S TC/NLI/TG 样本
    DeepWordBug[17] C TC 样本
    VIPER[18] C RTE/TC 样本
    TextFooler[19] W NLI/TC 样本
    BERT-Attack[20] W NLI/TC 样本
    BAE[21] W TC 样本
    CLARE[22] W NLI/TC 样本
    Maheshwary等人[23] W NLI/TC 样本
    TextHoaxer[24] W NLI/TC 样本
    提示学习 Xu 等人[25] S TC 提示模板
    PAT[26] W/S NLI/TC 样本
    AdvICL[29] C/W TE/TC 提示范例
    Qiang 等人[30] W TC 提示范例
    指令微调 PROMPTINJECT[34] S TG 指令提示
    Shen 等人[35] S TG 指令提示
    HOUYI[39] S TG 指令提示
    Zou 等人[41] S TG 指令提示
    AUTODAN [42] S TG 指令提示
    Agent Smith[36] 像素 TG 图像输入
    InjecAgent[37] S TG Agent提示
    注:C=字符,W=单词,S=句子;●=高,◑=中,○=低; □=白盒,■=黑盒; TC=文本分类,TE=文本蕴含,NLI=自然语言推断,TG=文本生成.
    下载: 导出CSV

    表  2   针对LLM的代表性后门攻击工作总结

    Table  2   Summary of Representative Backdoor Attack Works Targeting LLMs

    范式 方法 扰动粒度 隐蔽性 语义损害 实验任务 模型权限 样本特异 主要特点
    常规微调 Dai等人[43] S TC × 子句易引起误触发
    Yang等人[44] W TC × 多个单词组合作触发器
    Kwon等人[45] W TC × 单个关键词作触发器
    RIPPLe[46] W TC × 微调LLM前注入后门
    BadNL[47] C/W/S TC × 不同触发器粒度分析
    Lu等人[48] C/W TC 动态触发器位置
    Qi等人[49] I TC 特殊语法作为触发特征
    Qi等人[50] I TC 语言风格作为触发特征
    Pan等人[51] I TC 语言风格作为触发特征
    Li等人[53] W TC × LLM中逐层注入后门
    Yang等人[54] W TC/SPC × 仅修改词嵌入向量
    TrojanLM[56] W TC/QA/TG × 微调LLM前注入后门
    Badpre[57] W TC/QA/NER × 下游任务未知
    Shen等人[58] W TC × 下游任务未知
    NeuBA[59] W TC × 下游任务未知
    UOR[60] W TC × 动态后门向量表示
    提示学习 Xu 等人[24] W TC × 〈MASK〉词元映射特殊向量
    Du等人[61] W TC/SPC × 连续提示向量组中的后门
    Cai等人[62] W TC/QA 连续提示向量组中的后门
    Zhao等人[63] S TC × 离散提示词元组作触发器
    NOTABLE[64] W TC × 离散提示词元组作触发器
    指令微调 Xu等人[65] S TG × 恶意指令作为后门
    Yan等人[66] S TG × 训练时附加虚拟恶意指令
    Rando等人[67] W TG × RLHF中注入后门
    BadAgent[69] W TG × 大模型agent中注入后门
    BadEdit[72] W/S TG × 编辑模型参数注入后门
    MEGen[73] W/S TG × 编辑模型参数注入后门
    注:C=字符,W=单词,S=句子,I=语法或风格;●=高,◑=中,○=低;□=白盒,☒=灰盒,■=黑盒;TC=文本分类,TG=文本生成,SPC=句子对分类,QA=问答,TG=文本生成,NER=命名实体识别. 样本特异(sample-specific)指触发器是否与样本相关.
    下载: 导出CSV

    表  3   构成数据隐私威胁的典型攻击

    Table  3   Typical Attacks that Pose Data Privacy Threats

    攻击方式 工作 模型任务 实验模型 攻击目标 目标数据
    成员推断 Carlini等人[126] 生成 GPT-2 训练数据成员判断 预训练数据
    SPV-MIA[127] 生成/分类 GPT-2,GPT-J,Falcon等 训练数据判断 预训练数据/微调数据
    Kandpal等人[128] 生成 GPT-Neo 训练数据判断 微调数据
    Duan等人[129] 分类 GPT-2 提示词内信息 系统提示词中数据
    数据提取 Lehman等人[130] 生成 BERT PII探测 微调数据
    Carlini等人[118] 生成 GPT-2 训练数据提取 预训练数据
    ProPILE[131] 生成 OPT PII探测 预训练数据
    Nasr等人[132] 生成 GPT-2,LLaMA,Falcon等 训练数据提取 预训练数据
    模型逆向 Pan等人[133] 分类 BERT,XLNet,GPT-2,RoBERTa, Ernie等 特征向量模式重建、关键字推理 输入文本
    Song等人[134] 通用任务 BERT,ALBERT 解码特征向量 输入文本
    GEIA等人[135] 通用任务 BERT,RoBERta 解码特征向量 输入文本
    Text Revealer[136] 分类 TinyBERT,BERT 解码特征向量 微调数据
    模型越狱 Shen等人[35] 生成 GPT-4 PII探测 预训练数据
    Li等人[137] 生成 ChatGPT PII探测 预训练数据
    下载: 导出CSV

    表  4   不同对抗样本防御策略的对比

    Table  4   Comparison of Different Adversarial Sample Defense Strategies

    防御策略方法简介优点局限性
    对抗训练训练数据中加入对抗样本,
    提高模型鲁棒性
    适用于多
    种任务
    训练效率降低
    鲁棒性认证提出一种方法以认证模型
    在输入扰动下的稳定性
    提供鲁棒
    性保障
    计算成本高,
    适用性受限
    下载: 导出CSV

    表  5   不同后门防御策略的对比

    Table  5   Comparison of Different Backdoor Defense Strategies

    防御策略 角度 方法简介 优点 局限性
    数据筛选 数据 训练剔除毒性数据,推理过滤特征样本 有效防止后门触发 依赖特征识别精度
    文本清洗 数据 利用转述消除可能的触发特征 简便适用,适合推理阶段 对复杂触发器效果有限
    后门检测 模型 生成模型识别并过滤后门特征 有效识别异常特征 计算成本高
    知识蒸馏 模型 利用注意力蒸馏技术淡化后门触发模式 无需修改结构,适用广泛 影响模型性能
    精剪 模型 剪除对干净样本影响小的神经元 降低后门激活概率,保持精度 模型可用性受损
    下载: 导出CSV

    表  6   投毒攻击防御策略的对比

    Table  6   Comparison of Poisoning Attack Defense Strategies

    防御策略方法简介优点局限性
    梯度整形利用差分隐私裁剪与
    噪声抵御投毒攻击
    提高鲁棒性增加计算复杂度
    关键词检测移除后门关键词
    清理投毒样本
    简单有效依赖关键词,
    适用性有限
    下载: 导出CSV

    表  7   内容检测于防范的对比

    Table  7   Comparison of Content Detection in Prevention

    适用场景 防御策略 方法简介 优点 局限性
    内容合规检测静态检测构建静态数据集,评估风险评测透明时效性差
    动态检测基于变异进化生成动态的测试数据实时检测潜在风险测试成本高
    幻觉缓解自我评估通过自我评估调整模型,以准确地选择性预测提高预测可靠性增加计算复杂度
    标注提示使用带标签的上下文提示诱导或减少幻觉生成有效缓解LLM的幻觉现象依赖标签设计
    下载: 导出CSV

    表  8   不同隐私保护策略的对比

    Table  8   Comparison of Different Privacy Protection Strategies

    防御策略方法简介优点局限性
    差分隐私添加噪声保护数据隐私有效隐私保护降低模型效用
    同态加密加密推理过程保护效果理论性强计算复杂度高,资源消耗大
    黑盒防御通过接口控制输出,减少数据泄露不改模型结构,适用广泛被利用生成相似的数据
    机器遗忘重训练改变模型参数消除数据点影响隐私合规,提升用户信任难以精准遗忘,降低模型效用
    知识编辑修改模型参数或激活值保护敏感信息开销较小,效率较高难以消除隐含关联
    下载: 导出CSV
  • [1]

    Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[J]. arXiv preprint, arXiv: 1706.03762, 2023

    [2]

    Radford A, Narasimhan K, Salimans T, et al. Improving language understanding by generative pre-training[EB/OL]. 2018[2024-05-23]. https://hayate-lab.com/wp-content/uploads/2023/05/43372bfa750340059ad87ac8e538c53b.pdf

    [3]

    Devlin J, Chang M W, Lee K, et al. BERT: Pre-training of deep bidirectional transformers for language understanding[J]. arXiv preprint, arXiv: 1810.04805, 2019

    [4]

    Mikolov T, Chen K, Corrado G, et al. Efficient estimation of word representations in vector space[J]. arXiv preprint, arXiv: 1301.3781, 2013

    [5]

    Pennington J, Socher R, Manning C. GloVe: Global vectors for word representation[C] //Proc of the 19th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2014: 1532−1543

    [6] 陈慧敏,刘知远,孙茂松. 大语言模型时代的社会机遇与挑战[J]. 计算机研究与发展,2024,61(5):1094−1103 doi: 10.7544/issn1000-1239.202330700

    Chen Huimin, Liu Zhiyuan, Sun Maosong. The social opportunities and challenges in the era of large language models[J]. Journal of Computer Research and Development, 2024, 61(5): 1094−1103 (in Chinese) doi: 10.7544/issn1000-1239.202330700

    [7]

    Brown T B, Mann B, Ryder N, et al. Language models are few-shot learners[J]. arXiv preprint, arXiv: 2005.14165, 2020

    [8]

    Morris J X, Lifland E, Yoo J Y, et al. TextAttack: A framework for adversarial attacks, data augmentation, and adversarial training in NLP[J]. arXiv preprint, arXiv: 2005.05909, 2020

    [9]

    Zeng Guoyang, Qi Fanchao, Zhou Qianrui, et al. OpenAttack: An open-source textual adversarial attack toolkit[C] //Proc of the 59th Annual Meeting of the ACL and the 11th Int Joint Conf on Natural Language Processing: System Demonstrations. Stroudsburg, PA: ACL, 2021: 363−371

    [10]

    Wang Boxin, Xu Chejian, Wang Shuohang, et al. Adversarial GLUE: A multi-task benchmark for robustness evaluation of language models[J]. arXiv preprint, arXiv: 2111.02840, 2021

    [11]

    Papernot N, McDaniel P, Swami A, et al. Crafting adversarial input sequences for recurrent neural networks[C] //Proc of the 2016 IEEE Military Communications Conf. Piscataway, NJ: IEEE, 2016: 49−54

    [12]

    Liang Bin, Li Hongcheng, Su Miaoqiang, et al. Deep text classification can be fooled[C] //Proc of the 27th Int Joint Conf on Artificial Intelligence. Stockholm, Sweden: International Joint Conference on Artificial Intelligence Organization, 2018: 4208−4215

    [13]

    Ebrahimi J, Rao A, Lowd D, et al. HotFlip: White-box adversarial examples for text classification[J]. arXiv preprint, arXiv: 1712.06751, 2018

    [14]

    Li Jinfeng, Ji Shouling, Du Tianyu, et al. TextBugger: Generating adversarial text against real-world applications[J]. arXiv preprint, arXiv: 1812.05271, 2018

    [15]

    Behjati M, Moosavi-Dezfooli S M, Baghshah M S, et al. Universal adversarial attacks on text classifiers[C] // Proc of the 44th IEEE Int Conf on Acoustics, Speech and Signal Processing (ICASSP). Piscataway, NJ: IEEE, 2019: 7345−7349

    [16]

    Wallace E, Feng S, Kandpal N, et al. Universal adversarial triggers for attacking and analyzing NLP[J]. arXiv preprint, arXiv: 1908.07125, 2021

    [17]

    Gao J, Lanchantin J, Soffa M L, et al. Black-box generation of adversarial text sequences to evade deep learning classifiers[J]. arXiv preprint, arXiv: 1801.04354, 2018

    [18]

    Eger S, Şahin G G, Rücklé A, et al. Text processing like humans do: Visually attacking and shielding NLP systems[C] //Proc of the 18th Conf of the North American Chapter of the ACL: Human Language Technologies (Volume 1: Long and Short Papers). Stroudsburg, PA: ACL, 2019: 1634−1647

    [19]

    Jin Di, Jin Zhijing, Zhou J, et al. Is BERT really robust? A strong baseline for natural language attack on text classification and entailment[J]. arXiv preprint, arXiv: 1907.11932, 2020

    [20]

    Li Linyang, Ma Ruotian, Guo Qipeng, et al. BERT-ATTACK: Adversarial attack against BERT using BERT[J]. arXiv preprint, arXiv: 2004.09984, 2020

    [21]

    Garg S, Ramakrishnan G. BAE: BERT-based adversarial examples for text classification[C] //Proc of the 25th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 6174−6181

    [22]

    Li Dianqi, Zhang Yizhe, Peng Hao, et al. Contextualized perturbation for textual adversarial attack[J]. arXiv preprint, arXiv: 2009.07502, 2021

    [23]

    Maheshwary R, Maheshwary S, Pudi V. Generating natural language attacks in a hard label black box setting[C] //Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA : AAAI, 2021: 13525−13533

    [24]

    Ye Muchao, Miao Chenglin, Wang Ting, et al. TextHoaxer: Budgeted hard-label adversarial attacks on text[C] // Proc of the 36th AAAI Conf on Artificial Intelligence. Palo Alto, CA : AAAI, 2022: 3877−3884

    [25]

    Xu Lei, Chen Yangyi, Cui Ganqu, et al. Exploring the universal vulnerability of prompt-based learning paradigm[J]. arXiv preprint, arXiv: 2204.05239, 2022

    [26]

    Xu Lei, Chen Yangyi, Cui Ganqu, et al. A prompting-based approach for adversarial example generation and robustness enhancement[J]. arXiv preprint, arXiv: 2203.10714, 2022

    [27] Liu X,Zheng Y,Du Z,et al. GPT understands,too[J]. AI Open,2024,5:208-215(只有卷
    [28]

    Lu Yao, Bartolo M, Moore A, et al. Fantastically ordered prompts and where to find them: Overcoming few-shot prompt order sensitivity[J]. arXiv preprint, arXiv: 2104.08786, 2022

    [29]

    Wang Jiongxiao, Liu Zichen, Park K H, et al. Adversarial demonstration attacks on large language models[J]. arXiv preprint, arXiv: 2305.14950, 2023

    [30]

    Qiang Yao, Zhou Xiangyu, Zhu Dongxiao. Hijacking large language models via adversarial in-context learning[J]. arXiv preprint, arXiv: 2311.09948, 2023

    [31]

    Shin T, Razeghi Y, Logan IV R L, et al. AutoPrompt: Eliciting knowledge from language models with automatically generated prompts[C] //Proc of the 25th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2020: 4222−4235

    [32]

    Shi Yundi, Li Piji, Yin Changchun, et al. PromptAttack: Prompt-based attack for language models via gradient search[J]. arXiv preprint, arXiv: 2209.01882, 2022

    [33] 李南,丁益东,江浩宇,等. 面向大语言模型的越狱攻击综述[J]. 计算机研究与发展,2024,61(5):1156−1181 doi: 10.7544/issn1000-1239.202330962

    Li Nan, Ding Yidong, Jiang Haoyu, et al. Jailbreak attack for large language models: A survey[J]. Journal of Computer Research and Development, 2024, 61(5): 1156−1181 (in Chinese) doi: 10.7544/issn1000-1239.202330962

    [34]

    Perez F, Ribeiro I. Ignore previous prompt: Attack techniques for language models[J]. arXiv preprint, arXiv: 2211.09527, 2022

    [35]

    Shen Xinyue, Chen Zeyuan, Backes M, et al. “Do anything now”: Characterizing and evaluating in-the-wild jailbreak prompts on large language models[J]. arXiv preprint, arXiv: 2308.03825, 2023

    [36]

    Gu Xiangming, Zheng Xiaosen, Pang Tianyu, et al. Agent Smith: A single image can jailbreak one million multimodal LLM agents exponentially fast[J]. arXiv preprint, arXiv: 2402.08567, 2024

    [37]

    Zhan Qiusi, Liang Zhixiang, Ying Zifan, et al. Injecagent: Benchmarking indirect prompt injections in tool-integrated large language model agents[J]. arXiv preprint arXiv: 2403.02691, 2024

    [38]

    Wei A, Haghtalab N, Steinhardt J. Jailbroken: How does LLM safety training fail?[J]. arXiv preprint, arXiv: 2307.02483, 2023

    [39]

    Liu Yi, Deng Gelei, Li Yuekang, et al. Prompt injection attack against LLM-integrated applications[J]. arXiv preprint, arXiv: 2306.05499, 2023

    [40]

    Abdelnabi S, Greshake K, Mishra S, et al. Not what you’ve signed up for: Compromising real-world LLM-integrated applications with indirect prompt injection[C] //Proc of the 16th ACM Workshop on Artificial Intelligence and Security. New York: ACM, 2023: 79−90

    [41]

    Zou A, Wang Zifan, Kolter J Z, et al. Universal and transferable adversarial attacks on aligned language models[J]. arXiv preprint, arXiv: 2307.15043, 2023

    [42]

    Zhu Sicheng, Zhang Ruiyi, An Bang, et al. AutoDAN: Interpretable gradient-based adversarial attacks on large language models[J]. arXiv preprint, arXiv: 2310.15140, 2023

    [43]

    Dai Jiazhu, Chen Chuanshuai, Li Yufeng. A backdoor attack against LSTM-based text classification systems[J]. IEEE Access, 2019, 7: 138872−138878 doi: 10.1109/ACCESS.2019.2941376

    [44]

    Yang Wenkai, Lin Yankai, Li Peng, et al. Rethinking stealthiness of backdoor attack against NLP models[C] //Proc of the 59th Annual Meeting of the ACL and the 11th Int Joint Conf on Natural Language Processing (Volume 1: Long Papers). Stroudsburg, PA: ACL, 2021: 5543−5557

    [45]

    Kwon H, Lee S. Textual backdoor attack for the text classification system[J]. Security and Communication Networks, 2021, 2021(1): 1−11

    [46]

    Kurita K, Michel P, Neubig G. Weight poisoning attacks on pre-trained models[J]. arXiv preprint, arXiv: 2004.06660, 2020

    [47]

    Chen Xiaoyi, Salem A, Chen Dingfan, et al. BadNL: Backdoor attacks against NLP models with semantic-preserving improvements[C] //Proc of the 37th Annual Computer Security Applications Conf. New York: ACM, 2021: 554−569

    [48]

    Lu Hengyang, Fan Chenyou, Yang Jun, et al. Where to attack: A dynamic locator model for backdoor attack in text classifications[C] //Proc of the 29th Int Conf on Computational Linguistics. Gyeongju, Republic of Korea: International Committee on Computational Linguistics, 2022: 984−993

    [49]

    Qi Fanchao, Li Mukai, Chen Yangyi, et al. Hidden Killer: Invisible textual backdoor attacks with syntactic trigger[J]. arXiv preprint, arXiv: 2105.12400, 2021

    [50]

    Qi Fanchao, Chen Yangyi, Zhang Xurui, et al. Mind the style of text! adversarial and backdoor attacks based on text style transfer[J]. arXiv preprint, arXiv: 2110.07139, 2021

    [51]

    Pan Xudong, Zhang Mi, Sheng Beina, et al. Hidden trigger backdoor attack on NLP models via linguistic style manipulation [C]//Proc of the 31st USENIX Security Symp (USENIX Security 22). Berkeley, CA: USENIX Association, 2022: 3611−3628

    [52]

    Kirkpatrick J, Pascanu R, Rabinowitz N, et al. Overcoming catastrophic forgetting in neural networks[J]. Proceedings of the National Academy of Sciences, 2017, 114(13): 3521−3526 doi: 10.1073/pnas.1611835114

    [53]

    Li Linyang, Song Demin, Li Xiaonan, et al. Backdoor attacks on pre-trained models by layerwise weight poisoning[J]. arXiv preprint, arXiv: 2108.13888, 2021

    [54]

    Yang Wenkai, Li Lei, Zhang Zhiyuan, et al. Be careful about poisoned word embeddings: Exploring the vulnerability of the embedding layers in NLP models[J]. arXiv preprint, arXiv: 2103.15543, 2021

    [55]

    Merity S, Xiong C, Bradbury J, et al. Pointer sentinel mixture models[J]. arXiv preprint, arXiv: 1609.07843, 2016

    [56]

    Zhang Xinyang, Zhang Zheng, Ji Shouling, et al. Trojaning language models for fun and profit[C] //Proc of the 6th IEEE European Symp on Security and Privacy (EuroS&P). Piscataway, NJ: IEEE, 2021: 179−197

    [57]

    Chen Kangjie, Meng Yuxian, Sun Xiaofei, et al. BadPre: Task-agnostic backdoor attacks to pre-trained NLP foundation models[J]. arXiv preprint, arXiv: 2110.02467, 2021

    [58]

    Shen Lujia, Ji Shouling, Zhang Xuhong, et al. Backdoor pre-trained models can transfer to all[C] //Proc of the 28th ACM SIGSAC Conf on Computer and Communications Security. New York: ACM, 2021: 3141−3158

    [59]

    Zhang Zhengyan, Xiao Guangxuan, Li Yongwei, et al. Red alarm for pre-trained models: Universal vulnerability to neuron-level backdoor attacks[J]. Machine Intelligence Research, 2023, 20(2): 180−193 doi: 10.1007/s11633-022-1377-5

    [60]

    Du Wei, Li Peixuan, Li Boqun, et al. UOR: Universal backdoor attacks on pre-trained language models[J]. arXiv preprint, arXiv: 2305.09574, 2023

    [61]

    Du Wei, Zhao Yichun, Li Boqun, et al. PPT: Backdoor attacks on pre-trained models via poisoned prompt tuning[C] //Proc of the 31st Int Joint Conf on Artificial Intelligence. Palo Alto, CA: International Joint Conference on Artificial Intelligence Organization, 2022: 680−686

    [62]

    Cai Xiangrui, Xu Haidong, Xu Sihan, et al. BadPrompt: Backdoor attacks on continuous prompts[J]. arXiv preprint, arXiv: 2211.14719, 2022

    [63]

    Zhao Shuai, Wen Jinming, Tuan L A, et al. Prompt as triggers for backdoor attack: examining the vulnerability in language models[C] //Proc of the 28th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2023: 12303−12317

    [64]

    Mei Kai, Li Zheng, Wang Zhenting, et al. NOTABLE: Transferable backdoor attacks against prompt-based NLP models[J]. arXiv preprint, arXiv: 2305.17826, 2023

    [65]

    Xu Jiashu, Ma M D, Wang Fei, et al. Instructions as backdoors: Backdoor vulnerabilities of instruction tuning for large language models[J]. arXiv preprint, arXiv: 2305.14710, 2023

    [66]

    Yan Jun, Yadav V, Li Shiyang, et al. Backdooring instruction-tuned large language models with virtual prompt injection[J]. arXiv preprint, arXiv: 2307.16888, 2024

    [67]

    Rando J, Tramèr F. Universal jailbreak backdoors from poisoned human feedback[J]. arXiv preprint, arXiv: 2311.14455, 2024

    [68]

    Yang Wenkai, Bi Xiaohan, Lin Yankai, et al. Watch out for your agents! Investigating backdoor threats to LLM-based agents[J]. arXiv preprint, arXiv: 2402.11208, 2024

    [69]

    Wang Yifei, Xue Dizhan, Zhang Shengjie, et al. BadAgent: Inserting and activating backdoor attacks in LLM agents[J]. arXiv preprint, arXiv: 2406.03007, 2024

    [70]

    Yao Yunzhi, Wang Peng, Tian Bozhong, et al. Editing large language models: problems, methods, and opportunities[C] //Proc of the 28th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2023: 10222−10240

    [71]

    Zhang Ningyu, Yao Yunzhi, Tian Bozhong, et al. A comprehensive study of knowledge editing for large language models[J]. arXiv preprint, arXiv: 2401.01286, 2024

    [72]

    Li Yanzhou, Li Tianlin, Chen Kangjie, et al. BadEdit: Backdooring large language models by model editing[J]. arXiv preprint, arXiv: 2403.13355, 2024

    [73]

    Qiu Jiyang, Ma Xinbei, Zhang Zhuosheng, et al. MEGen: Generative backdoor in large language models via model editing[J]. arXiv preprint, arXiv: 2408.10722, 2024

    [74]

    Wang Hao, Guo Shangwei, He Jialing, et al. EvilEdit: Backdooring text-to-image diffusion models in one second[C] //Proc of the 32nd ACM Int Conf on Multimedia. New York: ACM, 2024: 3657−3665

    [75]

    Barreno M, Nelson B, Sears R, et al. Can machine learning be secure?[C] //Proc of the 1st ACM Symp on Information, computer and communications security. New York: ACM, 2006: 16−25

    [76]

    Wang Gang, Wang Tianyi, Zheng Haitao, et al. Man vs. Machine: Practical adversarial detection of malicious crowdsourcing workers[C]. //Proc of the 23rd USENIX Security Symp (USENIX Security 2014). Berkeley, CA: USENIX Association, 2014: 239−254

    [77]

    Miao Chenglin, Li Qi, Xiao Houping, et al. Towards data poisoning attacks in crowd sensing systems[C] //Proc of the 18th ACM Int Symp on Mobile Ad Hoc Networking and Computing. New York: ACM, 2018: 111−120

    [78]

    Feng Ji, Cai Qizhi, Zhou Zhihua. Learning to confuse: Generating training time adversarial data with auto-encoder[J]. arXiv preprint, arXiv: 1905.09027, 2019

    [79]

    Shafahi A, Huang W R, Najibi M, et al. Poison frogs! Targeted clean-label poisoning attacks on neural networks[J]. arXiv preprint, arXiv: 1804.00792, 2018

    [80]

    Zhu Chen, Huang W R, Li Hengduo, et al. Transferable clean-label poisoning attacks on deep neural nets[C] //Proc of the 36th Int Conf on Machine Learning. New York : PMLR, 2019: 7614−7623

    [81]

    Wallace E, Zhao T Z, Feng S, et al. Concealed data poisoning attacks on NLP Models[J]. arXiv preprint, arXiv: 2010.12563, 2020

    [82]

    Jagielski M, Severi G, Pousette Harger N, et al. Subpopulation data poisoning Attacks[C] //Proc of the 28th ACM SIGSAC Conf on Computer and Communications Security. New York: ACM, 2021: 3104−3122

    [83]

    Schuster R, Song C, Tromer E, et al. You Autocomplete Me: Poisoning Vulnerabilities in Neural Code Completion [C] //Proc of the 30th USENIX Security Symp (USENIX Security 21). Berkeley, CA: USENIX Association. 2021: 1559−1575

    [84]

    He Pengfei, Xu Han, Xing Yue, et al. Data poisoning for in-context Learning[J]. arXiv preprint, arXiv: 2402.02160, 2024

    [85]

    Hendel R, Geva M, Globerson A. In-context learning creates task vectors[C] // Proc of the 28th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2023: 9318−9333

    [86]

    Peng Baolin, Li Chunyuan, He Pengcheng, et al. Instruction tuning with GPT−4[J]. arXiv preprint, arXiv: 2304.03277, 2023

    [87]

    Shu Manli, Wang Jiongxiao, Zhu Chen, et al. On the Exploitability of instruction tuning[J]. arXiv preprint, arXiv: 2306.17194, 2023

    [88]

    Wan A, Wallace E, Shen S, et al. Poisoning language models during instruction tuning[J]. arXiv preprint, arXiv: 2305.00944, 2023

    [89]

    Qiang Yao, Zhou Xiangyu, Zade S Z, et al. Learning to poison large language models during instruction tuning[J]. arXiv preprint, arXiv: 2402.13459, 2024

    [90]

    Zou Wei, Geng Runpeng, Wang Binghui, et al. PoisonedRAG: Knowledge poisoning attacks to retrieval-augmented generation of large language models[J]. arXiv preprint, arXiv: 2402.07867, 2024

    [91]

    Touvron H, Martin L, Stone K, et al. Llama 2: Open foundation and fine-tuned chat models[J]. arXiv preprint, arXiv: 2307.09288, 2023

    [92] 陈炫婷,叶俊杰,祖璨,等. GPT系列大语言模型在自然语言处理任务中的鲁棒性[J]. 计算机研究与发展,2024,61(5):1128−1142 doi: 10.7544/issn1000-1239.202330801

    Chen Xuanting, Ye Junjie, Zu Can. Robustness of GPT large language models on natural language processing tasks[J]. Journal of Computer Research and Development, 2024, 61(5): 1128−1142 (in Chinese) doi: 10.7544/issn1000-1239.202330801

    [93]

    Huang Lei, Yu Weijiang, Ma Weitao, et al. A survey on hallucination in large language models: principles, taxonomy, challenges, and open questions[J]. arXiv preprint, arXiv: 2311.05232, 2023

    [94]

    Lin S, Hilton J, Evans O. TruthfulQA: Measuring how models mimic human falsehoods[J]. arXiv preprint, arXiv: 2109.07958, 2022

    [95]

    Lee K, Ippolito D, Nystrom A, et al. Deduplicating training data makes language models better[J]. arXiv preprint, arXiv: 2107.06499, 2022

    [96]

    Yu Fangyi, Quartey L, Schilder F. Legal prompting: Teaching a language model to think like a lawyer[J]. arXiv preprint, arXiv: 2212.01326, 2022

    [97]

    Li Yunxiang, Li Zihan, Zhang Kai, et al. ChatDoctor: A medical chat model fine-tuned on a large language model meta-AI (LLaMA) using medical domain knowledge[J]. arXiv preprint, arXiv: 2303.14070, 2023

    [98]

    Li Zuchao, Zhang Shitou, Zhao Hai, et al. BatGPT: A bidirectional autoregessive talker from generative pre-trained transformer[J]. arXiv preprint, arXiv: 2307.00360, 2023

    [99]

    Wang Chaojun, Sennrich R. On exposure bias, hallucination and domain shift in neural machine translation[C] //Proc of the 58th Annual Meeting of the ACL. Stroudsburg, PA: ACL, 2020: 3544−3552

    [100]

    Zhang Muru, Press O, Merrill W, et al. How language model hallucinations can snowball[J]. arXiv preprint, arXiv: 2305.13534, 2023

    [101]

    Perez E, Ringer S, Lukošiūtė K, et al. Discovering language model behaviors with model-written evaluations[J]. arXiv preprint, arXiv: 2212.09251, 2022

    [102]

    Cheng Qinyuan, Sun Tianxiang, Zhang Wenwei, et al. Evaluating hallucinations in Chinese large language models[J]. arXiv preprint, arXiv: 2310.03368, 2023

    [103]

    Chuang Y S, Xie Yujia, Luo Hongyin, et al. DoLa: Decoding by contrasting layers improves factuality in large language models[J]. arXiv preprint, arXiv: 2309.03883, 2023

    [104]

    Liu N F, Lin K, Hewitt J, et al. Lost in the middle: How language models use long contexts[J]. arXiv preprint, arXiv: 2307.03172, 2023

    [105]

    Shi Weijia, Han Xiaochuang, Lewis M, et al. Trusting your evidence: hallucinate less with context-aware decoding[J]. arXiv preprint, arXiv: 2305.14739, 2023

    [106]

    Li Yifei, Lin Zeqi, Zhang Shizhuo, et al. Making large language models better reasoners with step-aware verifier[J]. arXiv preprint, arXiv: 2206.02336, 2023

    [107]

    Weng Yixuan, Zhu Minjun, Xia Fei, et al. Large language models are better reasoners with self-verification[J]. arXiv preprint, arXiv: 2212.09561, 2023

    [108]

    Stechly K, Marquez M, Kambhampati S. GPT−4 doesn’t know it’s wrong: An analysis of iterative prompting for reasoning problems[J]. arXiv preprint, arXiv: 2310.12397, 2023

    [109]

    El-Mhamdi E M, Farhadkhani S, Guerraoui R, et al. On the impossible safety of large AI models[J]. arXiv preprint, arXiv: 2209.15259, 2023

    [110]

    Gehman S, Gururangan S, Sap M, et al. RealToxicityPrompts: Evaluating neural toxic degeneration in language models[J]. arXiv preprint, arXiv: 2009.11462, 2020

    [111]

    Wang Boxin, Chen Weixin, Pei Hengzhi, et al. DecodingTrust: A comprehensive assessment of trustworthiness in GPT models[J]. arXiv preprint, arXiv: 2306.11698, 2023

    [112]

    Urchs S, Thurner V, Aßenmacher M, et al. How prevalent is gender bias in ChatGPT? Exploring German and English ChatGPT responses[J]. arXiv preprint, arXiv: 2310.03031, 2023

    [113]

    Nozza D, Bianchi F, Hovy D. HONEST: Measuring hurtful sentence completion in language models[C] //Proc of the 19th Conf of the North American Chapter of the ACL: Human Language Technologies. Stroudsburg, PA: ACL, 2021: 2398−2406

    [114]

    Nadeem M, Bethke A, Reddy S. StereoSet: Measuring stereotypical bias in pretrained language models[J]. arXiv preprint, arXiv: 2004.09456, 2020

    [115]

    Lucy L, Bamman D. Gender and representation bias in GPT−3 generated stories[C] //Proc of the 3rd Workshop on Narrative Understanding. Stroudsburg, PA: ACL, 2021: 48−55

    [116]

    Abid A, Farooqi M, Zou J. Persistent anti-Muslim bias in large language models[C] //Proc of the 2021 AAAI/ACM Conf on AI, Ethics, and Society. New York: ACM, 2021: 298−306

    [117]

    Patel R, Pavlick E. Was it “stated” or was it “claimed”?: How linguistic bias affects generative language models[C] //Proc of the 26th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2021: 10080−10095

    [118]

    Carlini N, Tramer F, Wallace E, et al. Extracting training data from large language models[C] //Proc of the 30th USENIX Security Symp (USENIX Security 21). Berkeley, CA: USENIX Association. 2021: 2633−2650

    [119]

    Carlini N. A LLM assisted exploitation of AI-guardian[J]. arXiv preprint, arXiv: 2307.15008, 2023

    [120]

    Li Jiazhao, Yang Yijin, Wu Zhuofeng, et al. ChatGPT as an attack tool: Stealthy textual backdoor attack via blackbox generative model trigger[J]. arXiv preprint, arXiv: 2304.14475, 2023

    [121]

    Staab R, Vero M, Balunović M, et al. Beyond memorization: violating privacy via inference with large language models[J]. arXiv preprint, arXiv: 2310.07298, 2023

    [122]

    Strubell E, Ganesh A, McCallum A. Energy and policy considerations for deep learning in NLP[C] //Proc of the 57th Annual Meeting of the ACL. Stroudsburg, PA: ACL, 2019: 3645−3650

    [123]

    Shumailov I, Zhao Y, Bates D, et al. Sponge examples: Energy-latency attacks on neural networks[C] //Proc of the 2021 IEEE European Symp on Security and Privacy (EuroS&P). Piscataway, NJ: IEEE, 2021: 212−231

    [124]

    Si W M, Backes M, Zhang Y, et al. Two-in-One: A model hijacking attack against text generation models[J]. arXiv preprint, arXiv: 2305.07406, 2023

    [125]

    Tirumala K, Markosyan A H, Zettlemoyer L, et al. Memorization without overfitting: Analyzing the training dynamics of large language models[J]. arXiv preprint, arXiv: 2205.10770, 2022

    [126]

    Carlini N, Chien S, Nasr M, et al. Membership inference attacks from first principles[C] // Proc of the 43rd IEEE Symp on Security and Privacy (SP). Piscataway, NJ: IEEE, 2022: 1897−1914

    [127]

    Fu Wenjie, Wang Huandong, Gao Chen, et al. Practical membership inference attacks against fine-tuned large language models via self-prompt calibration[J]. arXiv preprint, arXiv: 2311.06062, 2023

    [128]

    Kandpal N, Pillutla K, Oprea A, et al. User inference attacks on large language models[J]. arXiv preprint, arXiv: 2310.09266, 2023

    [129]

    Duan Haonan, Dziedzic A, Yaghini M, et al. On the privacy risk of in-context learning[J]. arXiv preprint, arXiv: 2411.10512, 2024

    [130]

    Lehman E, Jain S, Pichotta K, et al. Does BERT pretrained on clinical notes reveal sensitive data?[J]. arXiv preprint, arXiv: 2104.07762, 2021

    [131]

    Kim S, Yun S, Lee H, et al. ProPILE: Probing privacy leakage in large language models[J]. arXiv preprint, arXiv: 2307.01881, 2023

    [132]

    Nasr M, Carlini N, Hayase J, et al. Scalable extraction of training data from (production) language models[J]. arXiv preprint, arXiv: 2311.17035, 2023

    [133]

    Pan Xudong, Zhang Mi, Ji Shouling, et al. Privacy risks of general-purpose language models[C] //Proc of the 41st IEEE Symp on Security and Privacy (SP). Piscataway, NJ: IEEE, 2020: 1314−1331

    [134]

    Song Congzheng, Raghunathan A. Information leakage in embedding models[C] //Proc of the 27th ACM SIGSAC Conf on Computer and Communications Security. New York: ACM, 2020: 377−390

    [135]

    Li Haoran, Xu Mingshi, Song Yangqiu. Sentence embedding leaks more information than You expect: Generative embedding inversion attack to recover the whole sentence[J]. arXiv preprint, arXiv: 2305.03010, 2023

    [136]

    Zhang R, Hidano S, Koushanfar F. Text revealer: private text reconstruction via model inversion attacks against transformers[J]. arXiv preprint, arXiv: 2209.10505, 2022

    [137]

    Li Haoran, Guo Dadi, Fan Wei, et al. Multi-step jailbreaking privacy attacks on ChatGPT[J]. arXiv preprint, arXiv: 2304.05197, 2023

    [138]

    Shokri R, Stronati M, Song Congzheng, et al. Membership inference attacks against machine learning models[C] //Proc of the 38th IEEE Symp on Security and Privacy (SP). Piscataway, NJ: IEEE, 2017: 3−18

    [139]

    Mireshghallah F, Goyal K, Uniyal A, et al. Quantifying privacy risks of masked language models using membership inference attacks[C] //Proc of the 27th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2022: 8332−8347

    [140]

    Carlini N, Ippolito D, Jagielski M, et al. Quantifying memorization across neural language models[J]. arXiv preprint, arXiv: 2202.07646, 2023

    [141]

    Huang Jie, Shao Hanyin, Chang K C C. Are large pre-trained language models leaking your personal information?[J]. arXiv preprint, arXiv: 2205.12628, 2022

    [142]

    Gupta S, Huang Y, Zhong Z, et al. recovering private text in federated learning of language models[J]. arXiv preprint, arXiv: 2205.08514, 2022

    [143]

    Krishna K, Tomar G S, Parikh A P, et al. Thieves on sesame street! Model extraction of BERT-based APIs[J]. arXiv preprint, arXiv: 1910.12366, 2020

    [144]

    He Xuanli, Lyu Lingjuan, Xu Qiongkai, et al. Model extraction and adversarial transferability, your BERT is vulnerable![J]. arXiv preprint, arXiv: 2103.10013, 2021

    [145]

    Dziedzic A, Boenisch F, Jiang M, et al. Sentence embedding encoders are easy to steal but hard to defend[C]//Proc of the 11th ICLR Workshop on Pitfalls of limited data and computation for Trustworthy ML. Lausanne, Switzerland: ICLR Foundation. 2023: 2364−2378

    [146]

    Xu Qiongkai, He Xuanli, Lyu Lingjuan, et al. Student surpasses teacher: Imitation attack for black-box NLP APIs[J]. arXiv preprint, arXiv: 2108.13873, 2022

    [147]

    Zanella-Beguelin S, Tople S, Paverd A, et al. Grey-box extraction of natural language models[C] //Proc of the 38th Int Conf on Machine Learning. New York : PMLR, 2021: 12278−12286

    [148]

    Jiang Yi, Shi Chenghui, Ma Oubo, et al. Text laundering: Mitigating malicious features through knowledge distillation of large foundation models[C] //Proc of the 19th Int Conf on Information Security and Cryptology. Singapore: Springer Nature Singapore, 2023: 3−23

    [149]

    Gudibande A, Wallace E, Snell C, et al. The false promise of imitating proprietary LLMs[J]. arXiv preprint, arXiv: 2305.15717, 2023

    [150]

    Zhang Yiming, Carlini N, Ippolito D. Effective prompt extraction from language models[J]. arXiv preprint, arXiv: 2307.06865, 2024

    [151]

    Yang Yong, Zhang Xuhong,3 Jiang Yi, et al. PRSA: Prompt reverse stealing attacks against large language models[J]. arXiv preprint, arXiv: 2402.19200, 2024

    [152]

    Sha Z, Zhang Y. Prompt stealing attacks against large language models[J]. arXiv preprint, arXiv: 2402.12959, 2024

    [153]

    Morris J X, Zhao Wenting, Chiu J T, et al. Language model inversion[J]. arXiv preprint, arXiv: 2311.13647, 2023.

    [154]

    Cheng Yong, Jiang Lu, Macherey W, et al. AdvAug: Robust adversarial augmentation for neural machine translation[C] //Proc of the 58th Annual Meeting of the ACL. Stroudsburg, PA: ACL, 2020: 5961−5970

    [155]

    Minervini P, Riedel S. Adversarially regularising neural NLI models to integrate logical background knowledge[J]. arXiv preprint, arXiv: 1808.08609, 2018

    [156]

    Du Tianyu, Ji Shouling, Shen Lujia, et al. Cert-RNN: Towards certifying the robustness of recurrent neural networks[C] //Proc of the 28th ACM SIGSAC Conf on Computer and Communications Security. New York: ACM, 2021: 516−534

    [157]

    Qi Fanchao, Chen Yangyi, Li Mukai, et al. ONION: A simple and effective defense against textual backdoor attacks[C] //Proc of the 26th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2021: 9558−9566

    [158]

    Azizi A, Tahmid I A, Waheed A, et al. T-Miner: A generative approach to defend against trojan attacks on DNN-based text classification[C] //Proc of the 30th USENIX Security Symp (USENIX Security 21). Berkeley, CA: USENIX Association, 2021: 2255−2272vv

    [159]

    Li Yige, Lyu Xixiang, Koren N, et al. Neural attention distillation: erasing backdoor triggers from deep neural networks[J]. arXiv preprint, arXiv: 2101.05930, 2021

    [160]

    Liu Kang, Dolan-Gavitt B, Garg S. Fine-pruning: Defending against backdooring attacks on deep neural networks[J]. arXiv preprint, arXiv: 1805.12185, 2018

    [161]

    Xu Chang, Wang Jun, Guzmán F, et al. Mitigating data poisoning in text classification with differential privacy[C] // Proc of the 26th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2021: 4348−4356

    [162]

    Chen Chuanshuai, Dai Jiazhu. Mitigating backdoor attacks in LSTM-based text classification systems by backdoor keyword identification[J]. Neurocomputing, 2021, 452: 253−262 doi: 10.1016/j.neucom.2021.04.105

    [163]

    Wang Yuxia, Li Haonan, Han Xudong, et al. Do-Not-Answer: A dataset for evaluating safeguards in LLMs[J]. arXiv preprint, arXiv: 2308.13387, 2023

    [164]

    Zhang Mi, Pan Xudong, Yang Min. JADE: A linguistics-based safety evaluation platform for large language models[J]. arXiv preprint, arXiv: 2311.00286, 2023

    [165]

    Wang Mengru, Zhang Ningyu, Xu Ziwen, et al. Detoxifying large language models via knowledge editing[J]. arXiv preprint, arXiv: 2403.14472, 2024

    [166]

    Chen Jiefeng, Yoon J, Ebrahimi S, et al. Adaptation with self-evaluation to improve selective prediction in LLMs[J]. arXiv preprint, arXiv: 2310.11689, 2023

    [167]

    Feldman P, Foulds J R, Pan S. Trapping LLM hallucinations using tagged context prompts[J]. arXiv preprint, arXiv: 2306.06085, 2023

    [168]

    Duan Haonan, Dziedzic A, Papernot N, et al. Flocks of stochastic parrots: Differentially private prompt learning for large language models[J]. Advances in Neural Information Processing Systems, 2023, 36: 76852−76871

    [169]

    Yu Da, Naik S, Backurs A, et al. Differentially private fine-tuning of language models[J]. arXiv preprint, arXiv: 2110.06500, 2022

    [170]

    Mattern J, Jin Zhijing, Weggenmann B, et al. Differentially private language models for secure data sharing[J]. arXiv preprint, arXiv: 2210.13918, 2022

    [171]

    Liu Xuanqi, Liu Zhuotao. LLMs can understand encrypted prompt: Towards privacy-computing friendly transformers[J]. arXiv preprint, arXiv: 2305.18396, 2023

    [172]

    Li Yansong, Tan Zhixing, Liu Yang. Privacy-preserving prompt tuning for large language model services[J]. arXiv preprint, arXiv: 2305.06212, 2023

    [173]

    Yan Ran, Li Yujun, Li Wenqian, et al. Teach large language models to forget privacy[J]. arXiv preprint, arXiv: 2401.00870, 2023

    [174]

    Ippolito D, Tramèr F, Nasr M, et al. Preventing verbatim memorization in language models gives a false sense of privacy[J]. arXiv preprint, arXiv: 2210.17546, 2023

    [175]

    Liu Sijia, Yao Yuanshun, Jia Jinghan, et al. Rethinking machine unlearning for large language models[J]. arXiv preprint, arXiv: 2402.08787, 2024

    [176]

    Jang J, Yoon D, Yang S, et al. Knowledge unlearning for mitigating privacy risks in language models[C] //Proc of the 61st Annual Meeting of the ACL (Volume 1: Long Papers). Stroudsburg, PA: ACL, 2023: 14389−14408

    [177]

    Chen Jiaao, Yang Diyi. Unlearn what you want to forget: Efficient unlearning for LLMs[C] //Proc of the 28th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2023: 12041−12052

    [178]

    Maini P, Feng Z, Schwarzschild A, et al. TOFU: A task of fictitious unlearning for LLMs[J]. arXiv preprint, arXiv: 2401.06121, 2024

    [179]

    Zhang Ruiqi, Lin Licong, Bai Yu, et al. Negative preference optimization: From catastrophic collapse to effective unlearning[J]. arXiv preprint, arXiv: 2404.05868, 2024

    [180]

    Tian Bozhong, Liang Xiaozhuan, Cheng Siyuan, et al. To forget or not? Towards practical knowledge unlearning for large language models[C] // Proc of the 29th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2024: 1524−1537

    [181]

    Muresanu A, Thudi A, Zhang M R, et al. Unlearnable algorithms for in-context learning[J]. arXiv preprint, arXiv: 2402.00751, 2024

    [182]

    Cohen R, Biran E, Yoran O, et al. Evaluating the ripple effects of knowledge editing in language models[J]. Transactions of the ACL, 2024, 12: 283−298

    [183]

    Yan Jianhao, Wang Futing, Li Yafu, et al. Potential and challenges of model editing for social debiasing[J]. arXiv preprint, arXiv: 2402.13462, 2024

    [184]

    Liu C Y, Wang Yaxuan, Flanigan J, et al. Large language model unlearning via embedding-corrupted prompts[J]. arXiv preprint, arXiv: 2406.07933, 2024

    [185]

    Wu Xinwei, Li Junzhuo, Xu Minghui, et al. DEPN: Detecting and editing privacy neurons in pretrained language models[C] //Proc of the 28th Conf on Empirical Methods in Natural Language Processing. Stroudsburg, PA: ACL, 2023: 2875−2886

    [186]

    Wu Xinwei, Dong Weilong, Xu Shaoyang, et al. Mitigating privacy seesaw in large language models: Augmented privacy neuron editing via activation patching[C] //proc of the 62nd ACL. Stroudsburg, PA: ACL, 2024: 5319−5332

    [187]

    Venditti D, Ruzzetti E S, Xompero G A, et al. Enhancing data privacy in large language models through private association editing[J]. arXiv preprint, arXiv: 2406.18221, 2024

图(7)  /  表(8)
计量
  • 文章访问数:  52
  • HTML全文浏览量:  14
  • PDF下载量:  34
  • 被引次数: 0
出版历程
  • 收稿日期:  2024-04-17
  • 修回日期:  2025-02-16
  • 录用日期:  2025-03-02
  • 网络出版日期:  2025-03-02

目录

/

返回文章
返回