精华内容
下载资源
问答
  • 可搜索加密

    2013-06-15 20:53:20
    毕业设计的代码,是用Java做的可搜索加密方案的模拟仿真,有服务器与客户端两端,完成模拟通信,且在云端完成了模拟搜索。
  • 可搜索加密1

    万次阅读 热门讨论 2017-05-30 00:59:24
    可搜索加密

    本文是对D.Song等人的Practical Techniques for Searches on Encrypted Data的整理总结,旨在在总体上对可搜索加密技术做一个直观上的描述。对于文章中提出的方案给出详细的描述和个人的见解,由于能力所限,对于安全性证明仅仅给出感性上的理解,具体的证明请参考原文。

    • 传统搜索技术VS可搜索加密
      传统的搜索技术是基于明文的搜素技术,即无论查询用户提交的关键字还是服务器数据库中的数据信息都是以明文形式给出的。这也就造成了很严重的信息泄露,因为任意的恶意服务器都可以获取查询用户的查询关键字、查询结果等信息,严重危害个人的安全和隐私。
      可搜索加密技术为了解决这个难题提出了基于密文进行搜索查询的方案,在这种模式下,用密码学的基本技术来保证用户的隐私信息和人身安全。
    • 可搜索加密
      本文提出的方案旨在提出一种加密搜索模式,使得在对加密数据进行搜索的过程中,不会对恶意服务器泄露任何的信息。
      本文的方案有如下几点优势:
      安全性优势:
      (1)可证明安全(provably secure):即不可信服务器仅仅通过密文不能获得有关明文的任何信息;
      (2)控制搜索(controlled searching):即不可信服务器不能在没有合法用户的认证下进行搜索;
      (3)隐藏查询(hidden queries):即用户向服务器发起有关一个关键字的询问然而却不必向服务器表明关键字是什么;
      (4)查询独立(query isolation):即不可信服务器除了查询结果之外不能获得有关明文的任何信息;
      实用性与效率
      本文介绍的算法十分简单和快速。准确来说,对于长度为n的文件,加密和搜索的涉及到的流加密和块加密的复杂度均为O(n)。除此之外,也不需要也不需要大量的空间和预先的交互。本文提出的方案具有很好的拓展性,能够方便的拓展为其他的更为细致的方案。
      注意:本文的查询方案是基于概率查询设计的。
    • 加密数据查询
      在正式的引入可搜索加密技术之前,有必要首先介绍一下在加密数据上进行查询的流程。
      首先,Alice拥有一系列的文件,并且要将文件存储到不可信任的服务器端——Bob,例如Bob是一个邮箱服务器,Alice将自己的邮件存储到Bob端。但是由于Bob不可信任,所以为了不让Bob窃取到自己的信息,Alice需要将自己的文件加密之后,将密文存储到Bob端。每一个文件被拆解为“字”(words),这里假设所有的字都是固定长度的(对于长的字可以进行拆分(split),对于短的字可以进行补齐(padding))。由于带宽等因素的限制,Alice只希望能够解析包含某个关键字W的文件。为了实现这个目标,我们需要设计一种能够在加密数据上进行计算的方案,这样一来,就能够在Bob不知道隐私信息的情况下概率性的决定一个文件是不是包含某个关键字W
      目前有两种方案:
      (1)基于索引(index)的实现方案:对于每一个关键字W,建立一个索引,索引中包含所有含有该关键字的文件的指针。由于这种方案在更新数据的时候会对索引进行大量的修改,因此适合大量只读模式(mostly-read-only);
      (2)没有索引的序列扫描(sequential scan):这种情况下没有索引,每次查询都是对文件进行一次扫描来寻找符合查询条件的文件。无疑,这种模式的查询效率会低很多,但是却更适合经常更新的存储系统。
      我们接下来主要介绍第二种方案。
    • 预备知识
      接下来的方案介绍中会涉及到如下几个概念:
      伪随机生成器(pseudorandom generator)
      伪随机函数(pseudorandom function)
      伪随机置换(pseudorandom permutation)
      敌手的优势(advantage of adversary):
      AdvA=|Pr[A(X)=1]Pr[A(Y)=1]|
    • 方案
      方案1:
      基本思想:利用伪随机生成器G生成伪随机串S,将伪随机串与明文串异或,得到密文串,即 Ci=SiPi
      具体算法:
      (1)加密算法:
      <1>Alice使用流密码算法(伪随机生成器)产生一系列伪随机值 S1S2...Sl , Si 长度为n-m;
      <2>对每一个 Si ,运用伪随机函数 F,计算 FKiSi ,结果的长度为m;
      <3> Ti=<Si,FKi(Si)> ,密文 Ci=WiTi ;
      算法解析:
      <1>只有Alice能够产生伪随机串 T1T2...Tl
      <2>对于 Ki ,Alice有两种选择的方案:
      - a:选择与以前使用过的key,即 Ki=Kjj<i ;
      - b:选择从未使用过的key,即所有key都是相互独立的;
      <3>只要伪随机函数 F 和伪随机数生成器G是安全的,那么方案1就是安全的。也就是说,在任意的位置 i ,只要密钥Ki是未知的,那么对于算力有限的敌手来说, Ti 和真随机比特串是不可区分的。具体证明请参考原文
      (2)解密算法:
      <1>Alice告诉Bob搜索的关键字 W Ki,其中 Ki W 可能出现的位置匹配;
      <2>Bob对于每一个可能的位置i,Bob做异或运算 CiWi ,如果结果对于某个 s 而言,具备<s,FKi(s)>的形式,那么 Ci 即为搜索结果;
      <3>对于任意一个位置 i ,如果Bob不知道Ki,那么Bob无法获得任何关于明文的信息;
      <4>缺陷:如果Alice想要查询关键字 W ,那么Alice必须告诉Bob与之有关的所有的Ki,或者Alice必须事先知道 W 所有可能出现的位置(这对于远程查询搜索来说是不现实的);
      The Basic Scheme
      方案2:
      为了解决控制访问的问题,这里我们引入一个新的伪随机函数:
      f:KF×{0,1}>KF
      新引入的 f 和方案1中提到的伪随机函数F密钥相互独立,没有相关性;
      <1>引入 f 的作用在于可以根据Wi选择 Ki ,即: Ki:=fk(Wi) ,其中 k 是在密钥空间中随机选取、绝对保密的。
      <2>之后,Alice将 Ki W 提交给Bob;
      <3>最后,Bob在服务器上进行查询,对于WiW的位置将不会泄露任何信息;
      这样,就解决了控制访问的问题。
      拓展开来,如果想要在某个章节查询某个关键字,可以将章节信息插入到 f 中,即:
      ki:=fk(<C,W>)
      进一步,我们可以采用一种层次密钥管理模式,这样就可以区别对待在某个章节查询某个关键字和在全文查询某个关键字。
      然而,这种模式还是无法实现隐藏查询内容的功能。
      方案3
      进一步的,Alice不想让Bob知道她查询的内容,为了实现这个目标,我们采取如下的方案:
      <1>Alice对于每一个关键字 W 加密,此时加密用的算法是确定性的算法,对于每一个关键字的加密都是相互独立的,加密算法记作Ek# Ek#x 只与加密的内容 x 有关,与x在文中出现的位置 i 无关。上述加密过程记作:
      Xi:=Ek#(Wi)

      <2>同方案1中,对 Xi 进行加密:
      Ci:=XiTi

      <3>查询的时候,Alice将 <X,k> <script type="math/tex" id="MathJax-Element-14045"> </script>提交给Bob,其中 X:=Ek#Wk=fk(X)
      如此一来,Bob就无法得知Alice提交的查询的内容了。
      The Scheme for Hidden Search
      方案4
      虽然方案3完成了对于隐藏查询和控制查询的实现,但是却有一个很大的问题--即便是合法的用户,也无法仅仅只从密文解密出原文,这违背了加密的目的。
      这里,我们对加密方案进行改进:
      <1>首先将 Xi 一分为二: Xi:=<Li,Ri> ;
      <2>生成 ki ,即 ki:=fk(Li) ;
      <3>之后,Alice用伪随机数生成器生成 Si ,接着Alice用前面提到的方法生成 Ti ;
      <4>最后,实现对数据的加密:
      Ci:=XiTi,Xi=<Li,Ri>,Ti=<Si,FKi(Si)
      解密:
      <1> CiSi 得到 Li
      <2>利用 Li 得到 ki
      <3>得到 ki 之后很容易便可以进行解密;
      The final Scheme
    • 讨论
      本文给出的模式知识基本的一些方案,可搜索加密还有很大的可扩展空间:
      <1>支持高级的查询:
      本文涉及的查询都是简单的单个的关键字的查询,但是传统的数据库高级语言(SQL语言)却支持更为高级的布尔查询等查询模式,设计一种实现支持析取、合取范式的查询模式也很有必要;另外,模糊查询也可以和可搜索加密技术结合起来。
      <2>支持变长关键字
      这里略微提及两种支持变长关键字查询的方案:
      i> 使用固定长度的、足够长的块,从而能够容纳所有的查询关键字;
      ii>使用变长的关键字,但是在关键字中要包含关键字的字长信息;
      <3>基于索引的方案
      如前文所述,基于索引的方案在查询效率上是一般方案的数倍,但是在更新上却有很大的提升空间。
    • 后记
      这篇文章是可搜索加密的第一篇文章,对于后来的工作有很大的帮助.这里只是个人的一些看法的总结,如有错误欢迎大家指正!
    展开全文
  • 可搜索加密是解决云端不可信条件下加密数据安全云检索的重要方法。针对搜索公钥加密、搜索对称加密这2种可搜索加密类型,分别介绍了近几年来学术界的主要成果及其存在的问题、解决方法。在搜索公钥加密领域,...
  • 随着云计算的迅速发展,为保护用户外包数据的安全和用户隐私,...基于这种分类,首先介绍了典型方案,之后从可搜索加密的语句表达能力和安全性2方面进行介绍,并指出了该领域当前研究中急需解决的问题及未来研究方向。
  • 可搜索加密方案中,无论是云端服务器还是用户,都可能存在欺骗行为。为了解决这种安全问题,给出公平性安全的定义,提出基于区块链的可搜索加密方案。通过第三方可信机构(trusted authority,TA)验证数据传输...
  • 隐藏搜索模式的对称可搜索加密方案,陆海宁,,在云计算环境中,可搜索加密技术可以让云服务器直接在用户的数据密文上进行关键词搜索,同时尽量不泄露用户的数据和搜索条件信息
  • PEKS公钥可搜索加密

    2018-11-17 22:39:20
    实现简单的公钥可搜索加密,可以根据自己需求进行使用
  • 为解决云存储环境下加密数据的安全检索问题,对现有算法进行改进,提出一种高效且安全的可搜索加密方案。该方案利用哈希链表构建三个索引表:文件索引表γ<sub>f、搜索索引表γ<sub>w、删除索引表γ<sub>d,后两者是...
  • 可搜索加密机制研究与进展
  • 传统的对称可搜索加密解决了云存储中加密数据的检索问题,但是没有考虑到检索的公平性问题,即用户在支付了服务费后服务器没有返回检索结果或返回错误的检索结果的情况。随着区块链的出现,基于比特币的对称可搜索加密...
  • 对第三方的可信问题进行研究,将区块链技术与可搜索加密方案相结合,使用智能合约作为可信第三方进行检索工作,既可以防止服务器内部的关键字猜测攻击,又可以保证检索结果的正确性,从而限制服务器在下发数据时的...
  • 可搜索加密方案设计

    2013-07-08 21:05:20
    云存储中可搜索加密方案的研究与设计,硕士研究生毕业论文,重邮
  • 可搜索加密研究的必备文献,一次下载,即可进行研究,基础的知识,希望能帮到想学这方面的同学。有疑问或者需要其他资源,我上传到CSDN中。
  • 针对云存储电子病历(EMR)中病历数据难以在不同医院间共享的问题,提出了一种区块链上基于可搜索加密的EMR数据共享方案。该方案使用服务器存储EMR密文,私有链存储密文哈希值,联盟链存储关键字索引,以实现 EMR 的...
  • 使用指定服务器的多用户可搜索加密
  • 因此, 本文提出了基于属性的可搜索加密和属性更新, 它是将基于属性的加密方案和关键字搜索加密方案相结合. 该方案支持用户属性更新, 不合法车辆用户不会对存储的数据有访问权限, 从而实现对不合法车辆用户的撤销. ...
  • 针对现有的可搜索加密算法在多用户环境中密钥管理难度大并且缺乏细粒度访问控制机制的问题,利用基于密文策略的属性加密机制(CP-ABE, ciphertext-policy attribute based encryption)实现了对隐藏关键词可搜索加密...
  • 为了能在云计算环境下安全地使用可搜索加密技术,针对近几年来可搜索加密技术的研究成果,总结了云计算环境下对称/非对称可搜索加密技术的主要算法模型与安全模型,分析了各类安全方案的安全缺陷,并分析了基本...
  • 基于可搜索加密的云计算隐私研究.pdf
  • 可搜索加密概述(1)

    千次阅读 2020-06-13 22:25:48
    1,可搜索加密是什么 顾名思义,可搜索加密就是在加密的情况下实现搜索功能。目前很多文件存储在远程服务器,并且在有需要的时候需要能够检索文件或实现文件增,删,改。但是有的时候有些文件内容又不想让服务器知道...

    1,可搜索加密是什么

    顾名思义,可搜索加密就是在加密的情况下实现搜索功能。目前很多文件存储在远程服务器,并且在有需要的时候需要能够检索文件或实现文件增,删,改。但是有的时候有些文件内容又不想让服务器知道,需要对文件加密处理,如何将加密文件存储到远程服务器同时又可以在保密的情况下实现搜索和文件修改,就是可搜索加密的研究内容。

    2,可搜索加密的研究内容

    现在的学者们在可搜索加密方面主要研究什么呢?主要包括搜索语句设计,模糊搜索以及可搜索加密的应用三个方面。

    2.1 搜索语句即用户输入的搜索关键词,从初期的只支持单词搜索,到后来的多关键词搜索,区间搜索和子集搜索,如何让可搜索加密系统支持复杂的搜索请求的同时保证安全性和高效性,是研究的难点。其中安全性需要通过合适的困难假设来证明。

    2.2 模糊搜索就是在搜索时可以匹配到与关键词相近或相似的搜索结果,这样的功能在用户输入错别字或不记得精确关键词时可以提供方便。目前在明文上的模糊搜索方法已经有很多,但是并不适用于密文中,这是可搜索加密的一个研究内容。

    2.3 在不同场景中对可搜索加密可能有特定的需求,例如数据所有者为了节省本地存储空间从而将数据加密存储在远程服务器,那么只有自己会进行检索和修改操作;另外一些场景则需要将数据共享或多个用户上传数据允许一个用户搜索。这样的区别在可搜索加密中可能需要不同的密码机制来实现。

    3,可搜索加密分类

    实现可搜索加密主要可以分为两种方法:基于对称密码算法和基于公钥密码算法。基于公钥密码的算法安全性依赖于复杂数学问题的难解性,主要使用双线性映射等代数工具。基于对称密码的算法用到了伪随机函数,哈希算法以及对称加密算法等工具,相比基于公钥密码的算法运算速度更快。它们适用于不同的应用场景。

    按照应用场景不同,可搜索加密可以分为以下四种类型。

    3.1 单用户模型
    某用户为了节省本地存储空间的开销,将一些文件存储在远程服务器中,但是又不信任该服务器,为了保障自己的数据,该用户使用可搜索加密技术。这个场景下适合采用基于对称密码的算法。他的做法是用私钥加密文件并上传到服务器,检索时用私钥生成陷门,服务器根据陷门进行检索后返回密文。

    3.2 多对一模型
    即有多个数据上传者,只有一个数据接收者(检索者),例如邮件服务器委托网关对邮件进行过滤。这个场景很适合采用基于公钥密码的算法。由接收者发布公钥,发送者使用接收者的公钥加密文件和关键词,检索时,接收者用私钥生成陷门,服务器根据陷门进行检索并返回密文。

    3.3 一对多模型和多对多模型
    即一个或多个发送者和多个数据接收者,这种场景下可以使用对称加密或非对称加密。可以通过共享非对称加密的密钥,将多对一拓展到多对多。对称加密也可以通过混合加密或与其它加密方式结合来实现一对多或多对多。

    4,可搜索加密的典型构造方式

    4.1 SWP方案
    SWP是一种基于对称加密的方案,我在这里只总结这种方案的思想,将文件分成一个一个的单词,对每个单词用对称密码加密,为每个单词生成一个随机数S,以这个随机数和单词密文的一部分作为伪随机函数的参数,得到结果和随机数S连接,即S||F(K,S),其中K是和单词密文相关的,然后将密文和S||F(K,S)进行异或,得到的结果上传服务器。查询时构造陷门,陷门就是关键词密文和K,将关键词密文和服务器中存储的密文异或,会得到S||T,计算F(K,S)是否等于T,如果是,则匹配成功,即认为搜索的关键词和当前单词是一致的。

    4.2 Z-IDX方案
    Z-IDX也是一种基于对称加密的方案,使用布隆过滤器作为索引,SWP是没有索引的。布隆过滤器由二进制向量和哈希函数族组成,构造索引的过程是将关键词分别用R个子密钥进行哈希运算,再将得到的R个数分别和文件ID进行哈希运算,将结果映射到布隆过滤器中,将对应位置置为1,所有关键词都加入后,将这个二进制向量和加密的文件一起上传到服务器。当要检索时,将关键词用R个子密钥进行哈希运算得到的结果作为陷门发送给服务器,服务器依次用每个文件ID进行第二次哈希运算,并检查布隆过滤器中对应位置是否全为1,如果是,则匹配成功。

    ——————————————

    参考文献:李经纬, 贾春福, 刘哲理,等. 可搜索加密技术研究综述[J]. 软件学报, 2015, 26(1):109-128.

    展开全文
  • 支持属性撤销的基于CP-ABE可搜索加密方案
  • 量子时代基于格的语义可搜索加密方案
  • 基于错误学习的自适应等级可搜索加密方案
  • 布尔查询的多客户端可搜索加密方案的改进
  • 可搜索加密是一种支持用户在密文上进行关键字查找的密码学原语,鉴于传统单服务器可搜索加密方案数据检索效率不高的问题,基于身份在证书管理方面的优势,提出了在多服务器环境下利用双线性映射构造一种支持连接...
  • 高维数据相似性可搜索加密的高效分布式方法
  • 对等组基于安全通道免费ID的可搜索加密
  • 混合云中的粗粒度多用户可搜索加密
  • 一个自主授权的多用户可搜索加密方案

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 156,871
精华内容 62,748
关键字:

可搜索加密