CN116301710A - 数据处理方法及装置 - Google Patents
数据处理方法及装置 Download PDFInfo
- Publication number
- CN116301710A CN116301710A CN202310162621.9A CN202310162621A CN116301710A CN 116301710 A CN116301710 A CN 116301710A CN 202310162621 A CN202310162621 A CN 202310162621A CN 116301710 A CN116301710 A CN 116301710A
- Authority
- CN
- China
- Prior art keywords
- bits
- bit string
- bit
- target
- data
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000004364 calculation method Methods 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000000926 separation method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/727—Modulo N arithmetic, with N being either (2**n)-1,2**n or (2**n)+1, e.g. mod 3, mod 4 or mod 5
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本说明书实施例提供一种数据处理方法及装置,一种保护数据隐私的多方计算溢出位的方法及装置。其中数据处理方法包括:先获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;再对所述待处理比特串进行n‑1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;接着,基于所述n‑1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。如此,可以大幅提升计算效率。
Description
技术领域
本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种数据处理方法及装置,以及一种保护数据隐私的多方计算溢出位的方法及装置。
背景技术
二进制编码是用预先规定的方法将文字、数字或其他对象编成二进制的数码,或将信息、数据转换成规定的二进制电脉冲信号。计算机只认识二进制数,所有需要计算机处理的信息都要用二进制数来表示。
二进制最基本的单位是比特(bit),通常可以将一连串的比特称为比特串,如1010010。计算机在处理比特串时,会用到许多基础算子,如加法算子,减法算子,或奇偶比特分离算子等。奇偶比特分离是将原比特串中的奇数位和偶数位进行分离放置,将奇数位放置于高位,将偶数位放置于低位,例如,假设奇偶比特分离算子的输入是[aXbYcZdW],则输出可以是[abcdXYZW]或[XYZWabcd]。
然而,目前奇偶比特分离算子的实现方式难以满足实际中更高的应用需求。因此,需要一种实现方案,可以更加高效地实现奇偶比特分离。
发明内容
本说明书实施例描述一种数据处理方法及装置,以及一种保护数据隐私的多方计算溢出位的方法及装置。采用这些方法或装置,可以在保证计算结果正确的前提下,大幅降低计算量。
根据第一方面,提供一种数据处理方法,包括:获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
在一个实施例中,获取2n位的待处理比特串,包括:将目标数据进行二进制转化,得到2n位的待处理比特串。
在一个具体的实施例中,基于所述n-1次比特交换处理后的比特串确定目标比特串,包括:将所述n-1次比特交换处理后的比特串作为所述目标比特串。
在一个实施例中,获取2n位的待处理比特串,包括:对所述目标数据进行二进制编码,得到k位的原始比特串,其中k不能被记作2的整数次幂;采用预定填充方式,将所述原始比特串填充到2n位,得到所述待处理比特串。
在一个具体的实施例中,还包括:确定大于所述k且与k之间的差值为最小的数值2n。
在另一个具体的实施例中,基于所述n-1次比特交换处理后的比特串确定目标比特串,包括:采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,使得所述目标比特串的前位和后/>位分别对应于原始比特串的奇数位和偶数位。
在一个更具体的实施例中,采用预定填充方式,将所述原始比特串填充到2n位,包括:在所述原始比特串的高位填充差值个数的比特,其中差值为2n与k之间的差值。其中,采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,包括:从所述比特串的左半部分和右半部分分别去除高位的第一个数比特和第二个数比特,其中第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
在另一个更具体的实施例中,采用预定填充方式,将所述原始比特串填充到2n位,包括:在所述原始比特串的低位填充差值个数的比特,其中差值为2n与k之间的差值;其中,采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,包括:从所述比特串的左半部分和右半部分分别去除低位的第一个数的比特和第二个数的比特,所述第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
根据第二方面,提供一种保护数据隐私的多方计算溢出位的方法,应用于多方中任意的一方,包括:将本方持有的隐私数据作为目标数据,执行上述第一方面提供的数据处理,得到对应的目标比特串;基于所述目标比特串,与所述多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
根据第三方面,提供一种数据处理装置,包括:待处理比特串获取单元,配着获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;交换处理单元,配置为对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;目标比特串确定单元,配置为基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
根据第四方面,提供一种保护数据隐私的多方计算溢出位的装置,所述装置集成于多方中任意的一方,所述装置包括:目标比特串确定单元,配置为将本方持有的隐私数据作为目标数据,利用第三方面中的装置单元进行数据处理,得到对应的目标比特串;溢出位计算单元,配置为基于所述目标比特串,与所述多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
根据第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
根据第六方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,该处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
采用本说明书实施例提供的方法和装置,在实现准确奇偶比特分离的同时,可以将对k位长比特串的计算次数从O(k)降低到O(log(k)),从而有效提高处理效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的实施奇偶比特分离的数据变化示例图;
图2示出根据一个实施例的数据处理方法流程示意图;
图3示出根据一个实施例的保护数据隐私的多方计算溢出位的方法流程示意图;
图4示出根据一个实施例的数据处理装置结构示意图;
图5示出根据一个实施例的保护数据隐私的多方计算溢出位的装置结构示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
首先需要说明,文中将任意的数据a转换为二进制后的比特(或称比特位)个数记作k,并将k个比特分别记作a[0],…,a[k-1],符号[]中的数字用于标识对应比特在比特串中的位置,例如,对于比特串1101,其中第0至1个比特位依次是1、0、1和1。可以理解,其中第0个和第2个比特位是偶数位,第1和3个比特位是奇数位。
在奇偶比特分离的传统方式中,需要逐个判断比特的奇偶数位,再用以构造分离结果。以下示例相关代码:
let b=0
for i=0to k-1:
let a_i=(a>>i)&1#获取a[i]
if i%2==0:
b^=a_i<<(i/2)#将a[i]作为b[i/2]
else:
b^=a_i<<((i+k)/2)#将a[i]作为b[(i+k)/2]
观察上示代码可知,传统方式的复杂度是O(k),在k比较大的时候,速度尤其慢。
基于以上观察和分析,发明人提出一种新的奇偶比特分离方案,在保证计算结果准确的前提下,可以将计算次数从O(k)降低到O(log(k)-1),例如,当k为128时,传统方式需要128次计算,新方案仅需要6次计算。
图1示出根据一个实施例的实施奇偶比特分离的数据变化示例图,如图1所示,对于16位比特串,仅需进行3次的分段交换计算,即可完成奇偶比特分离。
下面结合更多的附图和实施例,描述新方案的具体实施步骤。图2示出根据一个实施例的数据处理方法流程示意图,所述方法的执行主体可以为任何具有计算、处理能力的装置、平台、服务器或设备集群等。如图2所示,所述方法包括以下步骤:
步骤S210,获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;步骤S220,对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;步骤S230,基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
对以上步骤的展开介绍如下:
首先,在步骤S210,获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定。需理解,目标数据可以为任意一条数据a。
本步骤中,可以先对目标数据a进行二进制编码,得到包含k个比特的原始比特串。
进一步,在判断出原始比特串能够被记作2的整数次幂时,可以直接将原始比特串作为上述待处理比特串。
在判断出原始比特串不能被记作2的整数次幂时,可以采用预定的填充方式,将原始比特串填充到2n位,从而得到上述待处理比特串。
具体地,可以先确定大于k的数值2n。优选地,2n是大于k且与k之间差值最小的2的整数次幂,可以理解,此时2n-1<k<2n。
再对原始比特串进行填充。在一种优选的填充方式A中,可以在原始比特串的高位填充差值个数的比特,其中差值为2n-k。也即,在原始比特串的左侧进行填充,至于所填充的比特值,因最终是会被去除的,所以取值可以是随机的,或者,也可以为全0或全1。在一个例子中,假定原始比特串为010101,此时,可以在其左侧填充2个0比特,从而得到23位的待处理比特串,即00010101。
在另一种优选的填充方式B中,可以在原始比特串的低位填充差值个数的比特,也即,在原始比特串的右侧进行填充。在一个例子中,假定原始比特串为010101,此时,可以在其右侧填充2个0比特,从而得到23位的待处理比特串,即01010100。
需要理解,填充方式不限于上述方式A和B,例如,还可以在高位和低位都进行填充等。如此,可以通过填充得到待处理比特串。
由上,可以得到2n的待处理比特串。
接着,在步骤S220,对上述待处理比特串进行n-1次比特交换处理。可以理解,在n大于1的情况下,方能执行本步骤。实际上,在多数实际业务场景的数据处理中,n天然的大于1。或者,还可以在步骤S220中约束n>1,例如,对于非典型的两种情况,即目标数据的原始比特串只有1个或2个比特,此时,可以直接将之填充为22个比特。又或者,对于n=1的情况可以不予考虑,或者用上述传统方式处理。
对于任意的第t∈[1,n-1]次比特交换处理,处理过程包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变。
可以理解,当前比特串被初始化为上述待处理比特串;上述分组是将连续的每2t+1个比特归为一组,每个比特位只会被分到一个组别中,而不会同时被分到多个组,由此,每次可以将当前比特串分为2n-t-1组。另外,上述外侧的2t个比特包括左外侧的2t-1个比特和右外侧的2t-1个比特。对于中间的2t个比特,其中高位比特是指中间左半部分的2t-1个比特,低位比特是指中间右半部分的2t-1个比特。
由上,可以实现任意的第t次比特交换处理,每次比特交换处理后,当前比特串都会发生更新,n-1次比特交换处理实际是对当前比特串的n-1次迭代更新。
根据一个例子,参见图1,其中示出24位的待处理比特串,此时,需要对其进行3次比特交换处理。如图1所示,第1次交换,保持连续4个比特中在外侧的两个比特不变,交换中间两个比特;第2次交换,保持连续8个比特中在外侧的4个比特不变,交换中间4个比特也即,高两位右移,两位左移;在第3次交换,保持连续16个比特中外面8个比特不变,交换中间8个比特,也即,高4位右移,低4位左移。
由上,可以得到n-1次交换处理后的比特串。
之后,在步骤S230,基于上述n-1次比特交换处理后的比特串确定目标比特串。
在一个实施例中,上述待处理比特串为原始比特串,此时,可以直接将最后一次比特交换处理后的比特串Sf作为目标比特串。示例地,假设图1中第1次交换处理前的比特串即为原始比特串,此时可以直接将第3次交换处理后得到的比特串作为目标比特串。
在另一个实施例中,上述待处理比特串是对原始比特串进行填充而得到,此时,需要采用预定去除方式,将比特串Sf缩减为k位的目标比特串,使得所述目标比特串的前位和后/>位分别对应于原始比特串的奇数位和偶数位。需说明,其中运算符/>表示向下取整,运算符/>表示向上取整,示例地,假定k=21,此时/>又例如,假定k=20,此时,/>
进一步,在一个具体的实施例中,假定前述步骤S210中采用了填充方式A,即高位填充差值个数比特;相应,本步骤中可以采用去除方式A,从比特串Sf的左半部分去除高位的第一个数的比特,以及从右半部分去除高位的第二个数的比特,其中第一个数为对前述差值的一半进行向上取整而得到的数值,即,第二个数为对前述差值的一半进行向下取整而得到的数值,即,/>示例性地,假定原始比特串为10101,待处理比特串为xxx10101(为直观描述,将用于填充的比特记作x),此时,比特串Sf为xx00x111,由此,可以从xx00中去除高位的/>个比特,从x111中去除高位的/>个比特,从而得到目标比特串00111。
在另一个具体的实施例中,假定前述步骤S210中采用了填充方式B,即低位填充差值个数比特;相应,本步骤中可以采用去除方式B,从比特串Sf的左半部分去除低位的第一个数比特,以及从右半部分去除低位的第二个数比特,其中第一个数为对前述差值的一半进行向上取整而得到的数值,即,第二个数为对前述差值的一半进行向下取整而得到的数值,即,/>
进一步,对于去除填充比特后的比特串,在原始比特数k为偶数的情况下,填充后的各个原始比特的奇数位和偶数位没有发生改变,从而可以直接将去除填充比特后的比特串确定为目标比特串。示例性地,假定原始比特串为010101,待处理比特串为010101xx,此时,比特串Sf为000x111x,由此,可以从000x中去除低位的个比特,从111x中去除个比特,从而得到目标比特串00111。
在原始比特数k为奇数的情况下,填充后的各个原始比特的奇数位和偶数位发生了改变,需要对去除填充比特后的比特串进高位个比特和低位/>个比特进行交换,从而得到目标比特串。示例性地,假定原始比特串为10101,待处理比特串为10101xxx,此时,比特串Sf为111x00xx,由此,可以从xx00中去除/>个比特,从x111中去除/> 个比特,得到比特串11100,进而对高位/>个比特和低位/>个比特进行交换,得到目标比特串00111。
由上,可以得到目标比特串,其中的高位和低位分别对应于原始比特串中的奇数位和偶数位,实际为对原始比特串进行奇偶比特分离的结果。
综上,采用本说明书实施例披露的数据处理方法,在实现准确奇偶比特分离的同时,可以将计算次数从O(k)降低到O(log(k)),从而有效提高处理效率。
对于采用上述数据处理方法得到的目标比特串,可以进一步用于与目标数据的奇偶比特位相关的数据处理。在一种应用场景中,需要对原始比特串中的奇数位和偶数位进行不同方式的编码,此时,可以从目标比特串中快速分割出奇数位部分和偶数位部分,进而对这两部分分别进行编码。
在另一种应用场景中,可以将上述数据处理方法作为安全多方计算(SecureMulti-Party Computation,简称MPC)中的密码学基础算子。需要说明,MPC技术是针对无可信第三方的情况下,安全地计算一个约定函数。
上述奇偶比特分离的结果,可以作为多方采用MPC技术计算溢出位的基础。对于其中溢出位需要理解的是,两个k位的比特串相加,和如果溢出了k位,则溢出位为1,如果没有溢出,则溢出位为0。具体地,图3示出根据一个实施例的保护数据隐私的多方计算溢出位的方法流程示意图,其中多方各自持有本方的隐私数据(或称私有数据),所述方法可以应用于多方中任意的一方,并且,多方均可以实现为任何具有计算、处理能力的装置、平台、服务器或设备集群等。
如图3所示,所述方法包括以下步骤:
步骤S310,将本方持有的隐私数据作为目标数据,执行图2中示出的数据处理,得到对应的目标比特串;步骤S320,基于该目标比特串,与多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
针对以上步骤,需要说明的是,对于上述步骤S310的介绍可以参见前述对图2方法的描述。对于上述步骤S320,上述MPC计算可以采用混淆电路(Garbled Circuits,简称GC)、同态加密(Homomorphic Encryption,简称HE)、秘密分享(Secret Share,简称SS)等方式实现,对此不作赘述。
综上,采用本说明书实施例披露的多方计算溢出位的方法,多方各自执行图2中的数据处理,得到本方隐私数据对应的目标比特串,再采用MPC技术计算出各方隐私数据的相加结果对应的溢出位数值,如此,可以实现在保护各方数据隐私的同时,高效、快捷地完成溢出位的计算。
根据另一方面,本说明书实施例还披露与上述数据处理方法、溢出位计算方法相对应的装置。图4示出根据一个实施例的数据处理装置结构示意图,如图4所示,所述装置400包括:
待处理比特串获取单元410,配着获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定。交换处理单元420,配置为对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变。目标比特串确定单元430,配置为基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
在一个实施例中,待处理比特串获取单元410具体配置为:将目标数据进行二进制转化,得到2n位的待处理比特串。
在一个具体的实施例中,目标比特串确定单元430具体配置为:将所述n-1次比特交换处理后的比特串作为所述目标比特串。
在一个实施例中,待处理比特串获取单元410具体配置为:对所述目标数据进行二进制编码,得到k位的原始比特串,其中k不能被记作2的整数次幂;采用预定填充方式,将所述原始比特串填充到2n位,得到所述待处理比特串。
在一个具体的实施例中,待处理比特串获取单元410还配置为:确定大于所述k且与k之间的差值为最小的数值2n。
在另一个具体的实施例中,目标比特串确定单元430具体配置为:采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,使得所述目标比特串的前位和后/>位分别对应于原始比特串的奇数位和偶数位。
在一个更具体的实施例中,待处理比特串获取单元410具体配置为:在所述原始比特串的高位填充差值个数的比特,其中差值为2n与k之间的差值;目标比特串确定单元430具体配置为:从所述比特串的左半部分和右半部分分别去除高位的第一个数比特和第二个数比特,其中第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
在另一个更具体的实施例中,待处理比特串获取单元410具体配置为:在所述原始比特串的低位填充差值个数的比特,其中差值为2n与k之间的差值;目标比特串确定单元430具体配置为:从所述比特串的左半部分和右半部分分别去除低位的第一个数的比特和第二个数的比特,所述第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
图5示出根据一个实施例的保护数据隐私的多方计算溢出位的装置结构示意图,所述装置集成于多方中任意的一方。如图5所示,所述装置500包括:
目标比特串确定单元510,配置为将本方持有的隐私数据作为目标数据,利用图4中的装置单元进行数据处理,得到对应的目标比特串;溢出位计算单元520,配置为基于所述目标比特串,与所述多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2或图3所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2或图3所描述的方法。本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (13)
1.一种数据处理方法,包括:
获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;
对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;
基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
2.根据权利要求1所述的方法,其中,获取2n位的待处理比特串,包括:
将目标数据进行二进制转化,得到2n位的待处理比特串。
3.根据权利要求2所述的方法,其中,基于所述n-1次比特交换处理后的比特串确定目标比特串,包括:
将所述n-1次比特交换处理后的比特串作为所述目标比特串。
4.根据权利要求1所述的方法,其中,获取2n位的待处理比特串,包括:
对所述目标数据进行二进制编码,得到k位的原始比特串,其中k不能被记作2的整数次幂;
采用预定填充方式,将所述原始比特串填充到2n位,得到所述待处理比特串。
5.根据权利要求4所述的方法,还包括:
确定大于所述k且与k之间的差值为最小的数值2n。
7.根据权利要求6所述的方法,其中,采用预定填充方式,将所述原始比特串填充到2n位,包括:
在所述原始比特串的高位填充差值个数的比特,其中差值为2n与k之间的差值;
其中,采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,包括:
从所述比特串的左半部分和右半部分分别去除高位的第一个数比特和第二个数比特,其中第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
8.根据权利要求6所述的方法,其中,采用预定填充方式,将所述原始比特串填充到2n位,包括:
在所述原始比特串的低位填充差值个数的比特,其中差值为2n与k之间的差值;
其中,采用预定去除方式,将所述n-1次比特交换处理后的比特串缩减为k位的目标比特串,包括:
从所述比特串的左半部分和右半部分分别去除低位的第一个数的比特和第二个数的比特,所述第一个数和第二个数分别为对所述差值的一半进行向上取整和向下取整而得到。
9.一种保护数据隐私的多方计算溢出位的方法,应用于多方中任意的一方,包括:
将本方持有的隐私数据作为目标数据,执行根据权利要求1-8中任一项的数据处理,得到对应的目标比特串;
基于所述目标比特串,与所述多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
10.一种数据处理装置,包括:
待处理比特串获取单元,配着获取2n位的待处理比特串,其基于目标数据对应的原始比特串而确定;
交换处理单元,配置为对所述待处理比特串进行n-1次比特交换处理,其中任意的第t次比特交换处理包括:将当前比特串按照2t+1个比特为一组进行分组;针对每个分组,对位于中间的2t个比特,交换高位比特与低位比特之间的位置,并保持外侧的2t个比特不变;
目标比特串确定单元,配置为基于所述n-1次比特交换处理后的比特串确定目标比特串,所述目标比特串中的高位和低位分别对应于所述原始比特串中的奇数位和偶数位,所述目标比特串用于与目标数据的奇偶比特位相关的数据处理。
11.一种保护数据隐私的多方计算溢出位的装置,所述装置集成于多方中任意的一方,所述装置包括:
目标比特串确定单元,配置为将本方持有的隐私数据作为目标数据,利用权利要求10中的装置单元进行数据处理,得到对应的目标比特串;
溢出位计算单元,配置为基于所述目标比特串,与所述多方中的其他方进行安全多方MPC计算,得到与各方的隐私数据的相加结果对应的溢出位数值。
12.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项所述的方法。
13.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310162621.9A CN116301710A (zh) | 2023-02-13 | 2023-02-13 | 数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310162621.9A CN116301710A (zh) | 2023-02-13 | 2023-02-13 | 数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116301710A true CN116301710A (zh) | 2023-06-23 |
Family
ID=86782666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310162621.9A Pending CN116301710A (zh) | 2023-02-13 | 2023-02-13 | 数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116301710A (zh) |
-
2023
- 2023-02-13 CN CN202310162621.9A patent/CN116301710A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110348231B (zh) | 实现隐私保护的数据同态加解密方法及装置 | |
JP5957120B1 (ja) | 秘密分散方法、秘密分散システム、分散装置、およびプログラム | |
CN110768785B (zh) | 一种编、解码方法、相关装置及计算机设备 | |
CN105684316B (zh) | 一种Polar码编码方法、装置 | |
CN112506469B (zh) | 针对隐私数据进行处理的方法和装置 | |
CN112200713B (zh) | 一种联邦学习中的业务数据处理方法、装置以及设备 | |
CN109075804B (zh) | 使用极化码的通信设备和通信方法 | |
RU2698764C2 (ru) | Электронное вычислительное устройство для выполнения замаскированных арифметических действий | |
CN108809332B (zh) | 一种Polar码传输方法及装置 | |
CN107124251A (zh) | 一种基于任意内核的极化码编码方法 | |
CN114978510A (zh) | 针对隐私向量的安全处理方法和装置 | |
US11599681B2 (en) | Bit decomposition secure computation apparatus, bit combining secure computation apparatus, method and program | |
JP5918884B1 (ja) | 復号装置、復号方法、およびプログラム | |
CN112231718B (zh) | 数据加密处理方法、装置、计算机设备和存储介质 | |
CN116301710A (zh) | 数据处理方法及装置 | |
CN117811720A (zh) | 密文处理方法、密文处理单元、电子设备和存储介质 | |
CN117459221A (zh) | 数据加密方法及装置、数据解密方法及装置、电子设备 | |
CN117857007A (zh) | 一种适用于同态运算的轻量加解密方法及装置 | |
CN112182593A (zh) | 一种数据处理方法、装置和电子设备 | |
CN116846557A (zh) | 数据加密方法、装置、计算机设备和存储介质 | |
CN116483313A (zh) | 信息处理方法、装置、电子设备及计算机可读存储介质 | |
Anisimov et al. | Robust prefix encoding using lower (2, 3) number representation | |
CN108075889B (zh) | 一种降低加解密运算时间复杂度的数据传输方法及系统 | |
JP2016157053A (ja) | 暗号化システム、暗号化装置、復号装置、暗号化方法 | |
CN110875744B (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 |