CN112241250A - 一种数据处理方法、装置和用于数据处理的装置 - Google Patents

一种数据处理方法、装置和用于数据处理的装置 Download PDF

Info

Publication number
CN112241250A
CN112241250A CN202011466871.4A CN202011466871A CN112241250A CN 112241250 A CN112241250 A CN 112241250A CN 202011466871 A CN202011466871 A CN 202011466871A CN 112241250 A CN112241250 A CN 112241250A
Authority
CN
China
Prior art keywords
ciphertext
bit
iteration
possible output
output values
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
Application number
CN202011466871.4A
Other languages
English (en)
Other versions
CN112241250B (zh
Inventor
李艺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huakong Tsingjiao Information Technology Beijing Co Ltd
Original Assignee
Huakong Tsingjiao Information Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huakong Tsingjiao Information Technology Beijing Co Ltd filed Critical Huakong Tsingjiao Information Technology Beijing Co Ltd
Publication of CN112241250A publication Critical patent/CN112241250A/zh
Application granted granted Critical
Publication of CN112241250B publication Critical patent/CN112241250B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例提供一种数据处理方法、装置和用于数据处理的装置,用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小。其中的方法包括:基于密文分别将x和y分解为n位的密文比特;将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。本申请实施例可以减少密文比较操作所需的通讯轮数,进而可以提高密文比较的效率。

Description

一种数据处理方法、装置和用于数据处理的装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置和用于数据处理的装置。
背景技术
MPC(Secure Multi-Party Computation,多方安全计算)系统,用于解决针对无可信第三方情况下,安全地进行多方协同的计算问题。多方安全计算系统要求输入数据均处于密文状态,即在一个分布式网络中,多个参与实体各自持有秘密输入,各方希望共同完成对某函数的计算,而要求每个参与实体除计算结果外均不能得到其他参与实体的任何输入信息。
多方安全计算系统要求数据处于密文状态,并在密文上进行计算,例如在密文状态下比较数据的大小,且输出结果也以密文形式存在。常见的密文比较方法是先将密文数据按位分解成密文比特,然后应用比较电路得到最终的比较结果的密文。
然而,比较电路的计算通常是串行的,直到最后一个比特位计算完成才能得到比较结果,因此,密文比较操作所需的通讯轮数与密文比特的位长成正比。比如待比较的密文数据是64位,则需要经过64轮通讯才能得到比较结果,导致密文比较的效率较低。
发明内容
本申请实施例提供一种数据处理方法、装置和用于数据处理的装置,可以减少密文比较操作所需的通讯轮数,进而可以提高密文比较的效率。
为了解决上述问题,本申请实施例公开了一种数据处理方法,用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述方法包括:
基于密文分别将x和y分解为n位的密文比特;
将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
另一方面,本申请实施例公开了一种数据处理装置,用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置包括:
数据分解模块,用于基于密文分别将x和y分解为n位的密文比特;
迭代比较模块,用于将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
再一方面,本申请实施例公开了一种用于数据处理的装置,用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置包括有存储器,以及一个或者一个以上程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
基于密文分别将x和y分解为n位的密文比特;
将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
又一方面,本申请实施例公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如前述一个或多个所述的数据处理方法。
本申请实施例包括以下优点:
本申请实施例提出了一种在支持密文位运算的系统中比较密文数据x和密文数据y的大小的方法,将传统的比较电路在每一轮迭代中的串行计算改为并行计算。具体地,将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。通过本申请实施例,将密文比较过程中的n轮迭代减少至log2(n)+1轮,能够以更少的通讯轮数实现密文比较操作,通过减少迭代计算的轮数,可以减少通讯轮数,进而可以提高密文比较的效率,提高密文计算系统的性能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一种数据处理方法实施例的步骤流程图;
图2是本申请的一种比较密文数据x和密文数据y的过程中每一轮迭代并行计算x和y每一对应位密文比特计算的可能输出值的流程示意图。
图3是本申请的一种数据处理装置实施例的结构框图;
图4是本申请的一种用于数据处理的装置800的框图;
图5是本申请的一些实施例中服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
方法实施例
参照图1,示出了本申请的一种数据处理方法实施例的步骤流程图,所述方法用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述方法具体可以包括如下步骤:
步骤101、基于密文分别将x和y分解为n位的密文比特;
步骤102、将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
本申请实施例可用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小。位运算就是直接对整数在内存中的二进制位进行操作。密文位运算指在密文状态下进行位运算,也即每个二进制位为密文。
在本申请的一种可选实施例中,所述支持密文位运算的系统可以包括:基于秘密分享的密文计算系统。
在基于秘密分享的密文计算系统中,多个计算节点之间通过通讯进行协同计算,迭代计算的轮数将直接影响计算节点之间的通讯次数,进而影响密文计算系统的性能。本申请实施例通过减少密文比较中迭代计算的轮数,减少计算节点之间的通讯次数,进而可以提高密文比较的效率以及提高密文计算系统的性能。
可以理解,上述支持密文位运算的系统包括基于秘密分享的密文计算系统仅作为一种示例,本申请实施例可应用在支持密文位运算的任意系统中。例如,所述支持密文位运算的系统还可以包括基于同态加密的密文计算系统、基于混淆电路的密文计算系统等。
比较密文数据x和密文数据y的大小,目标在于得到一位加密的比特,假设记为b,使得x>y时b为0的密文,否则b为1的密文。具体地,可以基于密文分别将x和y分解为n位的密文比特,将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在迭代计算完成后输出x和y的比较结果,该比较结果即为该加密的比特b。
在本申请的一种可选实施例中,步骤101所述基于密文分别将x和y分解为n位的密文比特之前,所述方法还可以包括:将x和y统一转换为n位的密文数据。
需要说明的是,本申请实施例可以对两个相同位数的密文数据比较大小,例如,对n位的密文数据x和n位的密文数据y比较大小。如果x和y的位数不一致,则在对x和y进行比较之前,可以将x和y统一转换为n位的密文数据。其中,n为x和y的位数中较长的位数。在具体实施中,由于不同数据类型的长度通常是固定的,因此,密文数据的位数可以根据数据类型所确定。
在本申请的一种可选实施例中,步骤101所述基于密文分别将x和y分解为n位的密文比特,具体可以包括:
在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,其中,xn-1为最高位;
在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,其中,yn-1为最高位。
具体地,本申请实施例通过密文位抽取(bit extraction)的方式,在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,xn-1…x2x1x0中的位采用二进制补的形式表示,xn-1为最高位。同理,通过密文位抽取的方式,在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,yn-1…y2y1y0中的位采用二进制补的形式表示,yn-1为最高位。
在基于密文分别将x和y分解为n位的密文比特之后,将x对应的n位的密文比特xn-1…x2x1x0和y对应的n位的密文比特yn-1…y2y1y0输入比较电路进行迭代计算。
传统的比较电路在每一轮迭代中的计算是串行的。对于每一轮迭代,在密文状态下计算ci+1=(ci∧xi)&(ci∧yi)&xi和bi=ci∧xi∧yi,并且将当前计算得到的输出作为下一轮迭代计算的输入,最后将bn-1作为比较结果输出。其中,c0为初始值,例如可以将c0设置为0的密文,ci+1表示第i位对下一位产生的进位,对于bi,在i<n-1时,bi表示到第i位为止的比较结果,在i=n-1时,bi表示最终的输出结果(即bn-1)。∧表示位的异或运算,&表示位的与运算。对于传统的比较电路,在第一轮迭代中,计算c1=(c0∧x0)&(c0∧y0)&x0和b0=c0∧x0∧y0,将c1和b0作为下一轮迭代的输入。在第二轮迭代中,计算c2=(c1∧x1)&(c1∧y1)&x1和b1=c1∧x1∧y1,将c2和b1作为下一轮迭代的输入。以此类推,到第n轮,计算cn=(cn-1∧xn-1)&(cn-1∧yn-1)&xn-1和bn-1=cn-1∧xn-1∧yn-1,可以得到最终结果bn-1
由此,两个n位密文数据的比较需要进行n轮迭代计算,导致通讯次数较多。本申请实施例根据比较电路每一轮迭代计算的特征,将每一轮迭代中的串行计算改为并行计算,可以减少迭代计算的轮数,进而可以减少通讯次数,提高密文比较的效率。
具体地,本申请实施例在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值。也即,本申请实施例的每一轮迭代中的计算均为并行计算。
在本申请的一种可选实施例中,步骤102中所述在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,具体可以包括:
在第一轮迭代中,通过下式并行计算x和y第i对应位密文比特计算的可能输出值oi
oi=ci+1,其中,ci+1=(ci∧xi)&( ci∧yi)&xi,0≤i<n-1; (1)
或者
oi=bi,其中,bi= ci∧xi∧yi,i=n-1; (2)
其中,c0=0,且c0为密文。
本申请实施例在第一轮迭代中预先并行计算出x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值可以进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值。由此可以将比较电路的每一轮迭代中的串行计算改为并行计算,在当前迭代中,并行地提前计算得到ci+1和bi的所有可能值,然后在下一轮迭代中,用上一轮迭代的输出并行计算新的输出。
从ci+1=(ci∧xi)&(ci∧yi)&xi该式中可以看出,在计算ci+1时,需要用到xi、yi和ci三个输入,其中xi和yi是已知的,而ci需要依赖上一轮的输出。因此,本申请实施例在第一轮迭代中就根据xi、yi计算出ci+1的可能输出值,记为oi,由于ci+1的可能输出值包括0和1两种情况,因此分别记为[ci+1]0和[ci+1]1,所述可能输出值为密文。
可以理解,在i=n-1与i<n-1时的情况略有不同。因为i=n-1时输出是x和y的比较结果,即bn-1,而i<n-1时输出的是对下一位的进位。因此,本申请实施例将第一轮迭代中x和y每一对应位密文比特计算的可能输出值记为oi,对于0≤i<n-1的情况,oi=ci+1, ci+1=(ci∧xi)&( ci∧yi)&xi,而对于i=n-1的情况,oi=bi,bi= ci∧xi∧yi。其中,c0为初始值,例如c0=0,且c0为密文。
在本申请的一种可选实施例中,所述第一轮迭代中并行计算x和y每一对应位密文 比特计算的可能输出值oi包括如下两种情况:
Figure 594517DEST_PATH_IMAGE001
Figure 600388DEST_PATH_IMAGE002
,其中,
Figure 127315DEST_PATH_IMAGE001
表示第一轮迭代中x 和y第i对应位密文比特计算的可能输出值为0的密文,
Figure 172632DEST_PATH_IMAGE002
表示第一轮迭代中x和y第i对 应位密文比特计算的可能输出值为1的密文,0≤i≤n-1,
Figure 567841DEST_PATH_IMAGE001
Figure 178951DEST_PATH_IMAGE002
右上角的0表示第一 轮迭代。
步骤102中所述利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,具体可以包括:
通过下式进行第j+1轮迭代中的并行计算,以得到第j+1轮迭代中x和y第i对应位密文比特计算的可能输出值:
Figure 266992DEST_PATH_IMAGE003
(3)
Figure 534026DEST_PATH_IMAGE004
(4)
需要说明的是,在本申请实施例中,i表示x和y的n位密文比特中的对应位,中括号右上角的j用于对迭代的轮数进行计数,在本申请实施例中,中括号右上角的数值(如中括号右上角的j)并不参与计算,数字右上角的j(如2j中的j)参与计算。在上式(3)和(4)中,0≤j≤log2(n),i取值为k×2j+1-1 (1≤k≤n/2j+1),且i和j均为正整数。
在第一轮迭代中,可以通过上式(1)和(2)并行计算x和y第i对应位密文比特计算的可能输出值。从第二轮迭代开始,可以通过上式(3)和(4)并行计算x和y第i对应位密文比特计算的可能输出值。
需要说明的是,上式(1)和(2)中的i用于计算第一轮迭代的输出,而上式(3)和(4)中的i用于计算从第二轮开始之后的每轮迭代的输出,因此,上式(1)和(2)中i的取值与上式(3)和(4)中i的取值不同。
在上式(3)和(4)中,i用于表示x和y的对应位,右上角的j用于对迭代的轮数进行计数,右下角的0用于表示x和y对应位密文比特计算的可能输出值为0的密文,右下角的1用于表示x和y对应位密文比特计算的可能输出值为1的密文。
Figure 47440DEST_PATH_IMAGE005
表示第j+1轮迭代中x和y第i对应位密文比特计算的可能输出值为0的密 文。
Figure 450740DEST_PATH_IMAGE006
表示第j+1轮迭代中x和y第i对应位密文比特计算的可能输出值为1的密文。需要 说明的是,由于第一轮迭代使用的是上式(1)和(2)并行计算,从第二轮迭代开始使用上式 (3)和(4)并行计算,因此,(3)和(4)中的j实际上是从第二轮迭代开始计算,也即,在j=0时, 表示的是第二轮迭代。
本申请实施例在第一轮迭代中,可以通过上式(1)和(2)并行计算x和y所有对应位 密文比特计算的可能输出值oi,oi包括0和1两种情况,分别记为
Figure 771999DEST_PATH_IMAGE001
Figure 526329DEST_PATH_IMAGE002
,其中,
Figure 263341DEST_PATH_IMAGE001
表 示第一轮迭代中x和y第i对应位密文比特计算的可能输出值为0的密文,
Figure 786726DEST_PATH_IMAGE002
表示第一轮 迭代中x和y第i对应位密文比特计算的可能输出值为1的密文。
本申请实施例从第二轮迭代开始,可以通过上式(3)和(4)并行计算x和y第i对应 位密文比特计算的可能输出值。由上式(3)和(4)可以看出,对于第j+1轮迭代,x和y第i对应 位密文比特计算的可能输出值取决于第j轮迭代中第i位和第i-2j位的可能输出值,也即
Figure 29620DEST_PATH_IMAGE007
Figure 5666DEST_PATH_IMAGE008
的具体取值取决于
Figure 546369DEST_PATH_IMAGE009
Figure 252156DEST_PATH_IMAGE010
Figure 587323DEST_PATH_IMAGE011
Figure 316244DEST_PATH_IMAGE012
的具体取值。例如,对于第 二轮迭代(对应j=0),
Figure 706643DEST_PATH_IMAGE013
Figure 204621DEST_PATH_IMAGE014
的具体取值取决于
Figure 710688DEST_PATH_IMAGE001
Figure 989223DEST_PATH_IMAGE002
Figure 871728DEST_PATH_IMAGE015
Figure 224212DEST_PATH_IMAGE016
的具体取 值。同理,对于第三轮迭代(对应j=1),
Figure 979810DEST_PATH_IMAGE017
Figure 417744DEST_PATH_IMAGE018
的具体取值取决于
Figure 838362DEST_PATH_IMAGE013
Figure 310931DEST_PATH_IMAGE014
Figure 221118DEST_PATH_IMAGE019
Figure 146349DEST_PATH_IMAGE020
的具体取值。对于第四轮迭代(对应j=2),
Figure 370657DEST_PATH_IMAGE021
Figure 12247DEST_PATH_IMAGE022
的具体取值取决于
Figure 296598DEST_PATH_IMAGE017
Figure 709125DEST_PATH_IMAGE018
Figure 471545DEST_PATH_IMAGE023
Figure 964712DEST_PATH_IMAGE024
的具体取值。以此类推。
可以看出,从第二轮迭代开始,每经过一轮迭代的并行计算,可以使得下一轮迭代中需要计算的对应位密文比特计算的可能输出值的数目减半。也即,第三轮迭代中需要计算的对应位密文比特计算的可能输出值的数目比第二轮迭代中需要计算的对应位密文比特计算的可能输出值的数目减半,第四轮迭代中需要计算的对应位密文比特计算的可能输出值的数目比第三轮迭代中需要计算的对应位密文比特计算的可能输出值的数目减半,以此类推。
此外,可以看出,(3)式和(4)式的两个计算互不依赖,因此可以在同一轮迭代中并行完成。在最后一轮迭代中,由于c0=0是已知的初始值,所以可以根据c0直接计算得到最终的输出结果。由此,每一轮迭代中的并行计算可以使得每一轮迭代中需要计算的对应位比特计算的可能输出值的数目减半,总共只需要log2(n)+1轮迭代即可完成密文数据x和密文数据y的比较过程。
参照图2,示出了本申请实施例中比较密文数据x和密文数据y的过程中每一轮迭 代并行计算x和y每一对应位密文比特计算的可能输出值的流程示意图。如图2所示,在第一 轮迭代(Round0)中,通过上式(1)和(2)并行计算x和y每一对应位密文比特计算的可能输出 值oi。具体地,对于第0对应位(i=0),通过x0和y0可以计算出第0对应位密文比特计算的可能 输出值包括
Figure 609844DEST_PATH_IMAGE001
Figure 509667DEST_PATH_IMAGE002
;对于第1对应位(i=1),通过x1和y1可以计算出第1对应位密文比 特计算的可能输出值包括
Figure 75778DEST_PATH_IMAGE025
Figure 174184DEST_PATH_IMAGE026
;以此类推,对于第n-1对应位(i=n-1),通过xn-1和 yn-1可以计算出第n-1对应位密文比特计算的可能输出值包括
Figure 800337DEST_PATH_IMAGE027
Figure 505DEST_PATH_IMAGE028
在第二轮迭代(Round1)中,通过上式(3)和(4)并行计算
Figure 104728DEST_PATH_IMAGE005
Figure 260902DEST_PATH_IMAGE013
)和
Figure 120274DEST_PATH_IMAGE008
Figure 729110DEST_PATH_IMAGE014
)。由于在第二轮迭代中,x和y的第0对应位密文比特计算的可能输出值已经和第1对应 位密文比特计算的可能输出值合并到第1对应位了,同理,x和y的第2对应位密文比特计算 的可能输出值已经和第3对应位密文比特计算的可能输出值合并到第3对应位了,以此类 推。因此,在第二轮迭代中,只需计算x和y的第1对应位、第3对应位、……、第n-3对应位、第 n-1对应位密文比特计算的可能输出值。对于第1对应位(i=1),根据上式(3)可以计算
Figure 902602DEST_PATH_IMAGE029
,以及根据上式(4),可以计算
Figure 224868DEST_PATH_IMAGE030
。对于第3对应位(i=3),根据上式(3)可以计算
Figure 192824DEST_PATH_IMAGE031
,以及根据上式(4),可以计算
Figure 288956DEST_PATH_IMAGE032
。以此类推,对于第n-1对应位(i=n-1),根据上式(3) 可以计算
Figure 797298DEST_PATH_IMAGE033
,以及根据上式(4),可以计算
Figure 928065DEST_PATH_IMAGE034
从图2可以看出,经过第二轮迭代之后,需要计算的对应位密文比特计算的可能输 出值的数目由n位减少至n/2位。同样的方法,经过第三轮迭代(Round2)后,需要计算的对应 位密文比特计算的可能输出值的数目由n/2位减少至n/4位。在Roundlog2(n)轮迭代中,可 以得到可能输出值包括
Figure 879971DEST_PATH_IMAGE035
Figure 463399DEST_PATH_IMAGE036
,代入初始值c0=0即可得到最终的输出 结果为bn-1,如
Figure 713115DEST_PATH_IMAGE037
由此,本申请实施例提出了一种基于树状结构的密文比较方法,在利用比较电路对两个n位的密文数据x和y进行比较的过程中,可以将迭代轮数由n轮降低至log2(n)+1轮,在log2(n)+1轮迭代计算完成之后,即可得到x和y的比较结果。以n为64位为例,通过本申请实施例,可以将原本的64轮迭代计算减少至log2(64)+1=7轮迭代计算,极大地减少了迭代计算的轮数,对于网络延迟敏感的密文计算系统,性能提升尤为明显。
综上,本申请实施例提出了一种在支持密文位运算的系统中比较密文数据x和密文数据y的大小的方法,将传统的比较电路在每一轮迭代中的串行计算改为并行计算。具体地,将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。通过本申请实施例,将密文比较过程中的n轮迭代减少至log2(n)+1轮,能够以更少的通讯轮数实现密文比较操作,通过减少迭代计算的轮数,可以减少通讯轮数,进而可以提高密文比较的效率,提高密文计算系统的性能。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
装置实施例
参照图3,示出了本申请的一种数据处理装置实施例的结构框图,所述装置用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置具体可以包括:
数据分解模块301,用于基于密文分别将x和y分解为n位的密文比特;
迭代比较模块302,用于将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
可选地,所述数据分解模块301,包括:
第一分解子模块,用于在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,其中,xn-1为最高位;
第二分解子模块,用于在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,其中,yn-1为最高位。
可选地,所述迭代比较模块302,具体用于在第一轮迭代中,通过下式并行计算x和y第i对应位密文比特计算的可能输出值oi
oi=ci+1,其中,ci+1=(ci∧xi)&( ci∧yi)&xi,0≤i<n-1;或者
oi=bi,其中,bi= ci∧xi∧yi,i=n-1;
其中,c0=0,且c0为密文。
可选地,所述第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值 包括:
Figure 760706DEST_PATH_IMAGE001
Figure 70464DEST_PATH_IMAGE002
,其中,
Figure 141188DEST_PATH_IMAGE001
表示第一轮迭代中x和y第i对应位密文比特计算的可能输 出值为0的密文,
Figure 194595DEST_PATH_IMAGE002
表示第一轮迭代中x和y第i对应位密文比特计算的可能输出值为1的 密文,0≤i≤n-1;
所述迭代比较模块,具体用于通过下式进行第j+1轮迭代中的并行计算,以得到第j+1轮迭代中x和y第i对应位密文比特计算的可能输出值:
Figure 360608DEST_PATH_IMAGE003
Figure 841268DEST_PATH_IMAGE004
其中,0≤j≤log2(n),i=k×2j+1-1,1≤k≤n/2j+1
可选地,所述装置还包括:
数据转换模块,用于将x和y统一转换为n位的密文数据。
可选地,所述支持密文位运算的系统包括:基于秘密分享的密文计算系统。
通过本申请实施例的数据处理装置,将密文比较过程中的n轮迭代减少至log2(n)+1轮,能够以更少的通讯轮数实现密文比较操作,通过减少迭代计算的轮数,可以减少通讯轮数,进而可以提高密文比较的效率,提高密文计算系统的性能。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例提供了一种用于数据处理的装置,所述装置用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置包括有存储器,以及一个或者一个以上程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:基于密文分别将x和y分解为n位的密文比特;将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
图4是根据一示例性实施例示出的一种用于数据处理的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/ O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音信息处理模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/ O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频信息处理(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图5是本申请的一些实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。
服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行图1所示的数据处理方法。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行一种数据处理方法,所述方法包括:基于密文分别将x和y分解为n位的密文比特;将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
以上对本申请所提供的一种数据处理方法、一种数据处理装置和一种用于数据处理的装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (19)

1.一种数据处理方法,其特征在于,所述方法用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述方法包括:
基于密文分别将x和y分解为n位的密文比特;
将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
2.根据权利要求1所述的方法,其特征在于,所述基于密文分别将x和y分解为n位的密文比特,包括:
在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,其中,xn-1为最高位;
在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,其中,yn-1为最高位。
3.根据权利要求2所述的方法,其特征在于,所述在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,包括:
在第一轮迭代中,通过下式并行计算x和y第i对应位密文比特计算的可能输出值oi
oi=ci+1,其中,ci+1=(ci∧xi)&( ci∧yi)&xi,0≤i<n-1;或者
oi=bi,其中,bi= ci∧xi∧yi,i=n-1;
其中,c0=0,且c0为密文。
4.根据权利要求3所述的方法,其特征在于,所述第一轮迭代中并行计算x和y每一对应 位密文比特计算的可能输出值包括:
Figure 425392DEST_PATH_IMAGE001
Figure 282490DEST_PATH_IMAGE002
,其中,
Figure 976776DEST_PATH_IMAGE001
表示第一轮迭代中x和y第i 对应位密文比特计算的可能输出值为0的密文,
Figure 628338DEST_PATH_IMAGE002
表示第一轮迭代中x和y第i对应位密 文比特计算的可能输出值为1的密文,0≤i≤n-1;
所述利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,包括:
通过下式进行第j+1轮迭代中的并行计算,以得到第j+1轮迭代中x和y第i对应位密文 比特计算的可能输出值:
Figure 735971DEST_PATH_IMAGE003
Figure 131180DEST_PATH_IMAGE004
,其中,0≤j≤log2(n),i=k×2j+1-1,1≤k≤n/ 2j+1
5.根据权利要求1所述的方法,其特征在于,所述基于密文分别将x和y分解为n位的密文比特之前,所述方法还包括:
将x和y统一转换为n位的密文数据。
6.根据权利要求1至5任一所述的方法,其特征在于,所述支持密文位运算的系统包括:基于秘密分享的密文计算系统。
7.一种数据处理装置,其特征在于,所述装置用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置包括:
数据分解模块,用于基于密文分别将x和y分解为n位的密文比特;
迭代比较模块,用于将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
8.根据权利要求7所述的装置,其特征在于,所述数据分解模块,包括:
第一分解子模块,用于在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,其中,xn-1为最高位;
第二分解子模块,用于在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,其中,yn-1为最高位。
9.根据权利要求8所述的装置,其特征在于,所述迭代比较模块,具体用于在第一轮迭代中,通过下式并行计算x和y第i对应位密文比特计算的可能输出值oi
oi=ci+1,其中,ci+1=(ci∧xi)&( ci∧yi)&xi,0≤i<n-1;或者
oi=bi,其中,bi= ci∧xi∧yi,i=n-1;
其中,c0=0,且c0为密文。
10.根据权利要求9所述的装置,其特征在于,所述第一轮迭代中并行计算x和y每一对 应位密文比特计算的可能输出值包括:
Figure 679973DEST_PATH_IMAGE001
Figure 830332DEST_PATH_IMAGE002
,其中,
Figure 97365DEST_PATH_IMAGE001
表示第一轮迭代中x和y第 i对应位密文比特计算的可能输出值为0的密文,
Figure 296265DEST_PATH_IMAGE002
表示第一轮迭代中x和y第i对应位密 文比特计算的可能输出值为1的密文,0≤i≤n-1;
所述迭代比较模块,具体用于通过下式进行第j+1轮迭代中的并行计算,以得到第j+1 轮迭代中x和y第i对应位密文比特计算的可能输出值:
Figure 699565DEST_PATH_IMAGE003
Figure 20825DEST_PATH_IMAGE004
, 其中,0≤j≤log2(n),i=k×2j+1-1,1≤k≤n/2j+1
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
数据转换模块,用于将x和y统一转换为n位的密文数据。
12.根据权利要求7至11任一所述的装置,其特征在于,所述支持密文位运算的系统包括:基于秘密分享的密文计算系统。
13.一种用于数据处理的装置,其特征在于,所述装置用于在支持密文位运算的系统中比较密文数据x和密文数据y的大小,所述装置包括有存储器,以及一个或者一个以上程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
基于密文分别将x和y分解为n位的密文比特;
将x对应的n位的密文比特和y对应的n位的密文比特输入比较电路进行迭代计算,在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,直至log2(n)+1轮迭代计算完成,得到x和y的比较结果,所述可能输出值和所述比较结果为密文。
14.根据权利要求13所述的装置,其特征在于,所述基于密文分别将x和y分解为n位的密文比特,包括:
在密文状态下对x按位分解,得到n位的密文比特xn-1…x2x1x0,使得x=xn-1…x2x1x0,其中,xn-1为最高位;
在密文状态下对y按位分解,得到n位的密文比特yn-1…y2y1y0,使得y= yn-1…y2y1y0,其中,yn-1为最高位。
15.根据权利要求14所述的装置,其特征在于,所述在第一轮迭代中并行计算x和y每一对应位密文比特计算的可能输出值,包括:
在第一轮迭代中,通过下式并行计算x和y第i对应位密文比特计算的可能输出值oi
oi=ci+1,其中,ci+1=(ci∧xi)&( ci∧yi)&xi,0≤i<n-1;或者
oi=bi,其中,bi= ci∧xi∧yi,i=n-1;
其中,c0=0,且c0为密文。
16.根据权利要求15所述的装置,其特征在于,所述第一轮迭代中并行计算x和y每一对 应位密文比特计算的可能输出值包括:
Figure 775154DEST_PATH_IMAGE001
Figure 512166DEST_PATH_IMAGE002
,其中,
Figure 35551DEST_PATH_IMAGE001
表示第一轮迭代中x和y第 i对应位密文比特计算的可能输出值为0的密文,
Figure 530642DEST_PATH_IMAGE002
表示第一轮迭代中x和y第i对应位密 文比特计算的可能输出值为1的密文,0≤i≤n-1;
所述利用所述可能输出值进行下一轮迭代中的并行计算,以得到下一轮迭代中x和y每一对应位密文比特计算的可能输出值,包括:
通过下式进行第j+1轮迭代中的并行计算,以得到第j+1轮迭代中x和y第i对应位密文比特计算的可能输出值:
Figure DEST_PATH_IMAGE005
Figure 506688DEST_PATH_IMAGE004
,其中,0≤j≤log2(n),i=k×2j+1-1,1≤k ≤n/2j+1
17.根据权利要求13所述的装置,其特征在于,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
将x和y统一转换为n位的密文数据。
18.根据权利要求13至17任一所述的装置,其特征在于,所述支持密文位运算的系统包括:基于秘密分享的密文计算系统。
19.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如权利要求1至6任一所述的数据处理方法。
CN202011466871.4A 2020-08-19 2020-12-14 一种数据处理方法、装置和用于数据处理的装置 Active CN112241250B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2020108392694 2020-08-19
CN202010839269.4A CN111711645A (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置和用于数据处理的装置

Publications (2)

Publication Number Publication Date
CN112241250A true CN112241250A (zh) 2021-01-19
CN112241250B CN112241250B (zh) 2021-03-16

Family

ID=72547273

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010839269.4A Pending CN111711645A (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置和用于数据处理的装置
CN202011466871.4A Active CN112241250B (zh) 2020-08-19 2020-12-14 一种数据处理方法、装置和用于数据处理的装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010839269.4A Pending CN111711645A (zh) 2020-08-19 2020-08-19 一种数据处理方法、装置和用于数据处理的装置

Country Status (1)

Country Link
CN (2) CN111711645A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113065162B (zh) * 2021-04-25 2022-05-17 支付宝(杭州)信息技术有限公司 和共享形式的隐私数据的处理方法和装置
CN113987255B (zh) * 2021-12-30 2022-04-01 南湖实验室 基于联邦学习与秘密分享的多源密文图像检索方法
CN115225264A (zh) * 2022-06-17 2022-10-21 上海富数科技有限公司广州分公司 一种安全多方计算方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050001745A1 (en) * 2003-05-28 2005-01-06 Jagadeesh Sankaran Method of context based adaptive binary arithmetic encoding with decoupled range re-normalization and bit insertion
CN101754205A (zh) * 2009-12-25 2010-06-23 西安交通大学 一种并行化多接收方签密方法
CN108134665A (zh) * 2017-12-20 2018-06-08 东南大学 一种面向IoT应用的8比特AES电路
CN110287713A (zh) * 2019-06-10 2019-09-27 南通大学 一种中文字符串的加密方法和解密方法
US20200175180A1 (en) * 2018-06-29 2020-06-04 Alibaba Group Holding Limited Method and apparatus for obtaining input of secure multiparty computation protocol

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2563294A (en) * 2017-06-01 2018-12-12 Zwipe As Progressive key encryption Algorithm

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050001745A1 (en) * 2003-05-28 2005-01-06 Jagadeesh Sankaran Method of context based adaptive binary arithmetic encoding with decoupled range re-normalization and bit insertion
CN101754205A (zh) * 2009-12-25 2010-06-23 西安交通大学 一种并行化多接收方签密方法
CN108134665A (zh) * 2017-12-20 2018-06-08 东南大学 一种面向IoT应用的8比特AES电路
US20200175180A1 (en) * 2018-06-29 2020-06-04 Alibaba Group Holding Limited Method and apparatus for obtaining input of secure multiparty computation protocol
CN110287713A (zh) * 2019-06-10 2019-09-27 南通大学 一种中文字符串的加密方法和解密方法

Also Published As

Publication number Publication date
CN111711645A (zh) 2020-09-25
CN112241250B (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
CN112241250B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN111832067B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN113315631B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN115396101B (zh) 一种基于秘密分享的不经意打乱方法和系统
CN112688779B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN114840568B (zh) 一种密文排序方法、装置和用于密文排序的装置
CN114969830B (zh) 一种隐私求交方法、系统和可读存储介质
CN112861175A (zh) 一种数据处理方法、装置和用于数据处理的装置
CN115396100A (zh) 一种基于秘密分享的不经意随机打乱方法和系统
CN115085912A (zh) 一种密文计算方法、装置和用于密文计算的装置
CN116305206A (zh) 一种安全多方计算方法、装置、电子设备及存储介质
CN112464257B (zh) 一种数据检测方法、装置和用于数据检测的装置
CN115941181B (zh) 一种乱序秘密分享方法、系统和可读存储介质
CN114885038B (zh) 一种加密协议转换方法、结果获取节点和隐私计算节点
CN112468290B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN113239389B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN112861145B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN112580064B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN112711744A (zh) 一种计算任务的处理方法、装置和用于计算任务的处理装置
CN112668015B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN116089990B (zh) 一种多方安全计算方法、系统和可读存储介质
CN114880691B (zh) 一种字符编码解码方法、装置和用于字符编码解码的装置
CN116684094B (zh) 一种数据处理方法、装置、系统和可读存储介质
CN114969164B (zh) 一种数据查询方法、装置和可读存储介质
CN112906904B (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