CN116821962A - 保护隐私数据的概率截断方法和装置 - Google Patents
保护隐私数据的概率截断方法和装置 Download PDFInfo
- Publication number
- CN116821962A CN116821962A CN202310787672.0A CN202310787672A CN116821962A CN 116821962 A CN116821962 A CN 116821962A CN 202310787672 A CN202310787672 A CN 202310787672A CN 116821962 A CN116821962 A CN 116821962A
- Authority
- CN
- China
- Prior art keywords
- data
- local
- random number
- fragment
- bit
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000012634 fragment Substances 0.000 claims abstract description 142
- 238000004364 calculation method Methods 0.000 claims abstract description 83
- 238000012545 processing Methods 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本说明书实施例提供一种保护隐私数据的概率截断方法和装置,方法包括:多方中的任一方获取随机数的对2的k次幂取模的环上的本方分片;利用第一隐私数据的本方分片和随机数的本方分片,通过与其他方的联合计算,得到第一隐私数据与随机数之和对应的混淆数据;对混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;基于随机数的最高位的本方分片和混淆数据的最高位,通过第一本地计算确定标识位的本方分片;标识位指示第一隐私数据与随机数之和是否大于2的k次幂;基于中间截断数据、随机数的本方分片和标识位的本方分片,通过第二本地计算确定第一隐私数据进行截断位数为t的概率截断数据的本方分片。能够提高计算的效率与精度。
Description
技术领域
本说明书一个或多个实施例涉及计算机领域,尤其涉及保护隐私数据的概率截断方法和装置。
背景技术
当前,不同的数据持有方所持有的数据可能包含用户的隐私信息,数据持有方之间的数据共享可能会侵犯用户的隐私。为了能够打通多方之间的数据流通,利用安全多方计算支持多方之间的联合计算,挖掘出数据的价值,同时确保多方交互时不会泄露出各方隐私数据的明文信息。
安全多方计算能够使得多个互不信任的参与方安全地计算一个给定的函数,并且不会泄露除结果以外的输入、中间计算结果。秘密共享,是将一个秘密分散到不同参与方的方法,每方得到秘密的一部分,称为分片。只有当持有足够多的分片时,才能还原出秘密;单个分片无法还原出秘密。秘密共享由于其对于算术计算以及线性代数运算具有较高的效率,被广泛用于各个场景的安全计算,例如,机器学习模型的安全训练与安全预测。
现有技术中,基于秘密共享的安全计算虽然提供严格的安全保障,但是需要大量的通信开销,导致联合计算的效率较低。概率截断:是将输入数据右移指定比特的计算,其中得到的输出结果以概率进行四舍五入。其中,基于秘密共享的安全计算在实现概率截断时,常常无法兼顾效率与精度。
发明内容
本说明书一个或多个实施例描述了一种保护隐私数据的概率截断方法和装置,能够提高计算的效率与精度。
第一方面,提供了一种保护隐私数据的概率截断方法,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,该方法由所述多方中的任一方执行,包括:
获取随机数的对2的k次幂取模的环上的本方分片;
利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;
对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;
基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;
基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
在一种可能的实施方式中,所述获取随机数的对2的k次幂取模的环上的本方分片,包括:
获取通过离线预计算生成的k个随机比特的本方分片;
将k个随机比特作为所述随机数的各个位,通过组合k个随机比特的本方分片得到所述随机数的对2的k次幂取模的环上的本方分片。
在一种可能的实施方式中,所述联合计算,包括:
利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过本地求和计算,得到所述混淆数据的本方分片;
通过与其他方交互所述混淆数据的本方分片,确定所述混淆数据。
在一种可能的实施方式中,所述本地截断处理,包括:
将所述混淆数据除以2的t次幂,得到除法运算结果;
对所述除法运算结果进行向下取整,得到所述中间截断数据。
在一种可能的实施方式中,所述第一本地计算,包括:
对所述随机数的最高位的本方分片和所述混淆数据的最高位的取反结果,进行本地乘法运算,得到所述标识位的本方分片;其中,所述标识位为1用于指示所述第一隐私数据与所述随机数之和大于2的k次幂。
在一种可能的实施方式中,所述第二本地计算,包括:
基于所述随机数的本方分片,确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片;
基于所述标识位的本方分片,确定所述标识位与2的k-t次幂的乘积的本方分片;
将所述中间截断数据减去所述随机截断结果的本方分片,再加上所述乘积的本方分片,得到所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
进一步地,所述随机数的本方分片通过组合k个随机比特的本方分片得到;
所述确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片,包括:
从所述k个随机比特的本方分片中选取对应于所述随机数的高位的k-t位的随机比特的本方分片;
通过组合该k-t位的随机比特的本方分片,得到所述随机截断结果的本方分片。
在一种可能的实施方式中,所述第一隐私数据的本方分片为第二隐私数据的本方分片通过本地偏置处理得到的;所述本地偏置处理用于对所述第二隐私数据增加偏置数据,使得所述第一隐私数据为正数;
所述方法还包括:
对所述概率截断数据的本方分片,通过本地减法处理消除所述偏置数据的影响,得到所述第二隐私数据进行截断位数为t的概率截断结果的本方分片。
进一步地,所述偏置数据为2的l-1次幂;所述概率截断结果为所述概率截断数据减去2的l-t-1次幂。
第二方面,提供了一种保护隐私数据的概率截断装置,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,该装置设置于所述多方中的任一方,包括:
获取单元,用于获取随机数的对2的k次幂取模的环上的本方分片;
联合计算单元,用于利用所述第一隐私数据的本方分片和所述获取单元获取的随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;
本地截断单元,用于对所述联合计算单元得到的混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;
第一本地计算单元,用于基于所述获取单元获取的随机数的最高位的本方分片和所述联合计算单元得到的混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;
第二本地计算单元,用于基于所述本地截断单元得到的中间截断数据、所述获取单元获取的随机数的本方分片和所述第一本地计算单元得到的标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的方法和装置,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,首先由所述多方中的任一方获取随机数的对2的k次幂取模的环上的本方分片;然后利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;接着对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;再基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;最后基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。由上可见,本说明书实施例,涉及本地计算和联合计算,联合计算仅需要一轮通信,可避免最高位误差,得到正确的输出,相较于通常的方案,更好地实现了计算效率和精度之间的平衡,能够提高计算的效率与精度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的保护隐私数据的概率截断方法流程图;
图3示出根据一个实施例的保护隐私数据的概率截断装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及保护隐私数据的概率截断。可以理解的是,概率截断:是将输入数据右移指定比特的计算,其中得到的输出结果以概率进行四舍五入。举例来说,输入数据为1.2,对其进行概率截断的输出结果可能以0.2的概率取整到1,可能以0.8的概率取整到2。保护隐私数据的概率截断,即输入一个秘密共享形式的输入数据,在不泄露该输入数据的前提下得到对该输入数据进行概率截断的输出结果的密文。本说明书实施例,前述输入数据和输出结果均属于隐私数据。输入数据以秘密共享的形式分布于多方,可以理解的是,多方可以为两方、三方或者四方等,图中仅示出三方作为示例。如图1所示,保护隐私数据的概率截断的场景涉及参与方A、参与方B、参与方C,或称为第一方、第二方、第三方,或称为A方、B方、C方。各个参与方可以实现为任何具有计算、处理能力的设备、平台、服务器或设备集群。各方要在保护数据隐私的情况下,联合实现概率截断,得到输出结果的密文。
实际的应用场景,如机器学习通常基于浮点数运算,然而使用秘密共享实现安全浮点数运算会导致较高的开销,效率难以满足实际的计算需求,因此通常的做法是使用定点数来近似浮点数,在一定精度损失的前提下,取得较大的效率优化。秘密共享协议通常定义在环或者域上,各有优劣。环上的计算由于其取模操作能够隐式地由硬件负责,相较于域上计算需要手动取模,计算效率更高。
本说明书实施例中,定点数可以被映射到环中进行运算。映射构造过程如下:假设为一个有理数,需要将/>映射到整数域,令/>其中f为精度位数,即小数部分的位数,Int(·)为四舍五入取整。接着对x进行模运算,使得/>其中k表示x的比特位数,将输入映射到/>的环上。
本说明书实施例中,定点数的算术分享在的环上。以三方联合实现安全概率截断为例。三个计算方分别为P0、P1、P2,秘密输入x拆分为三个分片(x0,x1,x2),满足Pi持有(xi,xi+1),以及x=(x0+x1+x2)mod 2k。使用/>或/>表示x的算术分享。
需要说明的是,多方可以是任意的多个计算方。数据持有方可以作为计算方,数据持有方和计算方是可以有交集的,也可以完全没有交集,多方在安全概率截断过程中的地位是对等的,因此本说明书实施例的后续处理流程的介绍中,仅以多方中的任意一方的处理流程进行说明。
此外,输入数据和输出结果均以秘密共享的形式分布在多方,也就是说,输入数据和输出结果都是密文的形式,也就是分片的形式。参照图1,输入数据为x,截断位数为t,期望得到的输出结果为也就是说,将x除以2的t次幂,再进行四舍五入取整的结果。B方为多方中的任意一方,其具有上述输入数据的分片/>通过与A方和C方联合进行的安全多方计算,B方能够获得输出结果的分片/>使得/>从而实现保护隐私数据的概率截断。可以理解的是,在安全概率截断过程中,也可以存在一些明文数据为各方所知晓,例如,截断位数t可以是明文的。
下面对本说明书实施例中使用到的常规计算原语进行简单说明,包括:
加法运算和常数乘法运算,可以直接根据原始的加法秘密共享协议完成。每一个参与方只需要在本地进行计算即可;
随机比特生成,使用RandomBit协议得到随机比特b∈{0,1}在环上的分片。
本说明书实施例,针对在保护隐私数据的概率截断中提高计算的效率与精度,提出相应的解决方案。
图2示出根据一个实施例的保护隐私数据的概率截断方法流程图,该方法可以基于图1所示的实施场景,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,所述方法由所述多方中的任一方执行。如图2所示,该实施例中保护隐私数据的概率截断方法包括以下步骤:步骤21,获取随机数的对2的k次幂取模的环上的本方分片;步骤22,利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;步骤23,对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;步骤24,基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;步骤25,基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。下面描述以上各个步骤的具体执行方式。
首先在步骤21,获取随机数的对2的k次幂取模的环上的本方分片。可以理解的是,上述随机数可以通过多方联合进行的离线预计算得到,各方获得该随机数的算术分享的分片。
在一个示例中,所述获取随机数的对2的k次幂取模的环上的本方分片,包括:
获取通过离线预计算生成的k个随机比特的本方分片;
将k个随机比特作为所述随机数的各个位,通过组合k个随机比特的本方分片得到所述随机数的对2的k次幂取模的环上的本方分片。
举例来说,使用RandomBit协议得到k个随机比特的算术分享,即满足ri∈{0,1},i∈[0,k-1],并且有/>其中,k个随机比特的算术分享在对2的k次幂取模的环上,因此也可以表示为/>
然后在步骤22,利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据。可以理解的是,由于各方只具有随机数的分片,而不知晓随机数,因此即便获知混淆数据,也不会泄露第一隐私数据。
在一个示例中,所述联合计算,包括:
利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过本地求和计算,得到所述混淆数据的本方分片;
通过与其他方交互所述混淆数据的本方分片,确定所述混淆数据。
举例来说,第一隐私数据表示为x′,第一隐私数据的分片表示为随机数表示为r,随机数的分片表示为/>各方先执行本地加法计算得到混淆数据的分片 接着将/>还原得到明文的混淆数据z。
接着在步骤23,对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据。可以理解的是,各方具有混淆数据的明文,可以进行上述本地截断处理。
在一个示例中,所述本地截断处理,包括:
将所述混淆数据除以2的t次幂,得到除法运算结果;
对所述除法运算结果进行向下取整,得到所述中间截断数据。
举例来说,各方各自在本地对明文的混淆数据z进行截断操作,得到中间截断数据
再在步骤24,基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂。可以理解的是,当所述第一隐私数据与所述随机数之和大于2的k次幂时,概率截断的输出结果容易产生最高位误差。
在一个示例中,所述第一本地计算,包括:
对所述随机数的最高位的本方分片和所述混淆数据的最高位的取反结果,进行本地乘法运算,得到所述标识位的本方分片;其中,所述标识位为1用于指示所述第一隐私数据与所述随机数之和大于2的k次幂。
举例来说,各方先各自在本地计算混淆数据z的最高位,即也就是说,将z除以2的k-1次幂,再向下取整,得到混淆数据z的最高位;接着获取随机数r的最高位rk-1的本方分片/>再确定随机数r的最高位的本方分片与混淆数据z的最高位的取反结果的乘积,得到标识位w的本方分片/>
最后在步骤25,基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。可以理解的是,在所述中间截断数据中消除随机数的影响,并且消除标识位对应的最高位误差,从而得到前述概率截断数据。
在一个示例中,所述第二本地计算,包括:
基于所述随机数的本方分片,确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片;
基于所述标识位的本方分片,确定所述标识位与2的k-t次幂的乘积的本方分片;
将所述中间截断数据减去所述随机截断结果的本方分片,再加上所述乘积的本方分片,得到所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
进一步地,所述随机数的本方分片通过组合k个随机比特的本方分片得到;
所述确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片,包括:
从所述k个随机比特的本方分片中选取对应于所述随机数的高位的k-t位的随机比特的本方分片;
通过组合该k-t位的随机比特的本方分片,得到所述随机截断结果的本方分片。
举例来说,随机数的各个位对应于k个随机比特,各方持有k个随机比特的算术分享,即满足ri∈{0,1},i∈[0,k-1],并且有/>其中,随机截断结果的本方分片表示为/>
标识位的本方分片表示为乘积的本方分片表示为/>
中间截断数据表示为z′,概率截断数据y′的本方分片表示为
本说明书实施例,第一隐私数据为大于或等于0的数,如果想要确定第二隐私数据进行截断位数为t的概率截断结果的本方分片,并且第二隐私数据的取值可能小于0,则可以先将第二隐私数据经过一定的转换处理转换为第一隐私数据,然后在得到所述第一隐私数据进行截断位数为t的概率截断数据的本方分片后,再经过相应的转换处理,得到第二隐私数据进行截断位数为t的概率截断结果的本方分片。
在一个示例中,所述第一隐私数据的本方分片为第二隐私数据的本方分片通过本地偏置处理得到的;所述本地偏置处理用于对所述第二隐私数据增加偏置数据,使得所述第一隐私数据为正数;
所述方法还包括:
对所述概率截断数据的本方分片,通过本地减法处理消除所述偏置数据的影响,得到所述第二隐私数据进行截断位数为t的概率截断结果的本方分片。
进一步地,所述偏置数据为2的l-1次幂;所述概率截断结果为所述概率截断数据减去2的l-t-1次幂。
举例来说,第二隐私数据x∈[-2l-1,2l-1],偏置数据为2l-1,第一隐私数据x′∈[0,2l]。概率截断数据为y′,概率截断结果为y′-2l-t-1。
例如,所述多方具体为三个参与方,三个参与方可以用Pi来表示,i的取值为0、1、2,P0代表第一方,P1代表第二方,P2代表第三方。对第二隐私数据x的假设为x∈[-2l-1,2l-1]。首先在步骤22之前,P0和P2本地对第二隐私数据x加上偏置项2l-1,得到第一隐私数据的算术分享最终在步骤25之后,P0和P2本地对概率截断数据y′加上截断后的偏置项,得到期望的输出/>
通过本说明书实施例提供的方法,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,首先由所述多方中的任一方获取随机数的对2的k次幂取模的环上的本方分片;然后利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;接着对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;再基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;最后基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。由上可见,本说明书实施例,涉及本地计算和联合计算,联合计算仅需要一轮通信,可避免最高位误差,得到正确的输出,相较于通常的方案,更好地实现了计算效率和精度之间的平衡,能够提高计算的效率与精度。
此外,本说明书实施例提供的方案可以应用于机器学习模型的安全训练与安全预测,使用现有基于秘密共享协议的计算原语实现安全概率截断,进一步提高基于安全多方计算的密态计算的效率,缩小和明文训练的性能差距。
根据另一方面的实施例,还提供一种保护隐私数据的概率截断装置,该装置用于执行本说明书图2所示实施例提供的方法,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,所述装置设置于所述多方中的任一方。图3示出根据一个实施例的保护隐私数据的概率截断装置的示意性框图。如图3所示,该装置300包括:
获取单元31,用于获取随机数的对2的k次幂取模的环上的本方分片;
联合计算单元32,用于利用所述第一隐私数据的本方分片和所述获取单元31获取的随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;
本地截断单元33,用于对所述联合计算单元32得到的混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;
第一本地计算单元34,用于基于所述获取单元31获取的随机数的最高位的本方分片和所述联合计算单元32得到的混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;
第二本地计算单元35,用于基于所述本地截断单元33得到的中间截断数据、所述获取单元31获取的随机数的本方分片和所述第一本地计算单元34得到的标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
可选地,作为一个实施例,所述获取单元31包括:
获取子单元,用于获取通过离线预计算生成的k个随机比特的本方分片;
组合子单元,用于将k个随机比特作为所述随机数的各个位,通过组合所述获取子单元获取的k个随机比特的本方分片得到所述随机数的对2的k次幂取模的环上的本方分片。
可选地,作为一个实施例,所述联合计算单元32包括:
求和子单元,用于利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过本地求和计算,得到所述混淆数据的本方分片;
交互子单元,用于通过与其他方交互所述求和子单元得到的混淆数据的本方分片,确定所述混淆数据。
可选地,作为一个实施例,所述本地截断单元33包括:
除法子单元,用于将所述混淆数据除以2的t次幂,得到除法运算结果;
取整子单元,用于对所述除法子单元得到的除法运算结果进行向下取整,得到所述中间截断数据。
可选地,作为一个实施例,所述第一本地计算单元34,具体用于对所述随机数的最高位的本方分片和所述混淆数据的最高位的取反结果,进行本地乘法运算,得到所述标识位的本方分片;其中,所述标识位为1用于指示所述第一隐私数据与所述随机数之和大于2的k次幂。
可选地,作为一个实施例,所述第二本地计算单元35包括:
第一确定子单元,用于基于所述随机数的本方分片,确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片;
第二确定子单元,用于基于所述标识位的本方分片,确定所述标识位与2的k-t次幂的乘积的本方分片;
截断子单元,用于将所述中间截断数据减去所述第一确定子单元确定的随机截断结果的本方分片,再加上所述第二确定子单元确定的乘积的本方分片,得到所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
进一步地,所述随机数的本方分片通过组合k个随机比特的本方分片得到;
所述第一确定子单元,具体用于:
从所述k个随机比特的本方分片中选取对应于所述随机数的高位的k-t位的随机比特的本方分片;
通过组合该k-t位的随机比特的本方分片,得到所述随机截断结果的本方分片。
可选地,作为一个实施例,所述第一隐私数据的本方分片为第二隐私数据的本方分片通过本地偏置处理得到的;所述本地偏置处理用于对所述第二隐私数据增加偏置数据,使得所述第一隐私数据为正数;
所述装置还包括:
偏置消除单元,用于对所述概率截断数据的本方分片,通过本地减法处理消除所述偏置数据的影响,得到所述第二隐私数据进行截断位数为t的概率截断结果的本方分片。
进一步地,所述偏置数据为2的l-1次幂;所述概率截断结果为所述概率截断数据减去2的l-t-1次幂。
通过本说明书实施例提供的装置,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,首先由所述多方中的任一方的获取单元31获取随机数的对2的k次幂取模的环上的本方分片;然后由联合计算单元32利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;接着由本地截断单元33对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;再由第一本地计算单元34基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;最后由第二本地计算单元35基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。由上可见,本说明书实施例,涉及本地计算和联合计算,联合计算仅需要一轮通信,可避免最高位误差,得到正确的输出,相较于通常的方案,更好地实现了计算效率和精度之间的平衡,能够提高计算的效率与精度。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (12)
1.一种保护隐私数据的概率截断方法,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,所述方法由所述多方中的任一方执行,包括:
获取随机数的对2的k次幂取模的环上的本方分片;
利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;
对所述混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;
基于所述随机数的最高位的本方分片和所述混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;
基于所述中间截断数据、所述随机数的本方分片和所述标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
2.如权利要求1所述的方法,其中,所述获取随机数的对2的k次幂取模的环上的本方分片,包括:
获取通过离线预计算生成的k个随机比特的本方分片;
将k个随机比特作为所述随机数的各个位,通过组合k个随机比特的本方分片得到所述随机数的对2的k次幂取模的环上的本方分片。
3.如权利要求1所述的方法,其中,所述联合计算,包括:
利用所述第一隐私数据的本方分片和所述随机数的本方分片,通过本地求和计算,得到所述混淆数据的本方分片;
通过与其他方交互所述混淆数据的本方分片,确定所述混淆数据。
4.如权利要求1所述的方法,其中,所述本地截断处理,包括:
将所述混淆数据除以2的t次幂,得到除法运算结果;
对所述除法运算结果进行向下取整,得到所述中间截断数据。
5.如权利要求1所述的方法,其中,所述第一本地计算,包括:
对所述随机数的最高位的本方分片和所述混淆数据的最高位的取反结果,进行本地乘法运算,得到所述标识位的本方分片;其中,所述标识位为1用于指示所述第一隐私数据与所述随机数之和大于2的k次幂。
6.如权利要求1所述的方法,其中,所述第二本地计算,包括:
基于所述随机数的本方分片,确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片;
基于所述标识位的本方分片,确定所述标识位与2的k-t次幂的乘积的本方分片;
将所述中间截断数据减去所述随机截断结果的本方分片,再加上所述乘积的本方分片,得到所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
7.如权利要求6所述的方法,其中,所述随机数的本方分片通过组合k个随机比特的本方分片得到;
所述确定所述随机数进行截断位数为t的本地截断处理后得到的随机截断结果的本方分片,包括:
从所述k个随机比特的本方分片中选取对应于所述随机数的高位的k-t位的随机比特的本方分片;
通过组合该k-t位的随机比特的本方分片,得到所述随机截断结果的本方分片。
8.如权利要求1所述的方法,其中,所述第一隐私数据的本方分片为第二隐私数据的本方分片通过本地偏置处理得到的;所述本地偏置处理用于对所述第二隐私数据增加偏置数据,使得所述第一隐私数据为正数;
所述方法还包括:
对所述概率截断数据的本方分片,通过本地减法处理消除所述偏置数据的影响,得到所述第二隐私数据进行截断位数为t的概率截断结果的本方分片。
9.如权利要求8所述的方法,其中,所述偏置数据为2的l-1次幂;所述概率截断结果为所述概率截断数据减去2的l-t-1次幂。
10.一种保护隐私数据的概率截断装置,第一隐私数据以秘密共享的形式分布于多方,其分片属于对2的k次幂取模的环,所述装置设置于所述多方中的任一方,包括:
获取单元,用于获取随机数的对2的k次幂取模的环上的本方分片;
联合计算单元,用于利用所述第一隐私数据的本方分片和所述获取单元获取的随机数的本方分片,通过与其他方的联合计算,得到所述第一隐私数据与所述随机数之和对应的混淆数据;
本地截断单元,用于对所述联合计算单元得到的混淆数据进行截断位数为t的本地截断处理,得到中间截断数据;
第一本地计算单元,用于基于所述获取单元获取的随机数的最高位的本方分片和所述联合计算单元得到的混淆数据的最高位,通过第一本地计算确定标识位的本方分片;其中,所述标识位用于指示所述第一隐私数据与所述随机数之和是否大于2的k次幂;
第二本地计算单元,用于基于所述本地截断单元得到的中间截断数据、所述获取单元获取的随机数的本方分片和所述第一本地计算单元得到的标识位的本方分片,通过第二本地计算确定所述第一隐私数据进行截断位数为t的概率截断数据的本方分片。
11.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项的所述的方法。
12.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项的所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310787672.0A CN116821962A (zh) | 2023-06-29 | 2023-06-29 | 保护隐私数据的概率截断方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310787672.0A CN116821962A (zh) | 2023-06-29 | 2023-06-29 | 保护隐私数据的概率截断方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116821962A true CN116821962A (zh) | 2023-09-29 |
Family
ID=88116372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310787672.0A Pending CN116821962A (zh) | 2023-06-29 | 2023-06-29 | 保护隐私数据的概率截断方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116821962A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118504038A (zh) * | 2024-07-17 | 2024-08-16 | 蚂蚁科技集团股份有限公司 | 保护隐私的广义线性模型的假设检验方法和装置 |
-
2023
- 2023-06-29 CN CN202310787672.0A patent/CN116821962A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118504038A (zh) * | 2024-07-17 | 2024-08-16 | 蚂蚁科技集团股份有限公司 | 保护隐私的广义线性模型的假设检验方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Efficient and privacy-preserving outsourced calculation of rational numbers | |
CN112906044B (zh) | 多方安全计算方法、装置、设备及存储介质 | |
US20170180115A1 (en) | Homomorphic Encryption with Optimized Homomorphic Operations | |
US20140233727A1 (en) | Method for secure substring search | |
WO2019005891A1 (en) | HIGH RATE NUMBER OF ARITHMETIC ACCURACY IN THE HOMOMORPHIC ENCRYPTION | |
CN111523145A (zh) | 针对隐私数据进行安全运算的方法和装置 | |
CN107004084B (zh) | 用于加密操作的乘法掩码 | |
WO2023240934A1 (zh) | 针对隐私向量的安全处理方法和装置 | |
CN116821961A (zh) | 保护隐私数据的布尔算术分享转换方法和装置 | |
CN112560107B (zh) | 针对隐私数据进行处理的方法和装置 | |
US11902432B2 (en) | System and method to optimize generation of coprime numbers in cryptographic applications | |
CN116821962A (zh) | 保护隐私数据的概率截断方法和装置 | |
Jalali et al. | ARMv8 SIKE: Optimized supersingular isogeny key encapsulation on ARMv8 processors | |
CN111143862A (zh) | 数据处理方法、查询方法、装置、电子设备和系统 | |
CN112953700A (zh) | 一种提升安全多方计算效率的方法、系统及存储介质 | |
CN111712816B (zh) | 使用密码蒙蔽以用于高效地使用蒙哥马利乘法 | |
Chen et al. | Integer arithmetic over ciphertext and homomorphic data aggregation | |
CN107852324B (zh) | 用于加密消息的方法和加密节点 | |
JP2006259735A (ja) | Simd処理を用いた楕円曲線点8倍化 | |
US9590805B1 (en) | Ladder-based cryptographic techniques using pre-computed points | |
CN111046431B (zh) | 数据处理方法、查询方法、装置、电子设备和系统 | |
US11985221B2 (en) | Efficient masking of secure data in ladder-type cryptographic computations | |
WO2023050813A1 (zh) | 数据处理和密钥保护方法、装置、设备、存储介质和程序 | |
CN116094708A (zh) | Dbscan算法的隐私保护方法、终端及存储介质 | |
CN111614465B (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 |