利索能及
我要发布
收藏
专利号: 2017100248655
申请人: 温州大学瓯江学院
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-27
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种隐私字符信息加密查询方法,其特征在于,包括以下步骤:

(1)数据加密:将可信客户端提交的明文元组转换为密文元组;所述明文元组含有隐私字段;所述密文元组包括密文数据和索引数据;所述隐私字段被划分为若干个子字段,其中每个子字段的值域被划分为若干个区域;所述索引数据为由该隐私字段的值所在的各子字段的值域名称构成;

所述索引数据,按照如下方法建立:

对于给定的明文元组的隐私字段Ar,其可能的最大长度为nr;Ar值为ar,ar原始数据为明文形式,加密后ar映射为索引值ax,记作 ax按照如下方法生成:ax=X(ar)

其中,X(ar)为索引映射函数,按照如下方法构造:

(1-1)构造隐私字段Ar的划分B1,B2,...,Bm,1≤m≤nr,其中nr为隐私字段Ar的最大长度;

(1-2)构造步骤(1-1)中获得的子字段Bk,k=1,2,...,m,的值域的划分并使得后一分区中的任意元素值均大于前一分区中的任一元素;对于任意子字段Bk,其值域记作domain(Bk),将domain(Bk)分成nk个分区,记作:(1-3)对于步骤(1-2)获得的任意一个子字段Bk的各个分区 分别分配一个互不相同的唯一标识字符,记作 即:

对于任意给定字段Bk的任一具体值bk,均可被映射为一个标识符 其中

即确定了一个映射函数,记作Xk(bk);

(2)查询转换:将原始查询条件转换索引查询条件,将其索引数据满足索引查询条件的步骤(1)中获得的密文元组组成的元组集作为相关密文元组集,使得所述相关密文元组集为原始查询结果转换为密文元组集的超集;

(3)数据解密:将步骤(2)中获得的相关密文元组集解密,获得明文形式的临时结果;

(4)数据筛选:将步骤(3)中获得的临时结果进行执行原始查询条件得到目标明文元组集,即数据筛选结果返回给用户。

2.如权利要求1所述的隐私字符信息加密查询方法,其特征在于,步骤(2)当查询条件为精确查询时,将查询条件的常量字符串用步骤(1)中构建的索引映射函数映射为索引值作为索引查询条件,将所有其索引值为所述索引查询条件的元组组成的元组集作为所述相关密文元组集。

3.如权利要求1所述的隐私字符信息加密查询方法,其特征在于,步骤(2)当查询条件为模糊查询时,将查询条件中的含有通配符的字符串按照子字段划分方法划分为变量子字符串和不含通配符的常量子字符串;然后将所述变量字符串覆盖的子字段映射为相应通配符,将所述常量字符串映射为所述标识符,将所述通配符和标识符顺序组成索引查询字符串,从而将所述查询条件转换为索引查询条件。

4.如权利要求3所述的隐私字符信息加密查询方法,其特征在于,当所述通配符匹配任意长度字符串,将查询条件中的含有通配符的字符串划分为靠左或靠右的常量子字符串以及变量子字符串,将所述常量子字符串映射成的标识符靠左或靠右的与变量字符串映射成的匹配任意长度字符串的通配符组合为索引查询字符串。

5.如权利要求3所述的隐私字符信息加密查询方法,其特征在于,当所述通配符匹配任意字符时,将查询条件中含有通配符的字符串划分为靠左的常量子字符串和/或靠右的常量字符串以及变量子字符串,将所述常量子字符串映射成标识符靠左和/或靠右的与变量字符串映射成的匹配任意字符的通配符组合为索引查询字符串。

6.如权利要求3所述的隐私字符信息加密查询方法,其特征在于,当所述通配符用于匹配列表p里的一个字符,即所述通配符为[p]时,将符合所述查询条件的每一字符串常量作为一次精确查询的查询条件,进行精确查询,并将结果的或运算作为所述模糊查询的结果。

7.如权利要求3至6任意一项所述的隐私字符信息加密查询方法,其特征在于,当查询条件为范围查询时,范围查询的一般形式为R.Ar≥a,其中a表示字符串常量,将查询条件进行转换,具体如下:其中b1,b2,...,bn为字符串常量a完整覆盖了n个子字段B1,B2,...,Bn,1≤n≤m,对应的值, 为子字段Bi的最大取值,next(bi)为Bi中大于bi的最小取值。

8.一种隐私字符信息加密查询系统,其特征在于,包括数据加密部件、查询转换部件、数据解密部件、以及数据筛选部件;

所述数据加密部件,用于将可信客户端提交的明文元组转换为密文元组;所述明文元组含有隐私字段,其值优选为字符串;所述密文元组包括密文数据和索引数据;

所述索引数据,按照如下方法建立:

对于给定的明文元组的隐私字段Ar,其可能的最大长度为nr;Ar值为ar,ar原始数据为明文形式,加密后ar映射为索引值ax,记作 ax按照如下方法生成:ax=X(ar)

其中,X(ar)为索引映射函数,按照如下方法构造:

(1-1)构造隐私字段Ar的划分B1,B2,...,Bm,1≤m≤nr,其中nr为隐私字段Ar的最大长度;

(1-2)构造步骤(1-1)中获得的子字段Bk,k=1,2,...,m,的值域的划分并使得后一分区中的任意元素值均大于前一分区中的任一元素;对于任意子字段Bk,其值域记作domain(Bk),将domain(Bk)分成nk个分区,记作:(1-3)对于步骤(1-2)获得的任意一个子字段Bk的各个分区 分别分配一个互不相同的唯一标识字符,记作 即:

对于任意给定字段Bk的任一具体值bk,均可被映射为一个标识符 其中

即确定了一个映射函数,记作Xk(bk);

所述查询转换部件,用于将原始查询条件转换索引查询条件,将其索引数据满足索引查询条件的所述密文元组组成的元组集作为相关密文元组集,使得所述相关密文元组集为原始查询结果转换为密文元组集的超集;

所述数据解密部件,用于将所述查询转换部件得到的相关密文元组集解密,获得明文形式的临时结果;

所述数据筛选部件,用于将所述临时结果进行执行原始查询条件得到目标明文元组集,即数据筛选结果返回给用户。

9.如权利要求8所述的隐私字符信息加密查询系统,其特征在于,所述查询转换部件,包括精确查询子部件、模糊查询子部件、以及范围查询子部件;所述精确查询子部件,用于将字符串常量映射为索引查询条件;所述模糊查询子部件,包括任意长度字符串通配符模块、任意一个字符通配符模块、以及列表中任意一个字符通配符模块:所述任意长度字符串通配符模块用于将含有任意长度字符串通配符的字符串转换为索引查询条件;所述列表中任意一个字符通配符模块用于将含有任意一个字符通配符的字符串转换为索引查询条件;

所述列表中任意一个字符通配符模块用于将含有列表中任意一个字符通配符的字符串转换为索引查询条件;所述范围查询子部件用于获取范围查询的索引查询条件。