[发明专利]一种基于同态变色龙哈希的多服务器安全聚合系统和方法在审
| 申请号: | 202210853802.1 | 申请日: | 2022-07-12 |
| 公开(公告)号: | CN115021891A | 公开(公告)日: | 2022-09-06 |
| 发明(设计)人: | 于婧悦;卞超轶 | 申请(专利权)人: | 启明星辰信息技术集团股份有限公司;北京启明星辰信息安全技术有限公司 |
| 主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/06;H04L9/08;H04L9/40 |
| 代理公司: | 北京科石知识产权代理有限公司 11595 | 代理人: | 徐红岗 |
| 地址: | 100193 北京市海淀区东北旺*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 同态 变色龙 服务器 安全 聚合 系统 方法 | ||
1.一种基于同态变色龙哈希的多服务器安全聚合系统,包括:客户端,服务器,可信第三方及其负责维护的公告板,其中:
公告板,为各参与方的数据交互中介,所有参与方输出的数据均上传至公告板,并从公告板下载所需的数据;
可信第三方,用于完成同态变色龙哈希公共参数的生成并分发给所有参与方;
客户端,用于生成同态变色龙随机数,计算自己私有输入的同态变色龙哈希值;并基于加法同态秘密共享,针对不同服务器分别生成自己私有输入和同态变色龙随机数的秘密共享份额,将二者经公钥加密生成密文,输出密文和所述同态变色龙哈希值;
服务器,用于生成自己的公私钥对并将公钥公开;对收集到的密文解密,将各客户端秘密共享份额进行秘密聚合,输出聚合结果;
所述系统为公开可验证,任何一方均可利用公告板上公布的聚合结果和所述同态变色龙哈希公共参数及同态变色龙哈希值,对聚合结果进行秘密重构,并基于变色龙哈希函数的同态性对聚合结果进行验证。
2.根据权利要求1所述的安全聚合系统,其特征在于,系统包括运行于所述客户端、服务器和可信第三方的密码组件,所述密码组件包括:
公钥加密模块,用于生成服务器的公私钥对,对客户端发送的消息进行加密,以及在服务器端进行解密;
加法同态秘密共享模块,用于基于加法同态秘密共享,客户端生成自己私有输入和同态变色龙随机数的秘密共享份额,并分发给服务器,在服务器端进行秘密聚合,以及对聚合结果进行秘密重构;
同态变色龙哈希模块,用于生成同态变色龙哈希公共参数和同态变色龙哈希值,以及基于变色龙哈希函数的同态性对聚合结果进行验证。
3.根据权利要求1所述的安全聚合系统,其特征在于,所述系统为非交互式。
4.一种可用于权利要求1-3中任一系统的基于同态变色龙哈希的多服务器安全聚合方法,包括以下步骤:
公共参数生成:可信第三方生成同态变色龙哈希的公共参数,分发给所有参与方;
密钥生成:服务器生成自己的公私钥对,并公布公钥;
输入共享生成:客户端生成同态变色龙随机数,计算自己私有输入的同态变色龙哈希值;并基于加法同态秘密共享,针对不同服务器分别生成自己私有输入和同态变色龙随机数的秘密共享份额,二者经公钥加密生成密文,输出密文和同态变色龙哈希值;
聚合:服务器解密收到的密文,对收到的各客户端秘密共享份额进行秘密聚合,输出聚合结果;
验证:任何一方利用公告板上公布的聚合结果和所述同态变色龙哈希公共参数及同态变色龙哈希值,对聚合结果进行秘密重构,并基于变色龙哈希函数的同态性对聚合结果进行验证;
其中,所有参与方输出的数据均输出至公告板并从公告板下载所需的数据。
5.根据权利要求4所述的多服务器安全聚合方法,其特征在于,还包括将客户端的私有输入参数打包为一个单独的大整数的步骤。
6.根据权利要求4所述的多服务器安全聚合方法,其特征在于,采用RSA公钥加密算法进行公私钥对生成、公钥加密和密文解密。
7.根据权利要求5所述的多服务器安全聚合方法,其特征在于,所述加法同态秘密共享采用Shamir秘密分享方法,用于生成秘密共享份额,秘密聚合,以及聚合结果的秘密重构。
8.根据权利要求6所述的多服务器安全聚合方法,其特征在于,采用基于离散对数假设的Pedersen vector commitment方案填充的同态变色龙哈希算法进行聚合验证信息的生成及聚合结果的验证,具体包括:
公共参数生成:CH.Gen(1κ)→(CHpp=(p,G,g,h),TD=α),其中,1κ为安全参数;CHpp为公共参数;TD为陷门;g为一个阶为p的循环群的生成元;h为群元素,是模p的整数集合;
哈希值计算:CH.Hash((p,G,g,h),x,r)→(ch=gxhr),其中,ch为哈希值,x为待哈希的消息;r为随机数,
所述哈希算法还满足:对于任意给定的x和x′,对于任意的r可以找到r’=(x-x′+αr)/α满足:CH.Hash(CHpp,x,r)=CH.Hash(CHpp,x′,r′);以及:
CH.Hash(CHpp,x1+x2,r1+r2)=CH.Hash(CHpp,x1,r1)·CH.Hash(CHpp,x2,r2)
对于聚合结果,则验证CH.Hash(CHpp,y,r)=Πi∈[1,n]chi是否成立,其中y,r为聚合结果,n为客户端数量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于启明星辰信息技术集团股份有限公司;北京启明星辰信息安全技术有限公司,未经启明星辰信息技术集团股份有限公司;北京启明星辰信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210853802.1/1.html,转载请声明来源钻瓜专利网。





