System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于信息安全和隐私保护领域,具体涉及一种高效的随机化同态比较方法、装置、设备及存储介质。
技术介绍
1、同态加密(homomorphic encryption,he)技术支持直接对密文进行运算,具备保密性和密态计算性的双重优点,可以实现可用不可见的性质,是云计算、外包计算等领域实现信息传输和信息处理安全性和隐私性的一个重要选择。两个整数的比较操作是同态加密应用中最常见的运算之一,而在同态加密方案中如何设计高效同态比较算法,仍是一个十分重要的问题。一个完整的同态比较算法可以分为:大于算法,小于算法,等于算法,大于等于算法,小于等于算法等五个算法。
2、对于同态比较算法,通常可以借鉴计算机科学中的比较算法的构建方法,利用同态门电路实现。但这种构造方法效率通常都不够高,因为同态加密方案的效率受乘法电路的计算深度和计算次数影响很大,但是传统的构建方法没有对这方面进行很好的优化。因此,密码学家进行了多种尝试,希望进一步的提升同态比较算法的效率。chillotti等人基于单比特全同态加密方案,构造了多路复用选择器,并据此构造了max算法,其中明文输入都利用同态加密方案逐比特进行加密。akavia和gentry等人构造了等于算法和大于算法,对于两个n比特的两个输入,等于算法的计算深度为n,乘法运算次数为n-1;对于两个n比特的输入,大于算法的计算深度为n+1,乘法运算次数为2n。
3、目前,同态比较算法的乘法计算电路深度通常都与数据的比特长度呈线性相关,因此无法对大规模的数据进行比较操作。
1、针对上述问题,本专利技术利用随机化算法的思想提出了一种高效的随机化同态比较方法、装置、设备及存储介质,可以有效地判断两个二进制向量之间的大小。
2、为了达到上述目的,本专利技术的技术方案包括以下内容。
3、一种高效的随机化同态比较方法,包括:
4、获取n维的二进制向量a和二进制向量b的密文;
5、通过同态判断二进制向量a和二进制向量b的密文在所有位置的比特是否相等,生成不相等向量ine的密文;
6、针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果。
7、进一步地,所述相应同态化比较问题包括:二进制向量a是否等于二进制向量b;
8、所述针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果,包括:
9、随机选择多个n维二进制向量rj∈{0,1}n;
10、计算不相等向量ine与二进制向量rj的内积,得到内积计算结果pj;
11、对所有的内积计算结果pj进行or运算,得到or运算结果;
12、在所述or运算结果为1的情况下,所述二进制向量a和二进制向量b之间的同态比较结果为二进制向量a不等于二进制向量b;
13、在所述or运算结果为0的情况下,所述二进制向量a和二进制向量b之间的同态比较结果为二进制向量a等于二进制向量b。
14、进一步地,所述相应同态化问题包括:二进制向量a是否大于二进制向量b;
15、所述针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果,包括:
16、利用leaf算法找出不相等向量ine中首个1的位置,以得到二进制向量m;
17、通过计算二进制向量a与二进制向量b在每个位置的大于关系,得到二进制向量ig;
18、计算所述二进制向量m和所述二进制向量ig的内积isgrt;
19、在所述内积isgrt等于1的情况下,二进制向量a大于二进制向量b。
20、进一步地,所述相应同态化问题包括:二进制向量a是否小于二进制向量b;
21、所述针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果,包括:
22、利用leaf算法找出不相等向量ine中首个1的位置,以得到二进制向量m;
23、通过计算二进制向量b与二进制向量a在每个位置的大于关系,得到二进制向量ig′;
24、计算所述二进制向量m和所述二进制向量ig′的内积isles;
25、在所述内积isles等于1的情况下,二进制向量a小于二进制向量b。
26、进一步地,所述相应同态化问题包括:二进制向量a是否大于等于二进制向量b;
27、所述针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果,包括:
28、利用leaf算法找出不相等向量ine中首个1的位置,以得到二进制向量m;
29、通过计算二进制向量b与二进制向量a在每个位置的大于关系,得到二进制向量ig′;
30、计算所述二进制向量m和所述二进制向量ig′的内积isles;
31、计算数字iseqgrt=1-isles;
32、在所述数字iseqgrt等于1的情况下,二进制向量a大于等于二进制向量b。
33、进一步地,所述相应同态化问题包括:二进制向量a是否小于等于二进制向量b;
34、所述针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果,包括:
35、利用leaf算法找出不相等向量ine中首个1的位置,以得到二进制向量m;
36、通过计算二进制向量a与二进制向量b在每个位置的大于关系,得到二进制向量ig;
37、计算所述二进制向量m和所述二进制向量ig的内积isgrt;
38、计算数字iseqles=1-isgrt;
39、在所述数字iseqles等于1的情况下,二进制向量a小于等于二进制向量b。
40、一种高效的随机化同态比较装置,包括:
41、数据获取模块,用于获取n维的二进制向量a和二进制向量b的密文;
42、向量比较模块,用于通过同态判断二进制向量a和二进制向量b在所有位置的比特是否相等,生成不相等向量ine的密文;
43、结果生成模块,用于针对相应的同态化比较问题,基于所述不相等向量ine的密文得到二进制向量a和二进制向量b之间的同态比较结果。
44、一种计算机设备,其特征在于,所述计算机设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现上述任一项所述的高效的随机化同态比较方法。
45、一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述任一项所述的高效的随机化同态比较方法。
46、与现有技术相比,对于n比特的数据,本专利技术构本文档来自技高网...
【技术保护点】
1.一种高效的随机化同态比较方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述相应同态化比较问题包括:二进制向量a是否等于二进制向量b;
3.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否大于二进制向量b;
4.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否小于二进制向量b;
5.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否大于等于二进制向量b;
6.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否小于等于二进制向量b;
7.一种高效的随机化同态比较装置,其特征在于,所述装置包括:
8.一种计算机设备,其特征在于,所述计算机设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-6任一项所述的高效的随机化同态比较方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存
...【技术特征摘要】
1.一种高效的随机化同态比较方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述相应同态化比较问题包括:二进制向量a是否等于二进制向量b;
3.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否大于二进制向量b;
4.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否小于二进制向量b;
5.根据权利要求1所述的方法,其特征在于,所述相应同态化问题包括:二进制向量a是否大于等于二进制向量b;
6.根据权利要...
【专利技术属性】
技术研发人员:张振峰,韩将,周潭平,陈隆,
申请(专利权)人:中国科学院软件研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。