加密数据库与密文检索同态加密

Posted 平原上的维克多

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了加密数据库与密文检索同态加密相关的知识,希望对你有一定的参考价值。

内容主要来自山东大学软件学院孔凡玉教授的《大数据安全》课程,整理仅以期末考试的范围为准则,因此存在较大的内容缺失,后续考虑补全。

密文检索的概念

云存储环境中,用户将数据加密后上传至云服务器,密文检索技术能够对密文进行检索并将满足条件的数据返回给用户,用户将密文解密后得到结果。

基于全文扫描的关键词搜索方案

  1. 数据拥有者通过SetUp算法生成密钥 k ′ 和 k ′ ′ k^{'}和k^{''} kk,伪随机数序列 S 1 , S 2 . . . S l S_{1},S_{2}...S_{l} S1,S2...Sl(其中 l l l为文档中关键词的数目)以及伪随机函数 F F F f f f
  2. 将文档分组为关键词序列 w 1 , w 2 , . . . , w l w_{1},w_{2},...,w_{l} w1,w2,...,wl。对关键词 w i w_{i} wi进行加密得到 E k ′ ( w i ) E_{k^{'}}(w_{i}) Ek(wi)后拆分为 L i L_{i} Li R i R_{i} Ri两部分。计算出 F k i = f k ′ ( L i ) ( S i ) F_{k_{i}=f_{k^{'}}(L_{i})}(Si) Fki=fk(Li)(Si)。最后将 ( S i , F k i ( S i ) ) (S_{i}, F_{k_{i}}(S_{i})) (Si,Fki(Si)) ( L i , R i ) (L_{i}, R_{i}) (Li,Ri)进行异或得到密文块 C i C_{i} Ci
  3. 检索关键词 w w w时,数据所有者将 E k ′ ( w ) = ( L , R ) E_{k^{'}}(w)=(L,R) Ek(w)=(L,R) k = f k ′ ( L ) k=f_{k^{'}}(L) k=fk(L)发送给服务器
  4. 服务器对所有密文块 C i C_{i} Ci依次与 E k ′ ( w ) E_{k^{'}}(w) Ek(w)进行异或运算判断是否与 ( S , F k ( S ) ) (S, F_{k}(S)) (S,Fk(S))一致,然后返回满足条件的文档

在这里插入图片描述

基于保序加密(Order-preserving Encryption)的区间搜索

保序加密(OPE)是一种保持数值顺序关系的加密算法,将其定义为 E E E,对于任意密钥 k k k及数值数据 x x x y ( x < y ) y(x<y) y(x<y),均存在 E k ( x ) < E k ( y ) E_{k}(x)<E_{k}(y) Ek(x)<Ek(y)

同态加密

提供了对加密数据进行处理的能力。

记加密操作为 E E E,明文为 m m m,密文为 c c c,即 c = E ( m ) , m = D ( c ) c=E(m), m=D(c) c=E(m),m=D(c)
针对明文上的操作 f f f,我们可以构建一个复杂的同态加密算法 F F F,使得 F ( c ) = E ( f ( m ) ) F(c)=E(f(m)) F(c)=E(f(m))
这样第三方可以直接对 c c c执行操作 F F F,而我们对 F ( c ) F(c) F(c)解密后可以得到 f ( m ) f(m) f(m)

同态加密的用途

  1. 在无须获知明文的情况下即可实现对密文的大数据分析
  2. 可将复杂运算外包给外部的云服务中心而不会泄露数据

以上是关于加密数据库与密文检索同态加密的主要内容,如果未能解决你的问题,请参考以下文章

加密数据库与密文检索同态加密

同态加密简介

同态加密详解

同态加密详解

同态加密在加密机器学习中的应用

云安全与同态加密_调研分析同态加密技术及其应用分析——By Me