可搜索加密技术研究综述

合集下载

多接收者证书基可搜索加密方案

多接收者证书基可搜索加密方案

多接收者证书基可搜索加密方案刘行;明洋;王晨豪;赵一【期刊名称】《计算机学报》【年(卷),期】2024(47)3【摘要】可搜索加密作为一种加密原语,允许用户在云存储服务器中搜索文件的同时确保原始文件的机密性.证书基可搜索加密在实现密文检索的基础上,解决了证书管理、密钥托管、安全信道等问题.然而,已有的证书基可搜索加密要么使用耗时的双线性映射操作,要么无法满足发送者匿名特性.同时其仅考虑单个接收者,致使多个接收者场景下效率低,不能满足现实需求.为解决上述不足,基于椭圆曲线密码学,利用密钥交换思想和数字签名技术,本文提出多接收者证书基可搜索加密方案.对于相同数据,方案中发送者仅仅执行一次加密,即可使得多个接收者能够同时进行搜索.同时,发送者使用自己的私钥和证书生成密文,导致敌手无法生成有效密文发动关键词猜测攻击,确保了搜索陷门的安全性.本文所提方案中搜索陷门仅由一个群元素组成,同时没有泄露发送者的身份信息实现了匿名性.安全性分析表明,在随机预言机模型中,基于计算性Diffie-Hellman假设,本文所提方案能够满足适应性选择关键词攻击的不可区分性和适应性关键词猜测攻击的不可区分性.性能分析表明,与相关方案相比,本文所提方案实现了低的计算代价和通信代价,更加适用于云存储环境下的多用户服务场景.【总页数】14页(P544-557)【作者】刘行;明洋;王晨豪;赵一【作者单位】长安大学信息工程学院【正文语种】中文【中图分类】TP309【相关文献】1.无证书的公钥可搜索加密方案2.安全性增强的无证书可搜索公钥加密方案3.基于无证书的具有否认认证的可搜索加密方案4.一个无安全信道的无证书公钥可搜索加密方案5.高效的可验证无证书可搜索加密方案因版权原因,仅展示原文概要,查看原文内容请购买。

基于可信硬件的隐私数据可搜索加密加速方法研究

基于可信硬件的隐私数据可搜索加密加速方法研究

Research on Acceleration Method of Searchable Encryption of Private Data Based on Trusted
Hardware
作者: 杨光远[1];杨大利[1];张羽[2];马利民[1];张伟[1]
作者机构: [1]北京信息科技大学计算机学院,北京100101;[2]国家信息中心信息网络安全部,北京100045
出版物刊名: 信息安全研究
页码: 319-327页
年卷期: 2021年 第4期
主题词: 可搜索加密;可信执行环境;数据加密;数据安全;Intel SGX
摘要:可搜索加密(serachable encryption,SE)是构建加密数据库的关键技术之一,它允许服务器在不解密的情况下搜索加密数据.为了解决传统SE方案降低SE查询效率、增加客户端和服务器之间通信成本这2个问题,提出了采用硬件辅助解决方案(例如Intel SGX)来解决上述问题,关键思想是利用SGX来接管客户端跟踪关键字、添加数据、缓存删除的数据等任务.实验结果表明,通过在传统的可搜索加密方案中引入硬件辅助解决方案,有效地降低了客户端与不可信服务器之间的通信开销,并且提高了加密数据的查询性能.。

数据加密技术的进展与应用

数据加密技术的进展与应用

数据加密技术的进展与应用随着空间信息化技术的迅速发展,人们对数据加密技术的需求不断增加。

数据加密技术被广泛应用于信息安全领域,以保障越来越多的数据的安全性,其技术也在不断地升级和改善。

本文将对当前数据加密技术的进展和应用进行分析,并探讨未来数据加密技术的发展趋势。

一、数据加密技术的发展现状1. 对称加密算法对称加密算法是一种加密和解密使用相同密钥的算法。

传统对称加密算法如DES、3DES等,由于它们的密钥体积太小,无法应对复杂和多变的加密需求,因此逐渐被替代。

目前,AES算法已成为最常用的对称加密算法之一,其密钥长度达到了256位,大大增强了密码的强度。

2. 非对称加密算法非对称加密算法是一种加密和解密使用不同密钥的算法。

RSA算法是最常见的非对称加密算法,其可靠性与安全性得到了广泛认可。

在RSA算法的基础上,出现了基于椭圆曲线的非对称加密算法,更进一步增强了安全性,防止了量子计算机的攻击。

3. 哈希加密算法哈希加密算法是一种把任意长度的消息压缩到固定长度的算法,常用于数字签名等领域。

SHA、MD5算法是常见的哈希加密算法,虽然它们在信息安全领域拥有很高的地位,但仍面临着碰撞攻击、余弦震荡等风险。

二、数据加密技术的应用现状1. 移动互联网随着手机用户数量的不断增加,移动互联网的安全风险也日益增加。

为此,各大手机厂商积极探索并引入了先进的加密技术,如Apple Pay、支付宝等移动支付方式,以及包括SSL、TLS、IPSec等在内的加密协议,从而为用户提供了安全可靠的移动支付和通信方式。

2. 云计算数据在云端不断流转,需要有更可靠的安全机制来保障用户存储的数据安全。

针对云计算环境中的安全问题,云服务提供商和云安全厂商相继推出了责任分离、加密分离、数据流自主控制等方案,加强了云计算的可靠性和安全性。

三、数据加密技术的未来发展1. 可搜索加密技术可搜索加密技术是通过将数据进行加密和分割,以实现在不泄露数据内容的情况下进行关键字搜索。

基于密码学的数据加密技术研究

基于密码学的数据加密技术研究

基于密码学的数据加密技术研究随着信息技术的发展,数据安全问题日益突出。

在互联网时代,个人、机构以及国家之间的大量敏感数据的传输和保存成为相当重要的任务。

基于密码学的数据加密技术,作为一个解决方案的可能性备受关注。

本文将探讨有关数据加密技术的原理、应用以及存在的挑战。

一、数据加密技术的原理数据加密技术基于密码学,它主要通过一系列的数学算法来将原始数据转换为密文,从而实现数据的保密性。

主要的加密算法包括对称加密算法和非对称加密算法。

对称加密算法使用相同的密钥用于加密和解密数据。

常见的对称加密算法有DES、AES和IDEA等。

其中AES算法是目前应用最广泛的对称加密算法,它具有较高的安全性和较快的加密速度。

非对称加密算法使用一对密钥,即公钥和私钥。

公钥用于加密数据,私钥用于解密数据。

常见的非对称加密算法有RSA和椭圆曲线加密算法等。

这些算法的安全性主要基于数学难题,如质因数分解和离散对数问题等。

二、数据加密技术的应用数据加密技术在多个领域都有广泛的应用。

以下是其中几个典型的应用场景:1. 互联网通信安全:在网上支付、电子邮件通信和在线购物等场景中,数据加密技术可以确保数据在传输过程中不被窃取或篡改。

2. 数据存储安全:现代企业和组织通常拥有大量的敏感数据,如客户信息和商业机密。

采用适当的数据加密技术可以保护这些数据的安全性,即使在存储介质被盗或泄露的情况下也能确保数据不被读取。

3. 移动设备安全:随着智能手机和平板电脑的普及,人们在这些设备上储存和传输的数据也越来越多。

数据加密技术可以帮助保护这些设备上的个人信息和敏感数据。

4. 电子身份认证:数据加密技术在电子身份认证中起着重要作用。

通过数字签名等技术,可以确保数据的完整性和身份的真实性。

三、数据加密技术面临的挑战尽管数据加密技术在保护数据安全方面具有不可替代的作用,但也面临着一些挑战。

1. 算法安全性:随着计算机处理能力的提高,一些传统的加密算法可能变得不再安全。

公开可验证的动态可搜索加密技术研究

公开可验证的动态可搜索加密技术研究

公开可验证的动态可搜索加密技术研究公开可验证的动态可搜索加密技术研究概述随着大数据时代的到来,数据的存储和处理成为了一项重要任务。

然而,数据的隐私和安全性也越来越引起人们的关注。

动态可搜索加密技术应运而生,它为用户提供了在云环境中对数据进行搜索和操作的能力,同时保护了数据的隐私性。

本文将探讨公开可验证的动态可搜索加密技术的研究进展和应用。

动态可搜索加密技术简介动态可搜索加密技术(Dynamic Searchable Encryption, DSE)是指用户可以在将数据存储在云服务器上的同时,对数据进行加密和搜索的一种安全保护技术。

与传统的加密方式不同,DSE能够实现在加密状态下对数据进行搜索、删除和插入等操作。

它适用于云存储等场景,可以帮助用户在保护隐私的同时享受便捷的数据搜索服务。

公开可验证的DSE技术公开可验证的DSE技术是在动态可搜索加密的基础上进行进一步拓展的一种技术,它保证了数据搜索的安全性和完整性。

由于云服务器是一个半可信的环境,用户需要确保云服务器不会篡改或泄露其数据。

而公开可验证的DSE技术能够通过使用公开可验证加密技术和数据结构的方式,使用户能够验证数据是否被修改或伪造,从而保护数据完整性。

公开可验证的DSE技术有两个主要的组成部分:可验证搜索和可验证更新。

可验证搜索确保了云服务器返回的搜索结果是正确的,没有被篡改的。

可验证更新则保证了用户可以在云服务器上正确地插入、删除和修改数据,同时保证数据的完整性。

研究进展和应用在研究方面,公开可验证的DSE技术已经取得了一些重要进展。

目前,已经提出了一些基于树结构的可验证DSE方案,如基于Merkle-Tree的方案和基于Bloom Filter的方案。

这些方案通过使用不同的加密和哈希算法,实现了对数据搜索和更新的验证。

在应用方面,公开可验证的DSE技术有广泛的应用前景。

首先,它可以应用于云存储服务中,保护用户数据的隐私和完整性。

其次,它可以应用于医疗健康领域,保护患者的隐私和个人信息。

网络安全中的数据加密技术研究

网络安全中的数据加密技术研究

网络安全中的数据加密技术研究在当今数字化的时代,信息的快速传递和广泛共享为我们的生活和工作带来了极大的便利,但同时也带来了严峻的网络安全挑战。

数据作为信息的重要载体,其安全性至关重要。

数据加密技术作为保障数据安全的关键手段,发挥着不可或缺的作用。

数据加密技术的基本原理是通过特定的算法将明文(原始数据)转换为密文(加密后的数据),只有拥有正确密钥的接收方才能将密文还原为明文,从而保证数据的保密性、完整性和可用性。

常见的数据加密算法可以分为对称加密算法和非对称加密算法两大类。

对称加密算法中,加密和解密使用相同的密钥,例如 AES(高级加密标准)算法。

AES 算法具有加密速度快、效率高的优点,适用于大量数据的加密处理。

但对称加密算法的密钥管理是一个难题,因为通信双方需要安全地共享密钥,如果密钥在传输过程中被窃取,那么加密数据的安全性就会受到威胁。

非对称加密算法则使用一对密钥,即公钥和私钥。

公钥可以公开,用于加密数据;私钥必须保密,用于解密数据。

RSA 算法是一种经典的非对称加密算法。

非对称加密算法解决了对称加密算法中的密钥管理问题,但由于其计算复杂度较高,加密和解密的速度相对较慢,所以通常用于加密少量关键数据,如对称加密算法的密钥。

除了上述两种基本的加密算法,还有哈希函数这种特殊的加密技术。

哈希函数可以将任意长度的输入数据转换为固定长度的输出值,这个输出值被称为哈希值。

哈希值具有唯一性和不可逆性,常用于数据完整性验证,比如文件的完整性校验、数字签名等。

在实际应用中,数据加密技术被广泛用于各个领域。

在电子商务中,用户的个人信息、交易记录等敏感数据在网络传输过程中需要进行加密,以防止被窃取和篡改。

在金融领域,银行系统中的客户账户信息、交易数据等都采用了严格的数据加密措施,保障资金安全。

在企业内部,重要的商业机密、研发数据等也需要加密保护,防止竞争对手获取。

然而,数据加密技术并非一劳永逸的解决方案,它也面临着一些挑战。

数据加密技术的研究综述毕业论文[管理资料]

网络教育学院本科生毕业论文(设计)题目:数据加密技术的研究综述(模板)内容摘要随着计算机网络技术的飞速发展,数据加密技术将成为信息网络安全技术中的核心技术,本文介绍了网络与信息安全技术体系结构,对目前信息加密技术进行了分析,阐述了各类加密算法的优缺点,同时对加密技术的发展趋势进行了描述从最初的保密通信发展到目前的网络信息加密。

数据加密技术是指将一个信息经过加密钥匙及加密函数转换,变成无意义的密文,而接收方则将此密文经过解密函数、解密钥匙还原成明文。

在竞争激烈的信息时代,客观上需要一种强有力的安全措施来保护机密数据不被窃取或篡改,因此数据加密技术就应运而生。

关键词:信息安全;数据加密;加密钥匙;解密钥匙;加密算法目录内容摘要 (I)引言 (1)1 概述 (2)背景 (2)本文的主要内容及组织结构 (3)2 数据加密和加密系统 (3)数据加密技术原理 (4)数据加密技术的分类及其应用 (4)加密系统体系 (5)加密系统的分类 (5)加密体制存在的问题 (6)对称加密、非对称加密和数字签名 (7)3 DES加密标准 (9)DES介绍和DES算法框架 (9)DES实例分析 (9)DES的安全性和应用误区 (12)DES的拓展 (12)3DES (12)AES算法 (13)4 公开加密算法RSA (14)RSA的简介 (14)RSA算法的结构 (14)RSA算法的案例 (14)RSA探索 (22)5 其他加密技术 (25)MD5 (25)可变长密钥块Blowfish加密技术 (26)椭圆曲线密码体制 (27)伪随机数加密技术 (28)6 结论 (32)参考文献 (33)附录一伪随机数加密法的加密和解密程序 (33)引言随着网络技术的发展,网络安全也就成为当今网络社会的焦点中的焦点,几乎没有人不在谈论网络上的安全问题,病毒、黑客程序、邮件炸弹、远程侦听等这一切都无不让人胆战心惊。

病毒、黑客的猖獗使身处今日网络社会的人们感觉到谈网色变,无所适从。

云存储中可搜索加密方案的研究与设计的开题报告

云存储中可搜索加密方案的研究与设计的开题报告一、选题背景随着云计算技术的不断发展,越来越多的数据被存储到云端,并在云端上进行处理。

然而,传统的云存储存在许多安全问题,例如数据泄露、隐私保护等问题。

因此,加密技术被广泛应用于云存储中以保护数据安全。

但是,在使用加密技术的同时,搜索和访问加密数据变得非常困难。

因此,如何在云存储中实现可搜索加密技术成为了一个热门的研究方向。

二、选题意义云存储中的可搜索加密技术可以保护数据隐私,同时又允许用户在加密数据中进行搜索和访问。

这种技术可以防止数据被窃听或篡改,同时又便于用户在云端上管理和使用自己的数据。

因此,研究云存储中的可搜索加密技术对于保护用户数据安全,提高云存储服务的质量和可信度具有重要意义。

三、研究内容本文将研究云存储中可搜索加密方案的设计与实现,主要包括以下几个方面:1. 研究可搜索加密技术的基本原理和方法。

2. 分析现有的可搜索加密方案的优缺点,并根据实际需求设计适合云存储的可搜索加密方案。

3. 实现和评估设计好的可搜索加密方案。

对所设计的可搜索加密方案进行测试和验证,并分析其安全性、可用性和性能。

四、研究方法本文的研究方法主要包括文献调研、实验设计和实验验证。

首先,通过对可搜索加密技术的相关文献进行调研,了解可搜索加密技术的基本原理和方法。

然后,根据实际需求设计适合云存储的可搜索加密方案。

最后,实现和评估所设计的可搜索加密方案,并对其进行测试和验证,分析其安全性、可用性和性能。

五、预期成果及创新点本文研究的预期成果主要包括:1. 设计可用于云存储的新型可搜索加密方案。

2. 实现设计好的可搜索加密方案,并对其进行测试和验证。

3. 分析所设计的可搜索加密方案的安全性、可用性和性能,并与现有的可搜索加密方案进行比较。

本文的创新点主要体现在以下方面:1. 设计新型的可搜索加密方案,兼顾数据安全和可用性。

2. 实现和验证所设计的可搜索加密方案,并对其进行全面的评估和分析,为云存储中可搜索加密技术的研究提供参考。

可搜索加密技术在大数据安全中的应用

可搜索加密技术在大数据安全中的应用随着互联网和信息技术的快速发展,大数据正成为当今社会的重要资源。

然而,随之而来的数据泄露和隐私问题也日益突出,给个人以及企业带来了巨大的风险和威胁。

在这种背景下,可搜索加密技术成为一种重要的数据安全保护手段,并在大数据安全中得到广泛应用。

一、可搜索加密技术简介可搜索加密技术是一种将数据加密后仍然可以进行检索的技术。

传统的加密算法通常会将数据加密成无法直接搜索的形式,因此无法满足大数据的查询需求。

而可搜索加密技术则通过在加密前对数据进行一定的处理,让数据在加密后仍然可以被检索,从而实现对加密数据的高效查询。

二、可搜索加密技术的实现方式可搜索加密技术主要有两种实现方式:对称可搜索加密和公钥可搜索加密。

1. 对称可搜索加密对称可搜索加密方法使用相同的密钥对数据进行加解密操作。

这种方法的优点是加密和解密速度快,适用于大数据量的场景。

常见的对称可搜索加密方案有基于倒排索引的加密方案和基于陷门的加密方案。

2. 公钥可搜索加密公钥可搜索加密方法使用不同的密钥对数据进行加解密操作。

这种方法的优点是加密和解密过程中使用不同的密钥,提高了数据的安全性。

常见的公钥可搜索加密方案有基于同态加密的方案和基于零知识证明的方案。

三、可搜索加密技术在大数据安全中的应用可搜索加密技术在大数据安全中有广泛的应用。

以下是几个典型的应用场景:1. 云计算安全云计算是大数据处理的重要手段,但在云端存储数据存在诸多安全风险。

可搜索加密技术能够对云端存储的数据进行加密,同时保证数据能够被高效地检索,从而保护数据的机密性和完整性。

2. 医疗数据安全医疗数据是敏感信息的集中体现,但也需要进行大规模的数据分析。

可搜索加密技术可以对医疗数据进行加密处理,保护患者的隐私信息,同时又能够满足医疗数据分析的需求。

3. 商业数据隐私保护在商业领域,企业拥有大量的客户数据和业务数据,但这些数据的泄露可能导致企业声誉受损和商业机密被泄露。

可搜索加密技术在保护隐私的前提下实现数据搜索

可搜索加密技术在保护隐私的前提下实现数据搜索在保护隐私的前提下实现数据搜索的可搜索加密技术随着信息技术的飞速发展,数据安全和隐私保护的问题越来越受到人们的关注。

在现实生活中,我们经常会遇到这样的情况:需要对大量的数据进行搜索和查询,但又担心数据的泄露和被滥用。

为了解决这一问题,可搜索加密技术应运而生。

可搜索加密技术是一种在保护数据隐私的前提下,实现对加密数据进行搜索和查询的技术。

它将传统的明文数据加密后存储在服务器上,只有授权用户能够解密和搜索数据,从而保证了数据的安全性。

下面将详细介绍可搜索加密技术的原理和应用。

一、可搜索加密技术的原理可搜索加密技术的实现主要基于对称加密和不可逆加密的原理。

1. 对称加密:可搜索加密技术利用对称密钥算法对数据进行加密和解密。

在数据存储映射阶段,用户对明文数据进行加密,并将加密后的数据存储在服务器上。

在数据搜索阶段,用户需要输入搜索关键字,通过搜索关键字和加密算法生成一个查询密文,将查询密文发送给服务器。

服务器接收到查询密文后,通过解密算法解密查询密文,并将明文关键字与数据库中的密文数据进行比较,最终返回匹配结果给用户。

2. 不可逆加密:为了保护数据的隐私,在数据存储映射阶段,可搜索加密技术通常采用哈希函数对数据进行不可逆加密。

哈希函数是一种将任意长度的输入转化为固定长度输出的函数,具有单向性和抗碰撞性。

通过将明文数据经过哈希函数计算后得到一个哈希值,并将哈希值与明文数据关联存储在服务器上。

在数据搜索阶段,用户输入搜索关键字后,通过哈希函数计算关键字的哈希值,然后将哈希值与服务器上的数据进行比较,从而实现数据搜索。

二、可搜索加密技术的应用可搜索加密技术具有广泛的应用场景,包括云计算、大数据分析、医疗健康等领域。

1. 云计算:云计算作为一种资源共享和计算模式,对数据的安全和隐私保护提出了更高要求。

可搜索加密技术能够在云计算环境下,实现对加密数据的搜索和查询,为用户提供更加安全可靠的服务。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件学报ISSN 1000-9825, CODEN RUXUEW E-mail: jos@ Journal of Software,2015,26(1):109−128 [doi: 10.13328/ki.jos.004700] ©中国科学院软件研究所版权所有. Tel: +86-10-62562563∗可搜索加密技术研究综述李经纬1, 贾春福1,3, 刘哲理1, 李进2, 李敏11(南开大学计算机与控制工程学院计算机与信息安全系,天津 300071)2(广州大学计算机科学与教育软件学院,广东广州 510006)3(中国民航大学信息安全评测中心,天津 300300)通讯作者: 贾春福, E-mail: cfjia@摘要: 从可搜索加密的两类基本问题出发,回顾了相关研究历史.介绍了可搜索加密的分类,包括其应用场景和应用模型,并探讨了相应的解决策略,从构造角度,将其分为对称可搜索加密和非对称可搜索加密.基于这种分类,围绕基本定义、典型构造和扩展研究,对可搜索加密相关工作进行了综述.最后,总结和展望了待解决的关键性问题和未来的研究方向.这些工作将对可搜索加密的进一步研究起到一定的促进作用.关键词: 可搜索加密;对称可搜索加密;非对称可搜索加密;关键词猜测攻击;云安全中图法分类号: TP309中文引用格式: 李经纬,贾春福,刘哲理,李进,李敏.可搜索加密技术研究综述.软件学报,2015,26(1):109−128.http://www.jos. /1000-9825/4700.htm英文引用格式: Li JW, Jia CF, Liu ZL, Li J, Li M. Survey on the searchable encryption. Ruan Jian Xue Bao/Journal of Software, 2015,26(1):109−128 (in Chinese)./1000-9825/4700.htmSurvey on the Searchable EncryptionLI Jing-Wei1, JIA Chun-Fu1,3, LIU Zhe-Li1, LI Jin2, LI Min11(Department of Computer & Information Security, College of Computer and Control Engineering, Nankai University, Tianjin 300071, China)2(School of Computer Science and Educational Software, Guangzhou University, Guangzhou 510006, China)3(Information Security Evaluation Cener of Civil Aviation, Civil Aviation University of China, Tianjin 300300, China)Abstract: This paper reviews previous research on the two basic searchable encryption problems, and introduces the classification of searchable encryption (SE), including its application scenarios and usage models. After discussing the resolution strategies, it divides SE into two groups, that is symmetric searchable encryption and asymmetric searchable encryption. Based on this classification, the research advance is surveyed on basic definition, typical construction and extended research. Finally, the need-to-be-solved problems and main research directions are discussed. This study aims at promoting further research of searchable encryption.Key words: searchable encryption; symmetric searchable encryption; asymmetric searchable encryption; keyword guessing attack;cloud security可搜索加密问题源于文献[1]:假设用户Alice试图将个人文件存放在一个诚实但具有好奇心的外部服务器,以降低本地资源开销.为保护文件隐私,须采用某种加密方式将文件加密后存储.使用传统分组密码,只有密∗基金项目: 国家重点基础研究发展计划(973)(2013CB834204); 国家自然科学基金(61272423, 61100224, 61472091); 高等学校博士学科点专项科研基金(20100031110030, 20120031120036); 天津市自然科学基金(14JCYBJC15300); 中国民航大学信息安全评测中心开放课题基金(CAAC-ISECCA-201403)收稿时间:2013-03-11; 定稿时间: 2014-07-09; jos在线出版时间: 2014-08-19CNKI网络优先出版: 2014-08-19 14:17, /kcms/doi/10.13328/ki.jos.004700.html110 Journal of Software 软件学报 V ol.26, No.1, January 2015钥拥有者才具备解密能力,意味着Alice 在执行基于关键词的查询操作时,需要下载所有已上传的文件,完全解密后再检索,会带来两个问题:① 如果Alice 在服务器上已存有大量文件,一一下载会占用大量网络带宽,可能造成服务器堵塞;② 对已下载的所有文件完全解密会占用大量本地计算资源,效率极低.解决此类问题的加密技术称为可搜索加密(searchable encryption,简称SE),该技术要求只有合法用户才具备基于关键词检索的能力.随着研究的推进,其应用并不仅限于此:2004年,Boneh 提出使用非对称可搜索加密(asymmetric searchable encryption,简称ASE)解决“不可信赖服务器路由”问题[2];最近兴起的云计算[3]将是SE 的最佳应用平台,由于服务提供商的不可控性,用户必须应对存储到云端的个人数据可能泄密的威胁,SE 提供的加密和密文直接检索功能使服务器无法窃听用户个人数据,但可以根据查询请求返回目标密文文件,这样既保证了用户数据的安全和隐私,又不会过分降低查询效率.本文关注近年来可搜索加密的研究进展,描述了可搜索加密基本问题的研究历史,并围绕定义、典型构造和扩展研究,分别对对称和非对称密码体制下的可搜索加密研究成果进行综述,最后展望了可搜索加密未来的研究方向,以期对其在国内的研究起到一定的推动作用.1 可搜索加密1.1 可搜索加密过程如图1所示,可搜索加密可分为4个子过程:Step 1. 加密过程.用户使用密钥在本地对明文文件进行加密,并将其上传至服务器.Step 2. 陷门生成过程.具备检索能力的用户,使用密钥生成待查询关键词的陷门,要求陷门不能泄露关键词的任何信息.Step 3. 检索过程.服务器以关键词陷门为输入,执行检索算法,返回所有包含该陷门对应关键词的密文文件,要求服务器除了能知道密文文件是否包含某个特定关键词外,无法获得更多信息.Step 4. 解密过程.用户使用密钥解密服务器返回的密文文件,获得查询结果.Fig.1 Steps in searchable encryption图1 可搜索加密过程1.2 研究历史可搜索加密问题的提出,源于解决两类可搜索加密的基本问题:① 不可信赖服务器的存储问题;② 不可信赖服务器的路由问题.1.2.1 不可信赖服务器存储问题的相关研究不可信赖服务器的存储问题最早提出于2000年[1],Song 等人[1]提出了基于密文扫描思想的SWP 方案,将明文文件划分为“单词”并对其分别加密,通过对整个密文文件扫描和密文单词进行比对,就可确认关键词是否存在,甚至统计其出现的次数.Goh [4]提出了基于索引的Z-IDX 方案,使用布隆过滤器(Bloom filter)作为单个文件的索引结构,将文件包含的关键词映射为码字存储于该文件的索引中,通过布隆过滤器的运算,就能判定密文文件是否包含某个特定关键词.Chang 和Mitzenmacher [5]考虑了该可搜索加密基本问题的一个应用场景:用户通过个人电脑以密文形式存储文件至服务器,然后使用移动设备(例如手机等)检索服务器上的密文文件,并针对此应用提出PPSED(privacy preserving keyword searches on remoted encrypted data)方案.Curtmola [6]规范化了对称可密文文件关键词陷门密文文件 Step 1Step 2 Step 3Step 4 服务器李经纬等:可搜索加密技术研究综述111搜索加密(symmetric searchable encryption,简称SSE)及其安全目标,提出能够在非自适应和自适应攻击模型下达到不可区分性安全的SSE-1和SSE-2方案.这里,SSE-1和SSE-2都基于“关键词-文件”索引构建思想,服务器只需O(1)时间即可完成检索操作.然而,执行文件的添加或删除操作需要重新构建索引,时间开销较大.近年来,围绕基本SSE方案中仍然存在的一些需要解决的问题,学者们进行了广泛的研究,包括:(1) 如何对服务器存放的密文文件进行动态添加、更新或删除[7−9];(2) 如何对基本方案中“单个关键词精确匹配”查询方式进行扩展,以适应更广泛的查询需求[10−15];(3) 如何对基本方案中“包含与不包含”查询模式进行优化,以进一步降低用户端筛选目标文件的计算量[16−18];(4) 如何应对在半可信且具有好奇心的威胁模型下,服务器并不总是诚实地计算并返回检索结果的情况[19,20].1.2.2 不可信赖服务器路由问题的相关研究不可信赖服务器的路由问题源于文献[2]:Bob通过不可信赖邮件服务器向Alice发送包含某些关键词的邮件,要求服务器不能获取邮件内容和相关关键词信息,但需根据关键词将邮件路由至Alice的某个终端设备.例如,如果邮件的关键词为“urgent”,则服务器将邮件分配至Alice的手机,如果邮件的关键词为“lunch”,则服务器将邮件分配至Alice的电脑.Boneh等人[2]最早提出PEKS(public key encryption with keyword search)概念,并基于BF-IBE[21]构造了第一个PEKS方案BDOP-PEKS,安全性可归结为BDH(bilinear Diffie-Hellman)数学假设. Khader[22]基于K-resilient IBE构造KR-PEKS方案,在标准模型下达到IND-CKA安全.Crescenzo等人[23]提出基于二次剩余中二次不可区分性问题(quadratic indistinguishability problem,简称QIP)的PEKS方案.Abdalla等人[24]针对PEKS算法一致性定义缺陷,提出统计一致性(statistically consistency)和计算一致性(computationally consistency),并描述了从基于身份加密(identity-based encryption,简称IBE)到PEKS的一般变换算法IBE2PEKS.文献[25−27]指出了当前PEKS的一个较为严重的安全隐患:由于关键词空间远小于密钥空间,而且用户通常仅检索一些常用关键词,攻击者可借此实施关键词猜测攻击(keyword guessing attack,简称KGA),进而证明了不存在满足算法一致性并且在KGA下是安全的PEKS方案.因此,抵御KGA意味着需对PEKS机制本身加以修改.鉴于此,Tang等人[28]提出PERKS(public-key encryption with registered keyword search)方案,要求接收者在初始化阶段注册关键词,并将产生的预标签(pre-tag)通过安全信道传递给发送者;Xu等人[29]提出PEFKS(public key encryption with fuzzy keyword search)方案,向不可信赖服务器提供模糊陷门以进行初次检索,对返回结果再在本地进行基于精确陷门的二次检索.这些方案都能抵御KGA.近年来,关于PEKS的研究集中于:(1) 对基本PEKS方案的安全性加以完善,提高PEKS密文与邮件密文的耦合度[30−35];(2) 扩展查询方式,适应更广泛的查询需求[36−39];(3) 以实际背景为依托,探索满足高级应用需求的方案[40−43].2 可搜索加密的分类2.1 应用模型分类如图2所示,从当前的应用角度可将可搜索加密问题模型分为4类.1) 单用户(单服务器)模型.用户加密个人文件并将其存储于不可信赖外部服务器,要求:① 只有该用户具备基于关键词检索的能力;② 服务器无法获取明文文件和待检索关键词的信息.文献[1]中的应用问题以及单用户模式的云存储服务都是单用户模型的实例.2) 多对一(单服务器)模型.多个发送者加密文件后,将其上传至不可信赖外部服务器,以期达到与单个接收者传送数据的目的.要求:①只有接收者具备基于关键词检索的能力;②服务器无法获取明文文件信息.需要指出的是,不同于单用户模型,多对一模型要求发送者和接收者不能是同一用户.文献[2]中的应用问题和具备简单共享机制的云存储服务都是多对一模型的实例.3) 一对多(单服务器)模型.112Journal of Software 软件学报 V ol.26, No.1, January 2015与多对一(单服务器)模型类似,但为单个发送者将加密文件上传至不可信赖外部服务器,借此与多个接收者共享数据.该模型遵循着一种广播共享的模式,文献[7]中的研究问题是一对多模型的实例.4) 多对多(单服务器)模型.在多对一模型的基础上,任意用户都可成为接收者,其通过访问控制和认证策略以后,具备基于关键词的密文检索方式提取共享文件的能力.要求:① 只有合法用户(例如能够满足发送者预先指定的属性或身份要求)具备基于关键词检索的能力;② 服务器无法获取明文文件信息.该模型既是多对一模型的扩展,同时也是云计算中复杂共享机制的抽象,具备广阔的应用前景.Fig.2 Usage models classification in searchable encryption 图2可搜索加密应用模型分类 2.2解决策略从密码构造角度可将SE问题模型的解决策略分为3类.1) 对称可搜索加密,适用于单用户模型. 对称可搜索加密的构造通常基于伪随机函数,具有计算开销小、算法简单、速度快的特点,除了加解密过程采用相同的密钥外,其陷门生成也需密钥的参与.单用户模型的单用户特点使得对称可搜索加密非常适用于该类问题的解决:用户使用密钥加密个人文件并上传至服务器,检索时,用户通过密钥生成待检索关键词陷门,服务器根据陷门执行检索过程后返回目标密文. 2) 非对称可搜索加密,适用于多对一模型.非对称可搜索加密使用两种密钥:公钥用于明文信息的加密和目标密文的检索,私钥用于解密密文信息和生成关键词陷门.非对称可搜索加密算法通常较为复杂,加解密速度较慢,然而,其公私钥相互分离的特点,非常适用于多用户体制下可搜索加密问题的解决:发送者使用接收者的公钥加密文件和相关关键词,检索时,接收者使用私钥生成待检索关键词陷门,服务器根据陷门执行检索算法后返回目标密文.该处理过程避免了在发送者与接收者之间建立安全通道,具有较高的实用性.3) 对称可搜索加密或非对称可搜索加密,可解决一对多和多对多模型中的可搜索加密问题.非对称可搜索加密本身即能有效地支持最基本形式的隐私数据的共享,通过共享密钥,其可被拓展到多对多的应用场景.对称可搜索加密虽然通常适用于单用户模型,但其由于计算开销小、速度快,更适合于大型文件数据的加密和共享,通过混合加密与基于属性加密技术相结合,或与代理重加密结合,也可用于构造共享方案. 基于关键词查询 基于关键词查询 (a) 单用户单服务器模型 (b) 多对一单服务器模型发送密文文件发送密文文件 基于关键词查询 发送密文文件 发送者 服务器 发送者 发送者 接收者 基于关键词查询 发送密文文件共享密文文件基于关键词查询共享密文文件用户 服务器 用户 用户 基于关键词查询基于关键词查询(c) 一对多单服务器模型发送密文文件 基于关键词查询 服务器 发送者 接收者 接收者 接收者 (d) 多用户单服务器模型 上传密文文件用户服务器李经纬等:可搜索加密技术研究综述113鉴于对称和非对称可搜索加密作为基本工具,在解决实际可搜索加密问题时的重要性,本文接下来将围绕定义、构造和扩展研究,分别对对称和非对称可搜索加密的研究成果进行综述.3 对称可搜索加密3.1 定义3.1.1 算法描述定义1(对称可搜索加密). 定义在字典Δ={W1,W2,…,W d}上的对称可搜索加密算法可描述为五元组:SSE=(KeyGen,Encrypt,Trapdoor,Search,Decrypt),其中,1)K=KeyGen(λ):输入安全参数λ,输出随机产生的密钥K;2)(I,C)=Encrypt(K,D):输入对称密钥K和明文文件集D=(D1,D2,…,D n),D i∈2Δ,输出索引I和密文文件集C=(C1,C2,…,C n).对于无需构造索引的SSE方案(例如SWP方案[1]),I=∅;3)T W=Trapdoor(K,W):输入对称密钥K和关键词W,输出关键词陷门T W;4)D(W)=Search(I,T W):输入索引I和陷门T W,输出包含W的文件的标识符构成的集合D(W);5)D i=Decrypt(K,C i):输入对称密钥K和密文文件C i,输出相应明文文件D i.如果对称可搜索加密方案SSE是正确的,那么对于∀λ∈ ,n∈ ,W∈Δ,D=(D1,D2,…,D n)以及KeyGen(λ)和Encrypt(K,D)输出的K和(I,C),都有Search(I,Trapdoor(K,W))=D(W)和Decrypt(K,C i)=D i成立.这里,C i∈C,i=1,2,…,n.基于定义1,对称可搜索加密流程如下:加密过程中,用户执行KeyGen算法生成对称密钥K,使用K加密明文文件集D,并将加密结果上传至服务器.检索过程中,用户执行Trapdoor算法,生成待查询关键词W的陷门T W;服务器使用T W检索到文件标识符集合D(W),并根据D(W)中文件标识符提取密文文件以返回用户;用户最终使用K解密所有返回文件,得到目标文件.3.1.2 安全目标在设计密码方案时,主要考虑可能面临攻击模型下需达到的安全目标,通常使用安全目标与攻击模型相结合的方式定义方案的安全性.早在2000年,Song等人[1]将可证安全理论的不可区分性安全目标引入可搜索加密机制,要求密文不会泄漏任何原始文件信息.然而,Song的原始定义并不足以描述攻击者在现实场景中所具备的可搜索攻击能力.针对此问题,Goh[4]提出了选择关键词攻击下的不可区分性安全目标IND-CKA,要求攻击者即使能够任意询问(或以黑盒方式产生)密文文件和关键词陷门,也无法获得比通过陷门检索方式更多的原始文件信息.进一步地,Chang等人[5]考虑攻击者在实施攻击时能够获得之前所有轮次服务器端的查询结果的情况,描述了可搜索加密机制基于模拟的安全性定义,以限制服务器除每一轮查询结果外,无法获得任何信息.2006年,Curtmola等人[6]指出:① 文献[4]未明确考虑关键词陷门在可搜索加密机制中的安全性;② 文献[5]中的安全性定义无法描述具备自适应攻击能力的攻击者,且能够被任何可搜索加密方案平凡地(trivially)满足.Curtmola等人[6]进而在自适应(adaptive)和非自适应(nonadaptive)模型下形式化地定义了SSE的语义安全(semantic security,简称SS)和不可区分性安全(indistingsuishability,简称IND).描述安全目标之前,引入几个概念: 定义2. 假设Δ={W1,W2,…,W d}表示关键词字典,D=(D1,D2,…,D n)表示明文文件集合,W=(W(1),W(2),…,W(q))表示一组已查询关键词,这里,D i∈2Δ,W i∈Δ.可定义如下概念:1)q-查询历史H=(D,W),这里,|W|=q;2)H的查询格式∂(H)=(D(W(1)),D(W(2)),…,D(W(q)));3)H的检索格式σ(H)为q×q矩阵,对于1≤i,j≤q,如果W(i)=W(j),那么第i行j列元素σ(H)ij=1;否则,σ(H)ij=0;4)攻击者关于H的视图定义为V K(H)=(I,C,T1,T2,…,T q,id(D1),id(D2),…,id(D n)),包括密钥K作用下产生114Journal of Software 软件学报 V ol.26, No.1, January 2015的密文文件及其索引、历史查询关键词的陷门和一些额外信息,例如各文件标识符等;5) H 的轨迹τ(H )=(|D 1|,|D 2|,…,|D n |,∂(H ),σ(H )),包括H 的查询格式、检索格式和D 中各文件长度信息. SSE 安全目标的定义源于攻击者和挑战者的博弈过程:挑战者首先执行KeyGen 算法产生对称密钥K ,并按 照如图3所示的某种方式(在图3(b)和图3(d)中,S (⋅)为模拟算法,可根据历史的轨迹模拟产生密文文件集及其索 引),根据秘密产生的随机参数b 响应攻击者的询问,最后,由攻击者通过计算输出一个判定值b ′作为对b 的猜测: 如果b ′=b ,判定成功;否则失败.因此,可定义攻击者A 在相应安全目标下的攻击优势为Adv SSE (A )=|2⋅Pr[b ′=b ]−1|.如果对任意A 和ε>0,都有Adv SSE (A )<ε,那么对称可搜索加密算法SSE 达到了相应的安全目标.Fig.3 Games in SSE security notions图3 SSE 安全目标中的博弈过程自适应和非自适应模型下的安全目标之间的关系如图4所示.Fig.4 Relation of security goals under adaptive and nonadaptive attack model图4 自适应和非自适应模型下安全目标间的关系图4中,箭头表示能推导出.通过图4可以看出:• 非自适应攻击模型下,SS-Nonadaptive 和IND-Nonadaptive 相互等价,即,达到SS-Nonadaptive 安全的SSE 同时也达到IND-Nonadaptive 安全;反之亦然;• 自适应攻击模型下,SS-Adaptive 安全能够推导出IND-Adaptive 安全,因此,SS-Adpative 比IND-Adaptive 具备更高的安全度.3.2 典型构造SSE 典型构造方式包括SWP 方案[1]、Z-IDX 方案[4]和SSE-1方案[6].本节从构造角度对3种典型方案的加密过程进行综述.由于Z-IDX 和SSE-1采用基于索引的加密,对数据文件本身采用传统分组密码直接加密即可,因此,这里只详细介绍这两种方法的索引构建过程.SS-Nonadaptive IND-Nonadaptive 非自适应模型下的安全目标:自适应模型下的安全目标:SS-Adaptive IND-Adaptive返回V .这里,(,), 0(()), 1Encrypt K D b V D b τ=⎧=⎨=⎩如果如果S 提交q -查询历史H 攻击者挑战者 返回V .这里,(), 0(()), 1K V H b V H b τ=⎧=⎨=⎩如果如果S 提交q -查询历史H 1,H 2 攻击者挑战者返回攻击者视图V K (H b ).这里,b ∈R {0,1}返回关键词陷门()i W T 提交询问关键词对()()01(,)i i W W 返回(I b ,C b )=Encrypt (K ,D b ).这里,b ∈R {0,1}提交明文文件集D 1,D 2攻击者挑战者自适应询问 返回()(1)(2)(1), 0(,,,...,), 1i i T b D W W W b −=⎧⎪=⎪⎩如果如果S 提交询问关键词W (i ) 提交明文文件集D 攻击者挑战者 自适应询问 (a) 非自适应模型下不可区分性安全(b) 非自适应模型下语义安全 (c) 自适应模型下不可区分性安全(d) 自适应模型下语义安全李经纬 等:可搜索加密技术研究综述1153.2.1 SWP 方案 SWP 方案[1]在预处理过程中根据文件长度产生伪随机流S 1,S 2,…,S n (n 为待加密文件中“单词”个数),然后采用两个层次加密:在第1层,使用分组密码E 逐个加密明文文件单词;在第2层,对分组密码输出E (K ′,W i )进行处理:① 将密文等分为L i 和R i 两部分;② 基于L i 生成二进制字符串S i ||F (K i ,S i ),这里,K i =f (K ″,L i ),||为符号串连接,F 和f 为伪随机函数;③ 异或E (K ′,W i )和S i ||F (K i ,S i )以形成W i 的密文单词.查询文件D 中是否包含关键词W ,只需发送陷门T W =(E (K ′,W ),K =f (K ″,L ))至服务器(L 为E (K ′,W )的左部),服务器顺序遍历密文文件的所有单词C ,计算C XOR E (K ′,W )=S ||T ,判断F (K ,S )是否等于T :如果相等,C 即为W 在D 中的密文;否则,继续计算下一个密文单词.SWP 方案[1]通过植入“单词”位置信息,能够支持受控检索(检索关键词的同时,识别其在文件中出现的位置).例如,将所有“单词”以W ||α形式表示,α为W 在文件中出现的位置,仍按图5所示加密,但查询时可增加对关键词出现位置的约束.SWP 方案[1]存在一些缺陷:① 效率较低,单个单词的查询需要扫描整个文件,占用大量服务器计算资源;② 在安全性方面存在统计攻击的威胁.例如,攻击者可通过统计关键词在文件中出现的次数来猜测该关键词是否为某些常用词汇.Fig.5 SWP scheme图5 SWP 方案3.2.2 Z-IDX 方案Z-IDX [4]方案使用布隆过滤器作为文件索引,以高效跟踪文件中的关键词.布隆过滤器由二进制向量Mem (假设为m 位)和哈希函数族{h 1(⋅),h 2(⋅),…,h r (⋅)}(h i :{0,1}*→{1,2,…,m },i =1,2,…,r )组成,用于判断某元素是否存在于某集合中.例如,对集合S ,初始时刻,Mem 所有比特位置0.以后,对每个元素s ∈S ,置Mem [h 1(s )], Mem [h 2(s )],…,Mem [h r (s )]为1.因此,为确定待判断元素a 是否属于S ,只需检查比特位Mem [h 1(a )],Mem [h 2(a )],…, Mem [h r (a )],如果所有比特位都为1,则a 属于S ;否则a 不属于S .Z-IDX [4]构建索引的过程如图6所示,关键词通过两次伪随机函数作用形成码字存储于索引中,第1次伪随机函数以关键词W i 为输入,分别在子密钥K 1,K 2,…,K r 作用下生成x i 1,x i 2,…,x ir ;第2次伪随机函数分别以x i 1,x i 2,…, x ir 为输入,在当前文件标识符id 作用下生成码字y i 1,y i 2,…,y ir ,确保了相同关键词在不同文件中形成不同码字.另外,在布隆过滤器中加入混淆措施(随机添加若干个1)预防了针对关键词数目的攻击.判断文件D id (id 为该文件的标识符)中是否包含关键词W i :① 用户使用密钥K =(K 1,K 2,…,K r )生成W i 的陷门T i =(x i 1,x i 2,…,x ir ),这里,x ij =f (K j ,W i ),j =1,2,…,r ;② 服务器基于T i 生成W i 的码字(y i 1,y i 2,…,y ir ),这里,y ij =f (id ,x ij ),j =1, 2,…,r ;③ 服务器判断D id 的索引Mem id 的y i 1,y i 2,…,y ir 位是否全为1:若是,则W i ∈D id ;否则,D id 不包含W i .Z-IDX [4]存在一些不足:(1) 空间代价上,服务器除存储密文文件本身外,还需记录文件索引,当文件较短时,其索引可能是文件长度 第1层加密…… W 1K 1=f (K ″,S 1) E (K ′,W 1) L 1R 1 S 1 F (K 1,S 1) C 1 XOR W 2K 2=f (K ″,S 2) E (K ′,W 2)L 2 R 2 S 2F (K 2,S 2)C 2XOR W n K n =f (K ″,S n ) E (K ′,W n ) L n R n S n F (K n ,S n ) C nXOR 第2层加密明文文件116Journal of Software 软件学报 V ol.26, No.1, January 2015的数倍,空间利用率较低.文献[4]给出一个例子,只包含一个单词且长度为9字节的文件,加密后的索引 却为90字节;(2) 时间代价上,服务器检索需逐个文件地计算和判断,整个关键词查询操作时间消耗为O (n )(n 为服务器上存储文件数目),效率较低.Fig.6 Z-IDX scheme图6 Z-IDX 方案3.2.3 SSE-1方案SSE-1[6]为支持高效检索,引入额外数据结构:对任意关键词W ∈Δ:① 数组A 存储D (W )的加密结果;② 速查表T 存储W 的相关信息,以高效定位相应关键词信息在A 中的位置. SSE-1[6]构建索引过程如下所示(图7描述了一个采用SSE-1方案构建仅包含一个关键词索引的实例,其中, SKE 为使用的底层对称加密算法):1) 构建数组A初始化全局计数器ctr =1,并扫描明文文件集D ,对于W i ∈Δ,生成文件标识符集合D (W i ),记id (D ij )为D (W i )中字典序下第j 个文件标识符,随机选取SKE 的密钥K i 0∈{0,1}λ(这里,λ为安全参数),然后按照如下方式构建并加 密由D (W i )中各文件标识符形成的链表::1|()|1i W i L j D W −≤≤,随机选取SKE 密钥K ij ∈{0,1}λ,并按照“文件标识符||下一个节点解密密钥||下一个节点在数组A 的存放位置”这一形式创建链表i W L 的第j 个节点.N ij =id (D ij )||K ij ||ψ(K 1,ctr +1).这里,K 1为SSE-1的一个子密钥,ψ(⋅)为伪随机函数.使用对称密钥K i (j −1)加密N ij 并存储至数组A 的相应位置,即 A [ψ(K 1,ctr )]=SKE .Encrypt (K i (j −1),N ij );而对于j =|D (W i )|,创建其链表节点|()||()|()||0||i i i D W i D W N id D NULL λ=并加密存储至数组A ,1(|()|1)|()|[(,)].(,)i i i D W i D W A K ctr SKE Encrypt K N ψ−=;最后,置ctr =ctr +1.2) 构建速查表T对于所有关键词W i ∈Δ,构建速查表T 以加密存储关键词链表i W L 的首节点的位置及密钥信息,即:T [π(K 3,W i )]=(addr A (N i 1)||K i 0) XOR f (K 2,W i ).这里,K 2和K 3为SSE-1的子密钥,f (⋅)为伪随机函数,π(⋅)为伪随机置换,addr A (⋅)表示链表节点在数组A 中的地址.检索所有包含W 的文件,只需提交陷门32((),())W K K T W f W π=至服务器,服务器使用3()K W π在T 中找到W相关链表首节点的间接地址3[()]K T W θπ=,执行2XOR ()||K f W K θα′=,α为L W 首节点在A 中的地址,K ′为首节 点加密使用的对称密钥.由于在L W 中,除尾节点外所有节点都存储下一节点的对称密钥及其在A 中的地址,服务器获得首节点的地址和密钥后,即可遍历链表所有节点,以获得包含W 的文件的标识符.… W n 明文文件D id … x 1rx 11 x 12 W 1f (K 1,⋅)f (K 2,⋅) f (K r ,⋅) … y 1r x 21 x 22 W 2f (K 1,⋅)f (K 2,⋅)f (K r ,⋅)f (id ,⋅)y 11 y 12 … x 2r y 21y 22… y 2r f (K 1,⋅)x n x n 2 f (id ,⋅)f (id ,⋅) y 21y 22 … y 1 111 111 1 1 1 111 111 1 1 … … …… ……1 1… … … ………… 混淆 … x nr f (K 2,⋅) f (K r ,⋅)。

相关文档
最新文档