[发明专利]基于垂直划分的密文数据库查询方法及系统有效
申请号: | 201711316108.1 | 申请日: | 2017-12-12 |
公开(公告)号: | CN108132977B | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 马莎;黄琼;李西明 | 申请(专利权)人: | 华南农业大学 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/27;G06F16/2458;G06F21/60;H04L9/32 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李君 |
地址: | 510642 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 垂直 划分 数据库 查询 方法 系统 | ||
1.一种基于垂直划分的密文数据库查询方法,其特征在于:所述方法包括以下步骤:
S1、对于数据库中的每个表,根据列数据的结构和特性以及从统计用户查询中获得的关于数据应用的特点进行垂直划分,得到垂直划分的相关列集合;
S2、对垂直划分的相关列集合数据进行加密,得到基于垂直划分的密文列数据;
S3、对基于垂直划分的密文列数据进行不同粒度的授权;
S4、对基于垂直划分的密文列数据的授权进行验证;
S5、对验证通过的基于垂直划分的密文列数据进行相应授权粒度的查询;
S6、对基于垂直划分的密文列数据进行解密。
2.根据权利要求1所述的一种基于垂直划分的密文数据库查询方法,其特征在于:步骤S2中,所述对垂直划分的相关列集合数据进行加密,具体包括:
S21、获得垂直划分后的一个明文属性列Ai(i∈{1,...,n});
S22、获得该明文属性列所属用户的公钥X=gx和Y=gy,随机选择r1和r2,调用哈希部件、模求幂部件、异或部件和双线性对部件,对该明文属性列上的每一个明文M计算下面的密文:
其中,X'是垂直划分后另一属性列所属用户的公钥,X'=gx',H1,H2,H3是哈希函数,是异或操作,||是字符串的连接操作,e是双线性对运算;
S23、传输密文并存储到数据库中。
3.根据权利要求1所述的一种基于垂直划分的密文数据库查询方法,其特征在于:步骤S3中,所述对基于垂直划分的密文列数据进行不同粒度的授权,具体包括:
S31、接收不同粒度的授权请求;
S32、针对不同粒度的授权请求,计算相应的授权限门:
a、针对用户粒度的授权,利用用户的私钥(x,y)生成基于垂直划分的密文列数据的授权限门:
tdr=x
b、针对密文粒度的授权,利用用户的私钥(x,y),调用模求幂部件,生成基于垂直划分的密文列数据的授权限门:
4.根据权利要求1所述的一种基于垂直划分的密文数据库查询方法,其特征在于:步骤S4中,所述对基于垂直划分的密文列数据的授权进行验证,具体包括:
S41、接收不同粒度的授权限门;
S42、对不同粒度的授权限门进行验证:
a、针对用户粒度的授权,利用垂直划分后属性列所属用户的公钥X对tdr进行验证:
其中,tdr是对垂直划分的密文列数据生成的用户粒度的授权限门;如果该验证通过,则进入步骤S5;否则,向用户输出错误的警告信息;
b、针对密文粒度的授权,利用垂直划分后属性列所属用户的公钥X和密文C=(C1,C2,C3,C4)对tdc进行验证:
e(g,tdc)=e(X,C2)
其中,tdc是对垂直划分的密文列数据生成的用户粒度的授权限门;如果该验证通过,则进入步骤S5;否则,向用户输出错误的警告信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南农业大学,未经华南农业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711316108.1/1.html,转载请声明来源钻瓜专利网。