(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211069818.X
(22)申请日 2022.09.02
(71)申请人 暨南大学
地址 510632 广东省广州市天河区黄埔大
道西601号
(72)发明人 赖俊祚 宋贝贝 李燕玲 张蓉
吴鹏辉
(74)专利代理 机构 广州市华学知识产权代理有
限公司 4 4245
专利代理师 黄卫萍
(51)Int.Cl.
H04L 9/40(2022.01)
H04L 9/08(2006.01)
H04L 9/14(2006.01)
H04L 9/00(2022.01)
(54)发明名称
一种基于同态双向代理重加密的多密钥多
方安全计算方法
(57)摘要
本发明涉及一种基于同态双向代理重加密
的多密钥多方安全计算方法, 包括步骤: S1、 用户
数据端DPi生成密文cti并存储在云服务器CSP1
上; S2、 用户请求方RU请求计算; S3、 当DPi允许
CSP1使用自身数据时, 生成临时公私钥(pk ′i,
sk′i)和双向代理重加密密钥rki→i′; S4、 将pk ′i
和rki→i′上传至CSP1, 将sk′i上传至云服务器
CSP2; S5、 CSP1根据重加密密钥rki→i′将密文cti重
加密为ct ′i, 然后通过盲化的方式与CSP2进行交
互, 将需要使用的密文转换为在用户请求方 RU的
公钥下加密的密文, 并完成运算, 将结果密文返
回给用户请求方 RU进行解密。 本发明通过双向代
理重加密的方式, 在不泄露用户真实私钥的情况
下, 实现了不同密钥加密下密文的安全计算, 保
护了用户原始数据的隐私, 提高了密文数据的可
用性。
权利要求书3页 说明书6页 附图1页
CN 115442134 A
2022.12.06
CN 115442134 A
1.一种基于同态双向代理重加密的多密钥多方安全计算方法, 其特征在于, 包括以下
步骤:
S1、 通过一系列 上传数据的用户数据端DPi, 生成公私钥对(pki,ski), 使用公钥pki加密
数据, 生成密文cti并存储在云服 务器CSP1上;
S2、 当用户请求方RU请求计算时, 将需要使用的数据集i和计算函数f( ·)发送给云服
务器CSP1, 云服务器CSP1向用户数据端D Pi请求允许;
S3、 当用户数据端DPi允许云服务器CSP1使用自身数据时, 随机生成一对临时公私钥
(pk′i,sk′i), 根据自己的私钥ski和临时私钥sk ′i, 生成双向代理重加密 密钥rki→i′;
S4、 用户数据端DPi将临时公钥pk ′i和重加密密钥 rki→i′上传至云服务器CSP1, 将临时私
钥sk′i上传至云服 务器CSP2;
S5、 云服务器CSP1根据重加密密钥 rki→i′将密文cti重加密为ct′i, 然后通过盲化的方式
与云服务器CSP2进行交互, 将需要使用的密文转换为在用户请求方RU的公钥下加密的密
文, 并完成运 算, 最后将结果密文返回给用户请求方RU 进行解密。
2.根据权利要求1所述的一种基于同态双向代理重加密的多密钥多方安全计算方法,
其特征在于, 步骤S1的具体过程如下:
S11、 初始化算法, 选用具备加法同态特性的双向代理重加密方案, 根据安全参数κ, 生
成公共参数P P;
S12、 密钥对生成算法, 根据公共参数PP, 每个用户数据 端DPi生成自己的公私钥对(pki,
ski);
S13、 加密算法, 使用公钥pki对明文消息m进行加密, 输出密文cti;
S14、 解密算法, 使用私钥ski对密文cti进行解密, 输出明文m;
S15、 加法同态特性, 设置两个消息m1,m2, 其对应的密文分别为ct1=Enc(m1)和ct2Enc
(m2), 有:
给定一个常数γ, 有:
Enc(m1)γ→Enc(γm1);
S16、 对每一条 数据都采用相同的方法加密, 然后将密文cti上传至云服 务器CSP1上。
3.根据权利要求1所述的一种基于同态双向代理重加密的多密钥多方安全计算方法,
其特征在于, 步骤S4中上传过程的安全设置具体为: 用云服务器CSP1的公钥加密密钥
rki→i′, 用云服务器CSP2的公钥加密私钥sk ′i, 然后再进行传输, 云服务器CSP1、 云服务器
CSP2收到加密的密钥以后, 用自己的私钥进行解密, 进行密钥的安全传输 。
4.根据权利要求1所述的一种基于同态双向代理重加密的多密钥多方安全计算方法,
其特征在于, 步骤S5中云服务器CSP1和云服务器CSP2交互计算的过程为: 云服务器CSP1根据
用户请求方RU提供的计算函数f( ·)完成具体计算, 将函数拆分成一次或多次的加法和乘
法运算, 设用户请求方RU请求计算m1+m2和m1·m2, 云服务器的具体 计算过程如下:
S51、 加法计算: 计算m1+m2具体步骤为:
S511、 云服务器CSP1选取两个随机数R1,R2, 分别用临时公钥pk ′1和pk′2对其进行加密,
得到Rct1和Rct2;
S512、 云服务器CSP1用随机数R1和R2分别对m1和m2重加密后的密文ct ′1和ct′2进行盲化,权 利 要 求 书 1/3 页
2
CN 115442134 A
2得到mct′1和mct′2, 并发送给云服 务器CSP2, 其中:
S513、 云服务器CSP2收到密文mct ′1和mct′2后, 根据解密算法, 使用相应的私钥sk ′1和
sk′2进行解密, 得到(R1+m1)和(R2+m2), 然后计算[(R1+m1)+(R2+m2)], 使用用户请求方 RU的公
钥pkRU对[(R1+m1)+(R2+m2)]进行加密, 得到
发送
给云服务器CSP1;
S514、 云服务器CSP1提前计算 ‑(R1+R2), 并使用用户请求方RU的公钥pkRU对其进行加密,
得到
在收到MCT后, 云服务器CSP1根据加法同态特性, 计
算得到:
其中, CT为用户请求方RU公钥加密下m1+m2的最终的计算结果;
S52、 乘法计算: 计算m1·m2具体步骤为:
S521、 云服务器CSP1选取两个随机数R1,R2, 分别用临时公钥pk ′1和pk′2进行加密, 得到
Rct1和Rct2:
S522、 对密文ct ′1和ct′2进行盲化, 得到mct ′1和mct′2并发送给云服 务器CSP2, 其中:
S523、 云服务器CSP2收到密文mct ′1和mct′2后, 使用相应的私钥sk ′1和sk′2进行解密, 得
到(R1+m1)和(R2+m2), 并计算二者乘积mul=(R1+m1)·(R2+m2), 然后使用用户请求方RU的公
钥 p kR U对 ( R1+ m1) 、( R2+ m2) 以 及 乘 积 计 算 结 果 m u l 进 行 加 密 ,得 到
发 送 给
云服务器CSP1;
S524、 云服务器CSP1提前使用用户请求方RU的公钥pkRU对‑R1、‑R2以及‑R1R2进行加密, 得
到
在收到MCT1和MCT2后, 云服务器CSP1根据加法同态特性, 分别计算得到:
S525、 云服 务器CSP1得到CT1和CT2后, 根据加法同态特性, 计算得到
和
然后根据收到的密文mulCT,计算CTRU:权 利 要 求 书 2/3 页
3
CN 115442134 A
3
专利 一种基于同态双向代理重加密的多密钥多方安全计算方法
文档预览
中文文档
11 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共11页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-03-03 12:05:20上传分享