CN112182593A - 一种数据处理方法、装置和电子设备 - Google Patents
一种数据处理方法、装置和电子设备 Download PDFInfo
- Publication number
- CN112182593A CN112182593A CN201910590588.3A CN201910590588A CN112182593A CN 112182593 A CN112182593 A CN 112182593A CN 201910590588 A CN201910590588 A CN 201910590588A CN 112182593 A CN112182593 A CN 112182593A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- array
- fragment
- fragments
- elements
- 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 20
- 239000012634 fragment Substances 0.000 claims abstract description 202
- 238000000034 method Methods 0.000 claims abstract description 38
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000004364 calculation method Methods 0.000 claims description 24
- 239000006185 dispersion Substances 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 14
- 229910002056 binary alloy Inorganic materials 0.000 claims description 13
- 230000000717 retained effect Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供了一种数据处理方法、装置和电子设备,其中,所述的方法包括:获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;依据各密文分片对应的数组,对所述X进行取整;进而实现基于密文的定点数转换为整数。
Description
技术领域
本发明涉及数据处理领域,特别是涉及一种数据处理方法、装置和电子设备。
背景技术
随着计算机、通讯技术以及互联网技术的不断发展,大多数用户会通过电子设备进行信息的传输与存储,例如将文件上传到云端存储,向其他用户发送文件等等。其中,为了保证信息的安全,通常会对数据进行加密,例如在数据存储的过程中,会在对应存储的电子设备上对数据进行加密如在服务器、终端上进行数据加密;又如在数据传输的过程中对数据进行加密,如数据在终端与服务器传输的过程中对数据进行加密。
当电子设备需要使用这些数据时,需要先对数据进行解密,获取信息的明文后,再对数据进行相应的处理,从而导致信息存在安全隐患;例如,在电子支付场景中,用户用于支付的人脸数据明文在支付运算中对银联可见,若该人脸数据被窃取,同时将该人脸数据与对应的用户账户等信息关联,那么会对用户造成很大风险。为解决该问题,可以基于密文进行数据计算,以充分保证用户信息的安全性。
通常,会采用多个计算机节点实现基于密文的计算,在计算过程中,会先将数据X按照一定的规则进行分散处理得到多个数值,其中,所有数值可以称为X的密文,每个分散后的数值称为X的密文分片,然后将分散后的数值分散到多个节点进行密文计算。在某些场景下,需要将定点数转换为整数,如果对密文分片直接取整,可能得不到数值X正确的取整结果;例如,将数值X=1.4的密文分散为两个密文分片,分别为0.8的密文分片和0.6的密文分片,如果对该两个密文分片直接取整,则分别得到两个0,解密恢复成明文后也是0,并不能得到1。
发明内容
本发明实施例提供一种数据处理方法,以实现基于密文的定点数转换为整数。
相应的,本发明实施例还提供了一种数据处理装置和电子设备,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种数据处理方法,具体包括:获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;依据各密文分片对应的数组,对所述X进行取整。
可选地,所述依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,包括:利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
可选地,所述依据各密文分片对应的数组,对所述X进行取整,包括:分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
可选地,所述分别丢弃各密文分片对应数组中目标位置的元素,包括:确定所述X对应二进制中小数点之后比特位的位数N,N为正整数;依据所述小数部分的位数N,确定目标位置为后N位;分别丢弃各密文分片对应数组中后N位的元素。
可选地,所述依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文,包括:依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。
本发明实施例还公开了一种数据处理装置,具体包括:获取模块,用于获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;提取模块,用于依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;取整模块,用于依据各密文分片对应的数组,对所述X进行取整。
可选地,所述提取模块,具体用于利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
可选地,所述取整模块,包括:元素丢弃子模块,用于分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;数据取整子模块,用于依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
可选地,所述元素丢弃子模块,具体用于确定所述X对应二进制中小数点之后比特位的位数N,N为正整数;依据所述小数部分的位数N,确定目标位置为后N位;分别丢弃各密文分片对应数组中后N位的元素。
可选地,所述数据取整子模块,用于依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。
本发明实施例还公开了一种可读介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本发明实施例中一个或多个所述的数据处理方法。
本发明实施例还公开了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如上述本发明实施例中一个或多个所述的数据处理方法。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例中,可以获取定点数X的多个密文分片,然后依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组;其中,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文,因此后续可以依据各密文分片对应的数组,对所述X进行取整;进而实现基于密文的定点数转换为整数。
附图说明
图1是本发明的一种数据处理方法实施例的步骤流程图;
图2是本发明的一种数据处理方法可选实施例的步骤流程图;
图3是本发明的一种数据处理装置实施例的结构框图;
图4是本发明的一种数据处理装置可选实施例的结构框图;
图5示意性地示出了用于执行根据本发明的方法的电子设备的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例中,用于执行所述数据处理方法的设备可以提供多方安全计算服务,多方安全计算可以抽象的理解为:两方分别有各自的私有数据,在不泄漏各自私有数据的情况下,能够计算出关于公共函数的结果;整个计算完成时,只有计算结果对双方可知,且双方均不知对应的数据以及计算过程的中间数据。其中,所述公共函数可以实现多种计算功能如加、减、乘和除等等;且两方的私有数据中至少有一个是密文,即可以进行密文与密文之间的计算,也可以进行密文与明文之间的计算。
本发明实施例中,可以由上述设备所提供的计算引擎进行所述多方安全计算,所述计算引擎中包括多个计算节点,具体可以由计算引擎中各计算节点协同进行多方安全计算。其中,所述计算引擎中计算节点的数量可以按照需求设置,本发明实施例对此不作限制。
其中,在计算过程中,可以将输入数据按照分散规则分散为多个数值,然后将每个数值分散存储到各个计算节点中,各计算节点根据分散存储的数值进行协同计算;其中,所述分散规则可以按照需求设置如加法规则等,本发明实施例对此不作限制。其中,所述所有的数值组成所述输入数据的密文,每个数值可以称为输入数据的密文分片,即所有的密文分片组成所述输入数据的密文,每个密文分片可以被分散存储到一个计算节点。
在某些应用场景中,若希望最后得到的结果是整数结果,则需要执行定点数转整数的操作。当需要对定点数X取整时,由于定点数X被分散为多个密文分片,使得无法直接对定点数X取整;且即使分别对定点数X各个密文分片直接取整,根据每个密文分片得到的取整结果也无法得到对定点数X取整的正确结果;因此本发明实施例提供一种数据处理方法,以实现基于密文的定点数转换为整数。具体如下:
参照图1,示出了本发明的一种数据处理方法实施例的步骤流程图,具体可以包括如下步骤:
步骤102、获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文。
步骤104、依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文。
步骤106、依据各密文分片对应的数组,对所述X进行取整。
本发明实施例中,为了实现对被分散为多个密文分片的定点数X进行取整,可以获取该定点数X对应的多个密文分片,其中,每个计算节点可以获取其中存储的定点数X的密文分片;然后依据定点数X的这多个密文分片进行取整。其中,一种实施例定点数X对应密文分片的数量可以依据计算节点的数量确定,如计算节点为2个,定点数X对应密文分片可以是2个,计算节点为4个,定点数X对应的密文分片可以是4个;以及定点数X对应密文分片对应的数值可以依据分散规则确定,例如分散规则为加法分散规则如X=x1+x2,即满足各密文分片之和等于X即可。例如针对数值1.4,若计算机节点为2个,分散规则为加法规则如X=x1+x2,则可以将1.4分散为0.6和0.8两个密文分片,也可以将1.4分散为1.2和0.2两个密文分片,当然还可以分散为其他密文分片,本发明实施例对此不作限制。
其中,所述定点数X中小数点之后的小数位数可以按照需求设置,本发明实施例对此不作限制;由于在计算机操作中,各个数值均以二进制方式表示,因此本发明实施例对所述定点数X对应二进制中小数点之后比特位的位数也不作限制。
本发明实施例中,各计算节点在获取所述定点数X对应的密文分片后,可以采用其中存储的密文分片进行协同计算,在计算结束后,各计算节点可以将其中存储的密文分片转换为对应的数组;每个密文分片对应的数组中元素数量均与定点数X的二进制比特位的位数相等。
需要说明的是,本发明的方案具体将输入数据(定点数X)分散为多个密文分片的方法,可参照本申请人的,申请号为201910252632.X中介绍的实现方案,在此不做赘述。
本发明实施例中,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文,即通过对各密文分片的数组中对应位置的元素进行计算,可以得到定点数X相应比特位的密文;例如根据定点数X的分散规则,对各密文分片的数组中对应位置的元素进行计算。因此在确定各密文分片对应的数组后,可以对各密文分片对应的数组进行计算,确定所述X的整数部分的密文,进而实现对所述X进行取整。
本发明实施例的一个应用场景中,对分散为两个密文分片0.8和0.6的定点数X=1.4(二进制表示为:1.01100,假设小数点之后比特位的位数为5位)进行取整。可以获取密文分片0.8(二进制表示为0.11001)和0.6(二进制表示为0.10011),然后依据密文分片0.8和0.6进行计算,将密文分片0.8转换为数组A1=[1,0,0,1,0,1](本发明实施例中,数组里的元素,即0和1,可以表示0的密文和1的密文),将密文分片0.6转换为数组A2=[0,0,1,0,0,1]。其中,1.4对应二进制的1-6个比特位分别为:1,0,1,1,0,0;A1中第一个位置的元素“1”和A2中第一个位置的元素“0”组成X第一个比特位“1”的密文,A1中第二个位置的元“0”和A2中第二个位置的元素“0”组成X第二个比特位“0”的密文,依次类推;因此依据A1=[1,0,0,1,0,1]和A2=[0,0,1,0,0,1]进行计算,可以确定定点数1.4的整数部分即1的密文,实现对定点数1.4进行取整。
综上,本发明实施例中,可以获取定点数X的多个密文分片,然后依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组;其中,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文,因此后续可以依据各密文分片对应的数组,对所述X进行取整;进而实现基于密文的定点数转换为整数。
以下对如何依据各密文分片对应的数组,对所述X进行取整进行说明。
参照图2,示出了本发明的一种数据处理方法可选实施例的步骤流程图,具体包括如下步骤:
步骤202、获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文。
本发明实施例中,当需要对分散为多个密文分片的定点数X进行取整时,可以指示各个计算节点获取其中存储的定点数X的密文分片;然后各个计算节点依据各自存储的密文分片进行协同计算,对定点数进行取整。
步骤204、利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
本发明实施例中,各个计算节点可以通过利用比特位提取函数和所述X的多个密文分片进行协同计算;在协同计算的过程中,每个计算节点可以采用比特位提取函数和其中存储的密文分片进行计算,得到对应的中间数据,然后各个计算节点进行中间数据的交互;进而待计算结束后,各个计算节点可以将各自存储的密文分片转换为对应的数组。在计算前,可以先去掉各个密文分片的小数点,例如将各密文分片分别乘以2N,所述N为X对应二进制中小数点之后比特位的位数,之后利用比特位提取函数将各密文分片转换为数组。其中,所述各个计算节点通过利用比特位提取函数和各自存储的密文分片进行协同计算的方案可参照本申请人的,申请号为201910252632.X中介绍的实现方案,在此不做赘述。然后再依据各密文分片对应数组进行计算,对所述X进行取整,具体可以参照步骤206-步骤208。
步骤206、分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素。
步骤208、依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
本发明实施例中,各密文分片对应数组中元素的数量,与X对应二进制中比特位的位数相同,由于是对定点数X进行取整,因此为了减少后续依据各密文分片对应数组进行计算的工作量,本发明的一种实现方式中,可以分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;然后对各密文分片对应数组中保留的元素进行计算,确定所述X的整数部分的密文,实现对X进行取整。其中,所述目标位置可以依据定点数X对应二进制中小数点之后比特位的位数确定,具体的,所述步骤206可以包括以下子步骤22-26:
子步骤22、确定所述X对应二进制中小数点之后比特位的位数N,N为正整数;
子步骤24、依据所述小数部分的位数N,确定目标位置为后N位;
子步骤26、分别丢弃各密文分片对应数组中后N位的元素。
其中,可以确定所述X对应二进制中小数点之后比特位的位数N,并将后N位作为目标位置,然后分别丢弃各密文分片对应数组中后N位的元素。
例如,基于上述例子,X=1.4,对应的二进制表示为:1.01100,被分散为两个密文分片0.8(二进制表示为0.11001)和0.6(二进制表示为0.10011);可以确定X对应二进制中小数点之后比特位的位数N=5;因此在利用比特提取函数基于两个密文分片进行协同计算后,确定密文分片0.8对应的数组A1=[1,0,0,1,0,1],和密文分片0.6对应的数组A2=[0,0,1,0,0,1]后,可以丢弃各个密文分片对应数组中后5位的元素,将A1中后5位丢弃,得到数组A1中保留的元素为“1”,将A2中后5位丢弃,得到数组A2中保留的元素为“0”。
又例如,X=2.6,对应的二进制表示为:10.10011001,被分散为两个密文分片1.2(二进制表示为1.00110011)和1.4(二进制表示为1.01100110);可以确定X对应二进制中小数点之后比特位的位数N=8;因此在利用比特提取函数基于两个密文分片进行协同计算后,确定密文分片1.2对应的数组A3=[1,0,0,1,0,1,1,0,0,1,],和密文分片1.4对应的数组A4=[0,0,1,0,1,0,0,0,0,0]后,可以丢弃各个密文分片对应数组中后8位的元素,将A3中后8位丢弃,得到数组A3中保留的元素为“1”和“0”,将A4中后8位丢弃,得到数组A4中保留的元素为“0”和“0”。
本发明实施例中,一种依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文可以是:依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。其中,可以依据将所述X分散为多个密文分片的分散规则,确定对定点数X对应二进制比特位的分散规则,然后依据X对应二进制比特位的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。
例如:将定点数X=1.4分散为两个密文分片0.8和0.6,其中0.6+0.8=1.4,则对X的分散规则可以称为是加法规则;此时可以确定对X对应二进制比特位的分散规则可以是异或规则,如C=c1⊕c2,其中,C是X对应二进制表示,c1和c2是C按照异或规则进行分散得到的值。因此得到密文分片0.8对应数组保留的元素“1”和密文分片中0.6对应数组保留的元素“0”进行异或运算,得到“1”,即1.4对应二进制的整数部分。
又例如,上述示例将定点数X=2.6分散为两个密文分片1.2和1.4,X对应的分散规则也是加法规则,对X对应二进制比特位的分散规则也可以是异或规则;则可以对密文分片1.2对应数组保留的元素“1”和“0”,与密文分片中1.4对应数组保留的元素“0”和“0”进行位异或运算,得到“10”,即2.6对应二进制的整数部分。
综上,本发明实施例中,可以获取定点数X的多个密文分片,然后依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组;其中,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文,因此后续可以依据各密文分片对应的数组,对所述X进行取整;进而实现基于密文的定点数转换为整数。
其次,本发明实施例在依据各密文分片对应的数组,对所述X进行取整的过程中,可以分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素,然后依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文;进而后续依据各密文分片对应数组进行计算的计算量,提高了对定点数取整的效率。
再次,本发明实施例在依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文的过程中,可以依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文;进而能够准确的对定点数进行取整。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明一种数据处理装置实施例的结构框图,具体可以包括如下模块:
获取模块302,用于获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;
提取模块304,用于依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;
取整模块306,用于依据各密文分片对应的数组,对所述X进行取整。
参照图4,示出了本发明一种数据处理装置可选实施例的结构框图。
本发明一个可选实施例中,所述提取模块304,具体用于利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
本发明一个可选实施例中,所述取整模块306,包括:
元素丢弃子模块3062,用于分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;
数据取整子模块3064,用于依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
本发明一个可选实施例中,所述元素丢弃子模块3062,具体用于确定所述X对应二进制中小数点之后比特位的位数N,N为正整数;依据所述小数部分的位数N,确定目标位置为后N位;分别丢弃各密文分片对应数组中后N位的元素。
本发明一个可选实施例中,所述数据取整子模块3064,用于依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。
本发明实施例中,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文,即通过对各密文分片的数组中对应位置的元素进行计算,可以得到定点数X相应比特位的密文;例如根据定点数X的分散规则,对各密文分片的数组中对应位置的元素进行计算。因此在确定各密文分片对应的数组后,可以对各密文分片对应的数组进行计算,确定所述X的整数部分的密文,进而实现对所述X进行取整。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种可读介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本发明实施例中一个或多个所述的数据处理方法。
本发明实施例还提供了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如上述本发明实施例中一个或多个所述的数据处理方法。
本发明实施例一个示例中提供了一种电子设备,例如服务器,图5示出了可以实现根据本发明的服务器,例如管理服务器、存储服务器、应用服务器、云控服务、服务器集群等。该服务器传统上包括处理器510和以存储器520形式的计算机程序产品或者计算机可读介质。存储器520可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器520具有用于执行上述方法中的任何方法步骤的程序代码531的存储空间530。例如,用于程序代码的存储空间530可以包括分别用于实现上面的方法中的各种步骤的各个程序代码531。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为便携式或者固定存储单元。该存储单元可以具有与图5的服务器中的存储器520类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码,即可以由例如诸如510之类的处理器读取的代码,这些代码当由服务器运行时,导致该服务器执行上面所描述的方法中的各个步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据处理方法、一种数据处理装置和一种电子设备,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;
依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;
依据各密文分片对应的数组,对所述X进行取整。
2.根据权利要求1所述的方法,其特征在于,所述依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,包括:
利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
3.根据权利要求1所述的方法,其特征在于,所述依据各密文分片对应的数组,对所述X进行取整,包括:
分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;
依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
4.根据权利要求3所述的方法,其特征在于,所述分别丢弃各密文分片对应数组中目标位置的元素,包括:
确定所述X对应二进制中小数点之后比特位的位数N,N为正整数;
依据所述小数部分的位数N,确定目标位置为后N位;
分别丢弃各密文分片对应数组中后N位的元素。
5.根据权利要求3所述的方法,其特征在于,所述依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文,包括:
依据将所述X分散为多个密文分片的分散规则,对各密文分片对应数组中保留的元素进行相应的运算,得到所述X的整数部分的密文。
6.一种数据处理装置,其特征在于,包括:
获取模块,用于获取定点数X的多个密文分片,其中,所述多个密文分片组成所述X的密文;
提取模块,用于依据所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组,各密文分片的数组中对应位置的元素组成所述X相应比特位的密文;
取整模块,用于依据各密文分片对应的数组,对所述X进行取整。
7.根据权利要求6所述的装置,其特征在于,
所述提取模块,具体用于利用比特位提取函数和所述X的多个密文分片进行计算,分别将各密文分片转换为对应的数组。
8.根据权利要求6所述的装置,其特征在于,所述取整模块,包括:
元素丢弃子模块,用于分别丢弃各密文分片对应数组中目标位置的元素,得到各密文分片对应数组中保留的元素;
数据取整子模块,用于依据各密文分片对应数组中保留的元素,确定所述X的整数部分的密文。
9.一种可读介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如方法权利要求1-5中一个或多个所述的数据处理方法。
10.一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-5中一个或多个所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910590588.3A CN112182593A (zh) | 2019-07-02 | 2019-07-02 | 一种数据处理方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910590588.3A CN112182593A (zh) | 2019-07-02 | 2019-07-02 | 一种数据处理方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112182593A true CN112182593A (zh) | 2021-01-05 |
Family
ID=73914301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910590588.3A Pending CN112182593A (zh) | 2019-07-02 | 2019-07-02 | 一种数据处理方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112182593A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113469683A (zh) * | 2021-06-30 | 2021-10-01 | 建信金融科技有限责任公司 | 密钥存储方法、装置、电子设备和存储介质 |
-
2019
- 2019-07-02 CN CN201910590588.3A patent/CN112182593A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113469683A (zh) * | 2021-06-30 | 2021-10-01 | 建信金融科技有限责任公司 | 密钥存储方法、装置、电子设备和存储介质 |
CN113469683B (zh) * | 2021-06-30 | 2022-09-27 | 建信金融科技有限责任公司 | 密钥存储方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210158216A1 (en) | Method and system for federated learning | |
US11451370B2 (en) | Secure probabilistic analytics using an encrypted analytics matrix | |
CN111553483A (zh) | 基于梯度压缩的联邦学习的方法、装置及系统 | |
CN109274717B (zh) | 基于区块链的共享存储方法、装置、介质及电子设备 | |
CN111788791B (zh) | 计算机实现的投票过程和系统 | |
CN112182644A (zh) | 一种数据处理方法、装置和电子设备 | |
CN107995003A (zh) | 国际漫游通信的计费和结算方法、相关装置及分布式系统 | |
CN111026359B (zh) | 多方联合判定隐私数据的数值范围的方法和装置 | |
CN111143862B (zh) | 数据处理方法、查询方法、装置、电子设备和系统 | |
CN112464155A (zh) | 一种数据处理方法、多方安全计算系统和电子设备 | |
CN112187469A (zh) | 一种基于密钥因子的sm2多方协同数字签名方法和系统 | |
CN109495266A (zh) | 基于随机数的数据加密方法及装置 | |
CN112668016B (zh) | 一种模型训练方法、装置和电子设备 | |
CN112182593A (zh) | 一种数据处理方法、装置和电子设备 | |
CN111159730B (zh) | 数据处理方法、查询方法、装置、电子设备和系统 | |
CN112668038A (zh) | 一种模型训练方法、装置和电子设备 | |
CN112417478A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN115632777A (zh) | 数据处理方法及电子设备 | |
US20230085239A1 (en) | Querying fully homomorphic encryption encrypted databases using client-side preprocessing or post-processing | |
CN112668037B (zh) | 一种模型训练方法、装置和电子设备 | |
CN112395623B (zh) | 一种数据处理方法、装置和电子设备 | |
CN112395624B (zh) | 一种数据处理方法、装置和电子设备 | |
CN113094735A (zh) | 隐私模型训练的方法 | |
CN112381163A (zh) | 一种用户聚类方法、装置及设备 | |
CN112508571A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210105 |
|
RJ01 | Rejection of invention patent application after publication |