CN111737767A - 针对隐私数据进行安全运算的方法和装置 - Google Patents
针对隐私数据进行安全运算的方法和装置 Download PDFInfo
- Publication number
- CN111737767A CN111737767A CN202010759908.6A CN202010759908A CN111737767A CN 111737767 A CN111737767 A CN 111737767A CN 202010759908 A CN202010759908 A CN 202010759908A CN 111737767 A CN111737767 A CN 111737767A
- Authority
- CN
- China
- Prior art keywords
- privacy
- segment
- value
- private
- party
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
Abstract
本说明书实施例提供一种针对隐私数据进行安全运算的方法和装置,隐私数据包括第一隐私数据,第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,第一隐私分片分布于第一方,第二隐私分片分布于第二方,第一隐私分片和第二隐私分片均属于模n空间,n为k位的整数;方法包括:第一方根据本方的第一隐私分片,与第二方的第二隐私分片,通过安全多方计算,得到第一隐私分片、第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,第一中间值为2的k次幂减去n;根据第k位的取值,确定第一隐私数据与0进行安全比较运算的最终结果。能够在针对隐私数据进行安全运算时提升性能。
Description
技术领域
本说明书一个或多个实施例涉及计算机领域,尤其涉及针对隐私数据进行安全运算的方法和装置。
背景技术
安全多方计算又称为多方安全计算,即多方共同计算出一个函数的结果,而不泄露这个函数各方的输入数据,计算的结果公开给其中的一方或多方。其中,各方的输入数据常常为隐私数据。
秘密共享(secret sharing)也称为秘密分割、秘密分享,这一密码学技术最初是用于秘密信息的管理。它的基本原理是将秘密(比如密钥)拆分成多个分片(share),也称为份额,分别交给不同人保管。只有超过门限数量的人将他们的分片合并,才能恢复秘密;从少于门限数量的分片无法恢复秘密的任何信息。多方安全计算中,门限数量通常与参与方数量相同。
秘密共享用于安全多方计算时,有时需要进行安全比较操作,即在不泄露隐私数据的情况下,针对隐私数据进行比较运算,现有技术的安全比较性能较差。
因此,希望能有改进的方案,能够在针对隐私数据进行安全运算时提升性能。
发明内容
本说明书一个或多个实施例描述了一种针对隐私数据进行安全运算的方法和装置,能够在针对隐私数据进行安全运算时提升性能。
第一方面,提供了一种针对隐私数据进行安全运算的方法,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述方法通过所述第一方执行,包括:
根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;
根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。
在一种可能的实施方式中,所述第一隐私数据的取值范围包括最小值和最大值,所述最小值为第一数值的加法逆元,所述最大值为第二数值,所述第一数值和所述第二数值均大于0,所述第一数值小于或等于2的k-1次幂,所述第二数值小于或等于2的k-1次幂减去1,所述第一数值和所述第二数值之和小于n。
进一步地,所述第一数值小于或等于n减去2的k-1次幂,所述第二数值小于n减去2的k-1次幂。
在一种可能的实施方式中,所述安全多方计算,包括:
根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片与所述第一中间值的第二求和结果,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
在一种可能的实施方式中,所述安全多方计算,包括:
根据本方的所述第一隐私分片与所述第一中间值的第三求和结果,与所述第二方的所述第二隐私分片,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
在一种可能的实施方式中,所述最终结果为所述第一隐私数据是否小于0的逻辑值,所述最终结果等于所述第k位的取值。
在一种可能的实施方式中,所述最终结果为所述第一隐私数据是否大于或等于0的逻辑值,所述最终结果等于所述第k位取反的取值。
在一种可能的实施方式中,所述隐私数据还包括第二隐私数据和第三隐私数据,其中所述第二隐私数据基于秘密共享的方式被拆分成第三隐私分片和第四隐私分片,所述第三隐私数据基于秘密共享的方式被拆分成第五隐私分片和第六隐私分片,所述第三隐私分片和所述第五隐私分片分布于所述第一方,所述第四隐私分片和所述第六隐私分片分布于所述第二方;所述第一隐私分片通过所述第三隐私分片减去所述第五隐私分片得到,所述第二隐私分片通过所述第四隐私分片减去所述第六隐私分片得到;
所述方法还包括,将所述最终结果确定为所述第二隐私数据是否小于所述第三隐私数据的结果。
第二方面,提供了一种针对隐私数据进行安全运算的装置,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述装置设置于所述第一方,包括:
多方计算单元,用于根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;
确定单元,用于根据所述多方计算单元得到的所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的方法和装置,隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;第一方首先根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;再根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。由上可见,本说明书实施例,通过安全提取一个位,从而确定第一隐私数据与0进行安全比较运算的最终结果,这种运算方式比较简单,能够在针对隐私数据进行安全运算时提升性能。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的针对隐私数据进行安全运算的方法流程图;
图3示出根据一个实施例的针对隐私数据进行安全运算的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及针对隐私数据进行安全运算。所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数。本说明书实施例中,对于隐私数据所代表的含义不做限定。隐私数据可以代表一项隐私信息对应的数值,例如,隐私数据为15,代表用户的收入为15万元;隐私数据也可以代表多项隐私信息运算后的数值,例如,隐私数据为3,代表用户甲和用户乙的年龄的差值为3岁。可以理解的是,隐私数据可以是任何不便于公开的数据,可以但不限于代表用户的个人信息的数据,或者商业秘密等。
参照图1,针对隐私数据x进行比较运算,具体地可以对隐私数据x和0进行比较,例如,求解y=(x>=0)的逻辑值,可以理解的是,若x>=0,则y=1,若x<0,则y=0;又例如,求解y=(x<0)的逻辑值,可以理解的是,若x<0,则y=1,若x>=0,则y=0。第一方11具有隐私数据x的模n的分片x1,第二方12具有隐私数据x的模n的分片x2。经过比较运算后,第一方11获得比较结果y的模2的分片 y1, 第二方12获得比较结果y的模2的分片y2。其中,第一方和第二方仅为对两方的区分,还可以将第一方称为P1方,将第二方称为P2方,等。
秘密共享通过取模让分片和运算在一个有限的空间上,通常会模2、模2的次幂、模素数、模多个不同素数的积。针对隐私数据x进行比较运算,例如,双方安全多方计算y=(x<0)。通常地,将符号整数x通过取模运算的方式映射到模为n的环,且要求x的取值范围不超过[-取整(n/2), 取整(n/2)-1],即有如下:
若x>=0,则x%n在[0,取整(n/2)-1]区间,x1+x2要么在[0, 取整(n/2)-1]区间,要么在[n, n+取整(n/2)-1]区间;
否则,若x<0, 则x%n在[n-取整(n/2),n-1]区间,x1+x2要么在[n-取整(n/2), n-1]区间,要么在[2n-取整(n/2), 2n-2]区间。
当n为2的次幂时,这时x的表示方法跟计算机中常用的符号整数表示方法“补码”一致。假设n=2k,有如下:
若x>=0,则x%n在[0, 2k-1-1]区间,x1+x2要么在[0, 2k-1-1]区间,要么在[2k, 2k+2k-1-1]区间;
否则,若x<0, 则x%n在[2k-1, 2k-1]区间,x1+x2要么在[2k-1, 2k-1]区间,要么在[2k+2k-1, 2k+2k-1-2]区间。
由上面,可以看出x<0当且仅当x的第k个位(即符号位)为1,当且仅当x1+x2的第k个位为1。通常地,采用安全多方计算算法计算x<0时,实际是通过安全计算x1+x2的第k个位实现,这里涉及安全求和和安全提取求和结果的第k个位。
而当n不为的2的次幂时,无法通过x1+x2的某个位判定x1+x2落在哪个区间,通常需要进行多次普通数据的安全比较操作来判断x1+x2是否在[0, 取整(n/2)-1]区间或[n,n+取整(n/2)-1]区间来安全计算x<0,即需要安全计算x1=<取整(n/2)-1-x2、x1>=n-x2、x1=<n+取整(n/2)-1-x2,性能较差。
本说明书实施例,当n不为的2的次幂时,仍然可以通过安全提取一个位,从而确定第一隐私数据与0进行安全比较运算的最终结果,这种运算方式比较简单,能够在针对隐私数据进行安全运算时提升性能。
图2示出根据一个实施例的针对隐私数据进行安全运算的方法流程图,该方法可以基于图1所示的实施场景,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述方法通过所述第一方执行。如图2所示,该实施例中针对隐私数据进行安全运算的方法包括以下步骤:步骤21,根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;步骤22,根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。下面描述以上各个步骤的具体执行方式。
首先在步骤21,根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n。可以理解的是,这里涉及安全求和和安全提取求和结果的第k个位。
在一个示例中,所述第一隐私数据的取值范围包括最小值和最大值,所述最小值为第一数值的加法逆元,所述最大值为第二数值,所述第一数值和所述第二数值均大于0,所述第一数值小于或等于2的k-1次幂,所述第二数值小于或等于2的k-1次幂减去1,所述第一数值和所述第二数值之和小于n。
举例来说,n为k位的整数,即n的第k个位为1。容许将[-p’,p]范围的符号整数x映射到模n的环上。其中,p’、p、n为正整数,要求选取三者的取值满足以下条件:p’<=2k-1;p<=2k-1-1;p+p’<n。
进一步地,所述第一数值小于或等于n减去2的k-1次幂,所述第二数值小于n减去2的k-1次幂。
举例来说,p’<=n-2k-1;p<n-2k-1。通过合理设定模n的值、容许的符号整数上下限,使得x1+x2+2k-n的第k位可以判定x的符号,其中,x代表第一隐私数据,x1代表第一隐私分片,x2代表第二隐私分片。第一方和第二方双方安全计算x1+x2+2k-n的第k位来安全计算x<0。
在一个示例中,所述安全多方计算,包括:
根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片与所述第一中间值的第二求和结果,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
举例来说,第一方令x1’=x1,第二方自行计算x2’=x2+2k-n;第一方和第二方联合计算x1’+x2’的第k位的取值。
在另一个示例中,所述安全多方计算,包括:
根据本方的所述第一隐私分片与所述第一中间值的第三求和结果,与所述第二方的所述第二隐私分片,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
举例来说,第一方自行计算x1’=x1+2k-n,第二方令x2’=x2;第一方和第二方联合计算x1’+x2’的第k位的取值。
需要说明的是,上述安全多方计算可以采用的方式很多,并不限定于上述两种。例如,还可以第一方自行计算x1’=x1+2k,第二方自行计算x2’=x2-n;第一方和第二方联合计算x1’+x2’的第k位的取值。或者,第一方自行计算x1’=x1-n,第二方自行计算x2’=x2+2k;第一方和第二方联合计算x1’+x2’的第k位的取值。在此不再一一列举。
再在步骤22,根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。可以理解的是,根据具体的安全比较运算,可以将所述第k位的取值直接作为所述最终结果,或者,可以将所述第k位的取值进行相应运算后再作为所述最终结果。
在一个示例中,所述最终结果为所述第一隐私数据是否小于0的逻辑值,所述最终结果等于所述第k位的取值。
可以理解的是,该示例用于求解y=(x<0)的逻辑值。
在另一个示例中,所述最终结果为所述第一隐私数据是否大于或等于0的逻辑值,所述最终结果等于所述第k位取反的取值。
可以理解的是,该示例用于求解y=(x>=0)的逻辑值。
在另一个示例中,所述隐私数据还包括第二隐私数据和第三隐私数据,其中所述第二隐私数据基于秘密共享的方式被拆分成第三隐私分片和第四隐私分片,所述第三隐私数据基于秘密共享的方式被拆分成第五隐私分片和第六隐私分片,所述第三隐私分片和所述第五隐私分片分布于所述第一方,所述第四隐私分片和所述第六隐私分片分布于所述第二方;所述第一隐私分片通过所述第三隐私分片减去所述第五隐私分片得到,所述第二隐私分片通过所述第四隐私分片减去所述第六隐私分片得到;
所述方法还包括,将所述最终结果确定为所述第二隐私数据是否小于所述第三隐私数据的结果。
举例来说,第一方持有e的模n的分片e1, 第二方持有e的模n的分片e2 ;第一方持有f的模n的分片f1, 第二方持有f的模n的分片f2,第一方和第二方可以通过本说明书实施例提供的方法安全计算(e<f)。可以理解的是,双方只需生成x=e-f的分片,然后安全计算y=(x<0)即可。其中,生成x=e-f的分片的方法是:x1=e1-f1%n, x2=e2-f2%n。
下面对本说明书实施例提供的方法进行正确性证明:
若x>=0,则x%n在[0,p]区间,x1+x2+2k-n要么在[2k-n, 2k-n+p]区间,要么在[2k, 2k+p]区间。根据n和p的关系,有:若x>=0,则要么0<2k-n =< x1+x2+2k-n<=2k-n+p<2k-1,要么2k=<x1+x2+2k-n<=2k+p<2k+2k-1,即有x1+x2+2k-n的第k个位为0。
否则,若x<0, 则x%n在[n-p’,n-1]区间,x1+x2+2k-n要么在[2k-p’, 2k-1]区间,要么在[n+2k-p’,n+2k-2]区间。根据n和p’的关系,有:若x<0,则要么2k-1=<2k-p’=<x1+x2+2k-n<=2k-1,要么2k+2k-1 =< n+2k-p’=< x1+x2+2k-n<= n+2k-2<2k+2k,即有x1+x2+2k-n的第k个位为1。
由上可知,当且仅当x1+x2+2k-n的第k个位为1时,x<0。
通过本说明书实施例提供的方法,隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;第一方首先根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;再根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。由上可见,本说明书实施例,通过安全提取一个位,从而确定第一隐私数据与0进行安全比较运算的最终结果,这种运算方式比较简单,能够在针对隐私数据进行安全运算时提升性能。
根据另一方面的实施例,还提供一种针对隐私数据进行安全运算的装置,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述装置设置于所述第一方,所述装置用于执行本说明书实施例提供的方法中所述第一方执行的动作。图3示出根据一个实施例的针对隐私数据进行安全运算的装置的示意性框图。如图3所示,该装置300包括:
多方计算单元31,用于根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;
确定单元32,用于根据所述多方计算单元31得到的所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。
可选地,作为一个实施例,所述第一隐私数据的取值范围包括最小值和最大值,所述最小值为第一数值的加法逆元,所述最大值为第二数值,所述第一数值和所述第二数值均大于0,所述第一数值小于或等于2的k-1次幂,所述第二数值小于或等于2的k-1次幂减去1,所述第一数值和所述第二数值之和小于n。
进一步地,所述第一数值小于或等于n减去2的k-1次幂,所述第二数值小于n减去2的k-1次幂。
可选地,作为一个实施例,所述多方计算单元31,具体用于根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片与所述第一中间值的第二求和结果,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
可选地,作为一个实施例,所述多方计算单元31,具体用于根据本方的所述第一隐私分片与所述第一中间值的第三求和结果,与所述第二方的所述第二隐私分片,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
可选地,作为一个实施例,所述最终结果为所述第一隐私数据是否小于0的逻辑值,所述最终结果等于所述第k位的取值。
可选地,作为一个实施例,所述最终结果为所述第一隐私数据是否大于或等于0的逻辑值,所述最终结果等于所述第k位取反的取值。
可选地,作为一个实施例,所述隐私数据还包括第二隐私数据和第三隐私数据,其中所述第二隐私数据基于秘密共享的方式被拆分成第三隐私分片和第四隐私分片,所述第三隐私数据基于秘密共享的方式被拆分成第五隐私分片和第六隐私分片,所述第三隐私分片和所述第五隐私分片分布于所述第一方,所述第四隐私分片和所述第六隐私分片分布于所述第二方;所述第一隐私分片通过所述第三隐私分片减去所述第五隐私分片得到,所述第二隐私分片通过所述第四隐私分片减去所述第六隐私分片得到;
所述确定单元32,还用于将所述最终结果确定为所述第二隐私数据是否小于所述第三隐私数据的结果。
通过本说明书实施例提供的装置,隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;第一方的多方计算单元31首先根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;再由确定单元32根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。由上可见,本说明书实施例,通过安全提取一个位,从而确定第一隐私数据与0进行安全比较运算的最终结果,这种运算方式比较简单,能够在针对隐私数据进行安全运算时提升性能。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (18)
1.一种针对隐私数据进行安全运算的方法,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述方法通过所述第一方执行,包括:
根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;
根据所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。
2.如权利要求1所述的方法,其中,所述第一隐私数据的取值范围包括最小值和最大值,所述最小值为第一数值的加法逆元,所述最大值为第二数值,所述第一数值和所述第二数值均大于0,所述第一数值小于或等于2的k-1次幂,所述第二数值小于或等于2的k-1次幂减去1,所述第一数值和所述第二数值之和小于n。
3.如权利要求2所述的方法,其中,所述第一数值小于或等于n减去2的k-1次幂,所述第二数值小于n减去2的k-1次幂。
4.如权利要求1所述的方法,其中,所述安全多方计算,包括:
根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片与所述第一中间值的第二求和结果,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
5.如权利要求1所述的方法,其中,所述安全多方计算,包括:
根据本方的所述第一隐私分片与所述第一中间值的第三求和结果,与所述第二方的所述第二隐私分片,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
6.如权利要求1所述的方法,其中,所述最终结果为所述第一隐私数据是否小于0的逻辑值,所述最终结果等于所述第k位的取值。
7.如权利要求1所述的方法,其中,所述最终结果为所述第一隐私数据是否大于或等于0的逻辑值,所述最终结果等于所述第k位取反的取值。
8.如权利要求1所述的方法,其中,所述隐私数据还包括第二隐私数据和第三隐私数据,其中所述第二隐私数据基于秘密共享的方式被拆分成第三隐私分片和第四隐私分片,所述第三隐私数据基于秘密共享的方式被拆分成第五隐私分片和第六隐私分片,所述第三隐私分片和所述第五隐私分片分布于所述第一方,所述第四隐私分片和所述第六隐私分片分布于所述第二方;所述第一隐私分片通过所述第三隐私分片减去所述第五隐私分片得到,所述第二隐私分片通过所述第四隐私分片减去所述第六隐私分片得到;
所述方法还包括,将所述最终结果确定为所述第二隐私数据是否小于所述第三隐私数据的结果。
9.一种针对隐私数据进行安全运算的装置,所述隐私数据包括第一隐私数据,所述第一隐私数据基于秘密共享的方式被拆分成第一隐私分片和第二隐私分片,所述第一隐私分片分布于第一方,所述第二隐私分片分布于第二方,所述第一隐私分片和所述第二隐私分片均属于模n空间,n为k位的整数;所述装置设置于所述第一方,包括:
多方计算单元,用于根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片,通过安全多方计算,得到所述第一隐私分片、所述第二隐私分片与第一中间值的第一求和结果的第k位的取值,其中,所述第一中间值为2的k次幂减去n;
确定单元,用于根据所述多方计算单元得到的所述第k位的取值,确定所述第一隐私数据与0进行安全比较运算的最终结果。
10.如权利要求9所述的装置,其中,所述第一隐私数据的取值范围包括最小值和最大值,所述最小值为第一数值的加法逆元,所述最大值为第二数值,所述第一数值和所述第二数值均大于0,所述第一数值小于或等于2的k-1次幂,所述第二数值小于或等于2的k-1次幂减去1,所述第一数值和所述第二数值之和小于n。
11.如权利要求10所述的装置,其中,所述第一数值小于或等于n减去2的k-1次幂,所述第二数值小于n减去2的k-1次幂。
12.如权利要求9所述的装置,其中,所述多方计算单元,具体用于根据本方的所述第一隐私分片,与所述第二方的所述第二隐私分片与所述第一中间值的第二求和结果,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
13.如权利要求9所述的装置,其中,所述多方计算单元,具体用于根据本方的所述第一隐私分片与所述第一中间值的第三求和结果,与所述第二方的所述第二隐私分片,通过安全求和,得到所述第一隐私分片、所述第二隐私分片与所述第一中间值的第一求和结果,并安全提取所述第一求和结果的第k位的取值。
14.如权利要求9所述的装置,其中,所述最终结果为所述第一隐私数据是否小于0的逻辑值,所述最终结果等于所述第k位的取值。
15.如权利要求9所述的装置,其中,所述最终结果为所述第一隐私数据是否大于或等于0的逻辑值,所述最终结果等于所述第k位取反的取值。
16.如权利要求9所述的装置,其中,所述隐私数据还包括第二隐私数据和第三隐私数据,其中所述第二隐私数据基于秘密共享的方式被拆分成第三隐私分片和第四隐私分片,所述第三隐私数据基于秘密共享的方式被拆分成第五隐私分片和第六隐私分片,所述第三隐私分片和所述第五隐私分片分布于所述第一方,所述第四隐私分片和所述第六隐私分片分布于所述第二方;所述第一隐私分片通过所述第三隐私分片减去所述第五隐私分片得到,所述第二隐私分片通过所述第四隐私分片减去所述第六隐私分片得到;
所述确定单元,还用于将所述最终结果确定为所述第二隐私数据是否小于所述第三隐私数据的结果。
17.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-8中任一项的所述的方法。
18.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-8中任一项的所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010759908.6A CN111737767B (zh) | 2020-07-31 | 2020-07-31 | 针对隐私数据进行安全运算的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010759908.6A CN111737767B (zh) | 2020-07-31 | 2020-07-31 | 针对隐私数据进行安全运算的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111737767A true CN111737767A (zh) | 2020-10-02 |
CN111737767B CN111737767B (zh) | 2020-11-17 |
Family
ID=72656901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010759908.6A Active CN111737767B (zh) | 2020-07-31 | 2020-07-31 | 针对隐私数据进行安全运算的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111737767B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395642A (zh) * | 2020-11-20 | 2021-02-23 | 湖南智慧政务区块链科技有限公司 | 一种安全多方隐私计算方法、装置、设备及存储介质 |
CN113836595A (zh) * | 2021-09-26 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 两方安全比较的方法、装置和系统 |
CN114513304A (zh) * | 2022-04-19 | 2022-05-17 | 浙商银行股份有限公司 | 去中心化安全多方隐私求和计算方法及系统 |
WO2024001023A1 (zh) * | 2022-06-30 | 2024-01-04 | 蚂蚁区块链科技(上海)有限公司 | 隐私数据的安全处理方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110635912A (zh) * | 2019-08-20 | 2019-12-31 | 北京思源理想控股集团有限公司 | 数据处理方法及装置 |
CN111026359A (zh) * | 2019-12-17 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 多方联合判定隐私数据的数值范围的方法和装置 |
CN111368338A (zh) * | 2020-05-27 | 2020-07-03 | 支付宝(杭州)信息技术有限公司 | 基于多方隐私保护的数据处理方法及数据处理系统 |
CN111444526A (zh) * | 2020-03-27 | 2020-07-24 | 上海观源信息科技有限公司 | 基于计算机软件实现近似最大值计算的安全多方计算控制方法及相应的系统 |
-
2020
- 2020-07-31 CN CN202010759908.6A patent/CN111737767B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110635912A (zh) * | 2019-08-20 | 2019-12-31 | 北京思源理想控股集团有限公司 | 数据处理方法及装置 |
CN111026359A (zh) * | 2019-12-17 | 2020-04-17 | 支付宝(杭州)信息技术有限公司 | 多方联合判定隐私数据的数值范围的方法和装置 |
CN111444526A (zh) * | 2020-03-27 | 2020-07-24 | 上海观源信息科技有限公司 | 基于计算机软件实现近似最大值计算的安全多方计算控制方法及相应的系统 |
CN111368338A (zh) * | 2020-05-27 | 2020-07-03 | 支付宝(杭州)信息技术有限公司 | 基于多方隐私保护的数据处理方法及数据处理系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395642A (zh) * | 2020-11-20 | 2021-02-23 | 湖南智慧政务区块链科技有限公司 | 一种安全多方隐私计算方法、装置、设备及存储介质 |
CN112395642B (zh) * | 2020-11-20 | 2024-02-13 | 湖南智慧政务区块链科技有限公司 | 一种安全多方隐私计算方法、装置、设备及存储介质 |
CN113836595A (zh) * | 2021-09-26 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 两方安全比较的方法、装置和系统 |
CN113836595B (zh) * | 2021-09-26 | 2023-11-14 | 支付宝(杭州)信息技术有限公司 | 两方安全比较的方法、装置和系统 |
CN114513304A (zh) * | 2022-04-19 | 2022-05-17 | 浙商银行股份有限公司 | 去中心化安全多方隐私求和计算方法及系统 |
WO2024001023A1 (zh) * | 2022-06-30 | 2024-01-04 | 蚂蚁区块链科技(上海)有限公司 | 隐私数据的安全处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111737767B (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111737767B (zh) | 针对隐私数据进行安全运算的方法和装置 | |
CN111539026B (zh) | 针对隐私数据进行安全运算的方法和装置 | |
CN111523145B (zh) | 针对隐私数据进行安全运算的方法和装置 | |
US11062303B2 (en) | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction | |
CN111737757B (zh) | 针对隐私数据进行安全运算的方法和装置 | |
US8638926B2 (en) | Sharing a secret with modular inverses | |
US8472621B2 (en) | Protection of a prime number generation for an RSA algorithm | |
US20070064930A1 (en) | Modular exponentiation with randomized exponent | |
US10911216B2 (en) | Data encryption and decryption | |
JP5648177B2 (ja) | サイドチャネル攻撃に対する素数生成の保護 | |
CN113722734A (zh) | 两方安全选择确定选择结果分片的方法、装置和系统 | |
US9300469B2 (en) | Secure computing system, secure computing method, secure computing apparatus, and program therefor | |
US20180262343A1 (en) | Method for electronic signing of a documen with a predetermined secret key | |
CN112686672A (zh) | 区块链上背书签名压缩方法、电子设备及存储介质 | |
CN116112182A (zh) | 数字签名方法、装置、电子设备及存储介质 | |
US11599681B2 (en) | Bit decomposition secure computation apparatus, bit combining secure computation apparatus, method and program | |
CN113556225A (zh) | 一种基于哈希及密钥交换的高效psi方法 | |
CN113836595B (zh) | 两方安全比较的方法、装置和系统 | |
CN110990896A (zh) | 基于sm2白盒的数字签名装置、方法、存储介质及设备 | |
CN111935163B (zh) | 保护隐私的数据联合处理方法及装置 | |
CN113111396A (zh) | 一种增强存储媒体安全性的方法及系统及装置及介质 | |
Kim et al. | Reliable and lightweight PUF-based key generation using various index voting architecture | |
CN111475690A (zh) | 字符串的匹配方法和装置、数据检测方法、服务器 | |
US10305678B2 (en) | Imbalanced montgomery ladder | |
CN113806818B (zh) | 用于两方安全选择的布尔电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |