一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于无证书加密的细粒度授权等值测试方法与流程

2021-12-14 23:15:00 来源:中国专利 TAG:


1.本发明涉及无证书加密的细粒度授权等值测试技术领域,具体为一种基于无证书加密的细粒度授权等值测试方法。


背景技术:

2.细粒度授权,通俗的讲就是将业务模型中的授权加以细分,从而得到适用更多不同场景的授权方案。
3.对称可搜索加密和公钥可搜索加密只能进行单密钥的密文搜素,不能满足不同密钥加密的密文搜索;支持授权的公钥加密等值测试存在由于复杂的证书管理导致的大量资源消耗问题;基于身份加密的授权等值测试存在密钥托管的问题;基于无证书加密的等值测试方案没有考虑测试权限问题。


技术实现要素:

4.针对现有技术的不足,本发明提供了一种基于无证书加密的细粒度授权等值测试方法,解决了上述背景技术中提出的问题。
5.为实现以上目的,本发明通过以下技术方案予以实现:一种基于无证书加密的细粒度授权等值测试方法,包括以下步骤:
6.s1、密钥生成中心初始化系统参数,同时根据用户id生成用户的部分私钥并发送给用户;
7.s2、用户选择一个秘密值并结合部分私钥生成自己的完整私钥,随后生成自己的公钥;
8.s3、用户使用相应的公钥加密数据,并将密文上传到云中,数据所有者可以下载并解密密文;
9.s4、用户可以根据需要使用自己的私钥生成不同类型的授权陷门,并发送给云服务器进行授权;
10.s5、有了不同用户的授权陷门,云服务器就可以在不解密的情况下,通过算法完成不同用户密文的等值测试。
11.可选的,所述步骤s4中,四种不同的授权策略方式为type

i型授权、type

ii型授权、type

iii型授权和type

iv型授权。
12.可选的,所述type

i型授权为用户级别,拥有type

i陷门,云服务器可以对用户的所有密文和其它任意用户的所有密文进行等值测试;
13.type

ii型授权为密文级别,拥有type

ii陷门,云服务器可以对用户的某个密文和其它任意用户的某个密文进行等值测试;
14.type

iii型授权为特定用户的密文级别,拥有type

iii陷门,云服务器可以对用户的某个密文和一个特定用户的特定密文进行等值测试;
15.type

iv型授权为密文用户级别,type

iv型授权是type

i型授权和type

ii型授
权的一个结合,拥有type

iv陷门,云服务器可以对用户的某个密文和其它任意用户的所有密文进行等值测试。
16.可选的,所述基于无证书加密的细粒度授权等值测试方法包含如下的算法:
17.步骤一、初始化:由密钥生成中心运行此算法,输入安全参数k,输出系统公共参数params和系统主密钥msk;
18.步骤二、提取部分私钥:由密钥生成中心运行此算法,输入一个用户的公开身份信息id∈{0,1}*和参数params,msk,输出此用户的部分私钥d
id

19.步骤三、设定秘密值:由用户运行此算法,输入参数params,id,输出用户的秘密值x
id

20.步骤四、私有密钥生成:由用户运行此算法,输入参数params,d
id
,x
id
,输出用户的完整私钥sk
id

21.步骤五、公开密钥生成:由用户运行此算法,输入参数params,x
id
,输出用户的公钥pk
id

22.步骤六、加密:由用户运行此算法,输入信息m,参数params,id和用户的公钥pk
id
,输出密文c;
23.步骤七、解密:由用户运行此算法,输入密文c,参数params,id和用户的私钥sk
id
,输出明文m或终止符号


24.假设有两个用户u
a
和u
b
,定义u
a
的公私钥对为(pk
a
,sk
a
),密文为c
a
;定义u
b
的公私钥对为(pk
b
,sk
b
),密文为c
b

25.可选的,所述type

i型授权的算法包括以下步骤:
26.aut1:两个用户分别运行此算法,输入私钥sk
a
(sk
b
),输出用户的type

i陷门t
1,a
(t
1,b
);
27.test1:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
1,a
,t
1,b
),如果两个密文包含相同的内容输出1,否则输出0。
28.可选的,所述type

ii型授权的算法包括以下步骤:
29.aut2:两个用户分别运行此算法,输入私钥sk
a
(sk
b
)和c
a
(c
b
),输出用户的type

ii陷门t
2,a
(t
2,b
);
30.test2:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
2,a
,t
2,b
),如果两个密文包含相同的内容输出1,否则输出0。
31.可选的,所述type

iii型授权的算法包括以下步骤:
32.aut3:两个用户分别运行此算法,输入私钥sk
a
(sk
b
)和密文c
a
,c
b
,输出用户的type

iii陷门t
3,a
(t
3,b
);
33.test3:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
3,a
,t
3,b
),如果两个密文包含相同的内容输出1,否则输出0。
34.可选的,所述type

iv型授权的算法包括以下步骤:
35.aut
4,a
:u
a
运行此算法,输入其私钥sk
a
,c
a
,输出u
a
的type

iv陷门t
4,a
=t
2,a

36.aut
4,b
:u
b
运行此算法,输入其私钥sk
b
,输出u
b
的type

iv陷门t
4,b
=t
1,b

37.test4:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
4,a
,t
4,b
),如果两个密文包含相同的内容输出1,否则输出0。
38.本发明提供了一种基于无证书加密的细粒度授权等值测试方法,具备以下有益效果:
39.1、该基于无证书加密的细粒度授权等值测试方法中,设计了一种新的基于无证书加密的等值测试方法并支持四种不同类型的授权,以解决现有的无证书加密等值测试方法中的测试权限问题和现有的公钥加密等值测试方法中存在的证书管理或密钥托管问题。
40.2、该基于无证书加密的细粒度授权等值测试方法综合了无证书加密和授权控制的优点,提供四种不同的授权方式以满足不同的场景需求;可以在不需要解密的条件下测试两个密文是否包含相同的内容。
附图说明
41.图1为本发明的流程结构示意图。
具体实施方式
42.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.请参阅图1,本发明提供一种技术方案:一种基于无证书加密的细粒度授权等值测试方法,包括以下步骤:
44.s1、密钥生成中心初始化系统参数,同时根据用户id生成用户的部分私钥并发送给用户;
45.s2、用户选择一个秘密值并结合部分私钥生成自己的完整私钥,随后生成自己的公钥;
46.s3、用户使用相应的公钥加密数据,并将密文上传到云中,数据所有者可以下载并解密密文;
47.s4、用户可以根据需要使用自己的私钥生成不同类型的授权陷门,并发送给云服务器进行授权;
48.s5、有了不同用户的授权陷门,云服务器就可以在不解密的情况下,通过算法完成不同用户密文的等值测试。
49.本发明中,步骤s4中,四种不同的授权策略方式为type

i型授权、type

ii型授权、type

iii型授权和type

iv型授权。
50.本发明中,type

i型授权为用户级别,拥有type

i陷门,云服务器可以对用户的所有密文和其它任意用户的所有密文进行等值测试;
51.type

ii型授权为密文级别,拥有type

ii陷门,云服务器可以对用户的某个密文和其它任意用户的某个密文进行等值测试;
52.type

iii型授权为特定用户的密文级别,拥有type

iii陷门,云服务器可以对用户的某个密文和一个特定用户的特定密文进行等值测试;
53.type

iv型授权为密文用户级别,type

iv型授权是type

i型授权和type

ii型授权的一个结合,拥有type

iv陷门,云服务器可以对用户的某个密文和其它任意用户的所有
密文进行等值测试。
54.本发明中,一种基于无证书加密的细粒度授权等值测试方法包含如下的算法:
55.步骤一、初始化:由密钥生成中心运行此算法,输入安全参数k,输出系统公共参数params和系统主密钥msk;
56.步骤二、提取部分私钥:由密钥生成中心运行此算法,输入一个用户的公开身份信息id∈{0,1}*和参数params,msk,输出此用户的部分私钥d
id

57.步骤三、设定秘密值:由用户运行此算法,输入参数params,id,输出用户的秘密值x
id

58.步骤四、私有密钥生成:由用户运行此算法,输入参数params,d
id
,x
id
,输出用户的完整私钥sk
id

59.步骤五、公开密钥生成:由用户运行此算法,输入参数params,x
id
,输出用户的公钥pk
id

60.步骤六、加密:由用户运行此算法,输入信息m,参数params,id和用户的公钥pk
id
,输出密文c;
61.步骤七、解密:由用户运行此算法,输入密文c,参数params,id和用户的私钥sk
id
,输出明文m或终止符号


62.假设有两个用户u
a
和u
b
,定义u
a
的公私钥对为(pk
a
,sk
a
),密文为c
a
;定义u
b
的公私钥对为(pk
b
,sk
b
),密文为c
b

63.本发明中,type

i型授权的算法包括以下步骤:
64.aut1:两个用户分别运行此算法,输入私钥sk
a
(sk
b
),输出用户的type

i陷门t
1,a
(t
1,b
);
65.test1:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
1,a
,t
1,b
),如果两个密文包含相同的内容输出1,否则输出0。
66.本发明中,type

ii型授权的算法包括以下步骤:
67.aut2:两个用户分别运行此算法,输入私钥sk
a
(sk
b
)和c
a
(c
b
),输出用户的type

ii陷门t
2,a
(t
2,b
);
68.test2:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
2,a
,t
2,b
),如果两个密文包含相同的内容输出1,否则输出0。
69.本发明中,type

iii型授权的算法包括以下步骤:
70.aut3:两个用户分别运行此算法,输入私钥sk
a
(sk
b
)和密文c
a
,c
b
,输出用户的type

iii陷门t
3,a
(t
3,b
);
71.test3:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
3,a
,t
3,b
),如果两个密文包含相同的内容输出1,否则输出0。
72.本发明中,type

iv型授权的算法包括以下步骤:
73.aut
4,a
:u
a
运行此算法,输入其私钥sk
a
,c
a
,输出u
a
的type

iv陷门t
4,a
=t
2,a

74.aut
4,b
:u
b
运行此算法,输入其私钥sk
b
,输出u
b
的type

iv陷门t
4,b
=t
1,b

75.test4:云服务器运行此算法,输入密文(c
a
,c
b
)和陷门(t
4,a
,t
4,b
),如果两个密文包含相同的内容输出1,否则输出0。
76.综上,一种基于无证书加密的细粒度授权等值测试方法,具体包括以下步骤:
77.初始化:输入安全参数k,算法执行以下进程:
78.生成双线性对参数:
79.选取五个抗碰撞的哈希函数:h1:{0,1}*

g1,h2:{0,1}*

g1,h3:g
t

{0,1}
2l
,h4:g
t
×
g
13

{0,1}
l n
,其中l和n分别是元素g1和的长度;
80.随机选择作为msk,并计算
81.输出公共系统参数
82.提取部分私钥:输入id∈{0,1}*,算法返回用户的部分私钥d
id
=(d1,d2),其中
83.设定秘密值:算法返回用户的密码值x
id
=x,随机选取。
84.私有密钥生成:算法返回用户的完整私钥sk
id
=(sk1,sk2),其中),其中
85.公开密钥生成:算法返回用户的公钥pk
id
=(pk1,pk2),其中pk1=g
1x
,pk2=g
2x

86.加密:输入信息m和公钥pk
id
,算法首先计算每个用户的和一次。然后,随机选择并计算密文c=(c1,c2,c3,c4),其中
[0087][0088][0089][0090][0091]
解密:输入私钥sk
id
和密文c=(c1,c2,c3,c4),算法进行如下计算:
[0092][0093]
如果和均成立,算法输出明文m;否则输出


[0094]
用u
a
和u
b
表示两个用户,分别定义他们的密文为c
a
=(c
a,1
,c
a,2
,c
a,3
,c
a,4
)和c
b
=(c
b,1
,c
b,2
,c
b,3
,c
b,4
)。
[0095]
其中,四种不同类型授权的工作方式如下:
[0096]
type

i授权具体包括以下步骤:
[0097]
aut1:两个用户分别运行此算法生成他们的type

i陷门t
1,a
=sk
a,1
和t
1,b
=sk
b,1

[0098]
test1:算法进行如下计算
[0099][0100]
并判断
[0101]
等式是否成立?
[0102]
因为
[0103]
如果等式(1)成立,则m
a
=m
b
,此时算法返回1;否则返回0。
[0104]
type

ii授权具体包括以下步骤:
[0105]
aut2:两个用户分别运行此算法生成他们的type

ii陷门和
[0106]
test2:算法进行如下计算
[0107][0108][0109]
并判断等式(1)是否相等。如果相等,则m
a
=m
b
,此时算法返回1;否则返回0。
[0110]
type

iii授权具体包括以下步骤:
[0111]
aut3:首先,两个用户分别计算
[0112][0113][0114]
然后运行此算法生成他们的type

iii陷门
[0115][0116][0117]
test3:算法判断等式
[0118]
是否成立?
[0119]
因为如果等式(2)成立,则m
a
=m
b

[0120]
此时算法返回1;否则返回0。
[0121]
type

iv授权具体包括以下步骤:
[0122]
aut
4,a
:u
a
生成type

iv陷门
[0123]
aut
4,b
:u
b
生成type

iv陷门t
4,b
=t
1,b
=sk
b,1

[0124]
test4:算法计算
[0125][0126]
并判断等式(1)是否成立。如果等式成立,则m
a
=m
b
,此时算法返回1;否则返回0。
[0127]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献