[发明专利]一种基于同态加密的百万富翁问题解决方法有效
申请号: | 201910549380.7 | 申请日: | 2019-06-24 |
公开(公告)号: | CN110299987B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 吴永东;戴杰玲;赖俊祚;翁健 | 申请(专利权)人: | 暨南大学 |
主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/08 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 陈宏升;黄磊 |
地址: | 510632 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于同态加密的百万富翁问题解决方法,对第一数据方的数据进行编码得到第一数据方编码集,对第二数据方的数据进行编码得到第二数据方编码集,通过比较第一数据方编码集和第二数据方编码集是否存在相同元素,结合比较协议和同态加密算法,获取两个数据方数据的比较结果,但两个数据方之间不能获取对方数据信息;保证双方数据安全,即提高了安全性。 | ||
搜索关键词: | 一种 基于 同态 加密 百万富翁 问题 解决方法 | ||
【主权项】:
1.一种基于同态加密的百万富翁问题解决方法,其特征在于,包括以下步骤:S1、设定G为同态加密算法的生成密钥过程,E为同态加密算法的加密过程,D为同态加密算法的解密过程;第一数据方有一个私有输入x,将私有输入x转为二进制数,即二进制值,则有x=xnxn‑1…x1,对第一数据方私有输入x的二进制数进行1编码,得到编码集
S2、通过生成密钥过程G产生私钥sk和公钥pk;S3、准备表T[i][j],其中,i∈{0,1},1≤j≤n,根据第一数据方私有输入x的二进制值和位数对应T表的位置进行密文填充,T[xi′][j′]=E(z),其中z∈{0,1},E(z)是对z进行同态加密的密文;
ri′为随机选取的一个数,E(ri)是对ri′进行同态加密的密文;![]()
是xi′的相反值,得到填充表格:
再将填充表格发送第二数据方;S4、第二数据方根据自己的私有输入y,转为二进制数,则有,y=ynyn‑1…y1,对第二数据方私有输入的二进制数进行0编码,得到编码集![]()
即编码集
中有d个元素,集合
中一个元素Hk,k∈{1,2,...,d},其中
根据
中每一位
有对应的
随机选取一个数tl,进行计算:
得到:
S5、根据Hk中每一位
有对应的
计算:
当集合
的元素有d个,但不够n个,则需要准备n‑d个随机密文zj″,zj″=E(uj″),1≤j″≤n‑d,所述随机密文zj″是对随机数uj″进行同态加密的密文;把{c1,c2,...,cd}和{z1,z2,...,zn‑d}两个密文集合组合成一个密文集合,再将组合后密文集合中每个元素进行随机置换位置,得到密文集合{C1,C2,...,Cn},再把密文集合{C1,C2,...,Cn}发送给第一数据方;S6、第一数据方将接收到的集合{C1,C2,...,Cn}进行同态加密中的解密过程,得到D(Cl′)=ml′,1≤l′≤n,当且仅当存在ml′=z(z∈{0,1}),则有x>y,否则x<y。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于暨南大学,未经暨南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910549380.7/,转载请声明来源钻瓜专利网。