系统设计 System design
整体介绍Overview
MKQE也采用inner product similarity量化评估相关匹配程度。
MKQE也基于每个文件包含的关键字,为其定义一个索引向量index vector。
也使用两个可逆矩阵和一个比特向量来进行索引向量的加密和陷门的生成。
查询向量query vector的构造。
改进了陷门生成机制。
考虑关键字访问频率分布。
MKQE框架 MKQE framework
- Setup:DO创建字典d=1+u+n
- Keygen(d):DO生成密码密钥SK k1,两个可逆矩阵M1和M2(大小为d×d),还生成一个d比特的向量S
- Extended-Keygen(k1, z):当z个新关键字被加入到词典时,DO生成一个新的SK k2,两个可逆矩阵M1’和M2’(大小为d+z × d+z),还有一个(d+z)比特的向量S’。
- Build-Index(F, SK):
- Trapdoor(Wq, SK):
- Query(T, k, I):
具体设计 Detailed design
向量结构 Vector structure
表征关键字部分的数据放在向量后面,以便于新增关键字时的操作。(有没有可能研究如何删除关键字时的情况呢?)
扩展的密钥生成 Extended key generation
利用块矩阵理论,不改变原来的秘密密钥,而只增加一个新的秘密密钥来支持新增加的关键字的查询。
矩阵处理 Matrix processing
一个数据结构+一个算法
索引建立 Index building
利用矩阵乘加密索引
设计了一个算法
带权重的索引 Weighted index
第一个研究云计算中加密数据的带权重搜索问题的。
陷门生成 Trapdoor generation
score的计算方法(主要是索引向量和查询向量中相关关键字位置上的取值问题)
查询 Query
DC发送陷门T和它的相关属性给CSP。CSP进行访问控制和关键字查询并返回top k个结果。