CN116208316A - 节约存储空间的半同态加密方法、装置及存储介质 - Google Patents

节约存储空间的半同态加密方法、装置及存储介质 Download PDF

Info

Publication number
CN116208316A
CN116208316A CN202310464676.5A CN202310464676A CN116208316A CN 116208316 A CN116208316 A CN 116208316A CN 202310464676 A CN202310464676 A CN 202310464676A CN 116208316 A CN116208316 A CN 116208316A
Authority
CN
China
Prior art keywords
encrypted data
plaintext
semi
data packet
homomorphic encryption
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
CN202310464676.5A
Other languages
English (en)
Other versions
CN116208316B (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.)
Lanxiang Zhilian Hangzhou Technology Co ltd
Original Assignee
Lanxiang Zhilian Hangzhou Technology 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 Lanxiang Zhilian Hangzhou Technology Co ltd filed Critical Lanxiang Zhilian Hangzhou Technology Co ltd
Priority to CN202310464676.5A priority Critical patent/CN116208316B/zh
Publication of CN116208316A publication Critical patent/CN116208316A/zh
Application granted granted Critical
Publication of CN116208316B publication Critical patent/CN116208316B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种节约存储空间的半同态加密方法、装置及存储介质,其中节约存储空间的半同态加密方法包括:将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。以解决现有技术中的paillier加密的计算会消耗大量的时间和存储空间,导致算法整体的耗时和通信都需要很长的时间的问题。

Description

节约存储空间的半同态加密方法、装置及存储介质
技术领域
本申请涉及计算机信息处理技术领域,具体涉及一种节约存储空间的半同态加密方法、装置及存储介质。
背景技术
在联邦计算的场景下,我们通常需要使用半同态加密来计算数据直方图,这是一种有效的了解数据特征的方法,在统计意义上十分重要,能有效了解数据的分布和特征,通常这种数据直方图都是用户对自己数据的一种识别和处理,但在联邦机器学习下,多方联合建模则需要别的参与方的数据信息,由于训练是使用交集信息的特征,本方使用己方全部数据计算出的特征直方图往往没有意义,需要结合交集信息,这时候往往需要使用加密的手段来处理数据。
目前通常使用的paillier加密计算特征直方图的方式是采用paillier加密对排序好的数据进行求和,之后解密,即可将单个的特征信息进行隐藏,任何方都只能获取求和后的特征值。
然而,目前paillier加密的计算会消耗大量的时间和存储空间,导致算法整体的耗时和通信都需要很长的时间。
发明内容
本申请实施例的目的在于提供一种节约存储空间的半同态加密方法、装置及存储介质,用以解决现有技术中的paillier加密的计算会消耗大量的时间和存储空间,导致算法整体的耗时和通信都需要很长的时间的问题。
为实现上述目的,本申请实施例提供一种节约存储空间的半同态加密方法,包括:将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;
将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;
获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
可选地,所述将需要加密的明文进行拼接后进行半同态加密,得到加密数据包,包括:
将获取的需要加密的明文从浮点数转换为整数;
将转换为整数的明文按照预设数量进行分组拼接和打包,得到若干数据包,然后进行半同态加密,得到若干所述加密数据包。
可选地,所述得到若干数据包,然后进行半同态加密,得到若干所述加密数据包,包括:
利用公式
Figure SMS_1
,进行半同态加密,得到若干所述加密数据包,其中,M为转换为整数的明文按照预设数量进行分组拼接的数据组,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure SMS_2
的长度为2048bit。
可选地,所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,包括:
利用公式
Figure SMS_3
,得到对应的明文所在的所述加密数据包的位置,其中,d为所述加密数据包的序号,k为所述加密数据包中包含的明文的总数,t为需要进行解包的位置;
利用公式
Figure SMS_4
,得到需要提取的密文在所述加密数据包中的位置,即第e个密文,其中,y为进行分组拼接的明文的预设数量。
可选地,所述按照需要对密文进行移动后求和,以得到求和结果,包括:
利用公式
Figure SMS_5
,将第t个位置的密文移动到规定位置,其中,/>
Figure SMS_6
将需要求和的位置表示为
Figure SMS_7
,得到/>
Figure SMS_8
,通过/>
Figure SMS_9
,得到在密文下的明文的所述求和结果。
为实现上述目的,本申请还提供一种节约存储空间的半同态加密装置,包括:存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;
将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;
获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
为实现上述目的,本申请还提供一种计算机存储介质,其上存储有计算机程序,其中所述计算机程序被机器执行时实现如上所述的方法的步骤。
本申请实施例具有如下优点:
本申请实施例提供一种节约存储空间的半同态加密方法,包括:将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
通过上述方法,基于半同态加密算法,将密文打包,从而将通信和计算缩小,达到算法优化的目的,节省了大量的时间和存储空间,使算法整体的耗时和通信的时长能够得到节省。
附图说明
为了更清楚地说明本申请的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
图1为本申请实施例提供的一种节约存储空间的半同态加密方法的流程图;
图2为本申请实施例提供的一种节约存储空间的半同态加密装置的模块框图。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,下面所描述的本申请不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本申请的实施例的方案可广泛应用在XGB(机器学习模型)的联合训练当中,在XGB联合训练的过程中,假设发起方持有部分特征和标签,参与方持有部分特征:
1、发起方拥有标签,根据标签计算样本一阶梯度
Figure SMS_10
、二阶梯度/>
Figure SMS_11
,对于本地特征,直接明文计算待计算分裂点得分,为计算参与方所拥有特征对应分裂点得分,加密梯度
Figure SMS_12
,/>
Figure SMS_13
,并将加密结果发送至参与方;
在步骤1当中,如果使用普通的paillier加密,对于每个g单独加密,由于每个数都会加密到2048比特,所以此时则会导致通信膨胀过大,本方案将密文进行打包,打包传递g,h,并设计了一套打包下的求和方案,可以大大减少此步骤当中的通信量,提高计算效率;
2、参与方根据分箱信息,分别计算每个分裂点对应的
Figure SMS_14
和/>
Figure SMS_15
,将结果发送至发起方;
3、发起方解密后,根据下述公式计算参与方对应特征分裂点的得分:
Figure SMS_16
,其中,GL和HL为决策树的左节点,GR和HR为决策树的右节点,G和L为决策树的主节点,λ为正则系数。
选取得分最高的节点作为作为当前节点阈值,并计算相关权重。
本申请实施例的方案可以广泛适用于需要使用xgb进行建模学习的场景,例如联合风控,反诈等场景,对计算效率有巨大的提升。
本申请一实施例提供一种节约存储空间的半同态加密方法,参考图1,图1为本申请的一实施方式中提供的一种节约存储空间的半同态加密方法的流程图,应当理解的是,该方法还可以包括未示出的附加框和/或可以省略所示出的框,本申请的范围在此方面不受限制。
在步骤101处,将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包。
在一些实施例中,所述将需要加密的明文进行拼接后进行半同态加密,得到加密数据包,包括:
将获取的需要加密的明文从浮点数转换为整数;
将转换为整数的明文按照预设数量进行分组拼接和打包,得到若干数据包,然后进行半同态加密,得到若干所述加密数据包。
具体地,将需要加密的明文进行拼接之后再进行半同态加密,首先将明文进行拼接,拼接的方法是:首先将输入的明文从浮点数转换为整数,这里假设输入的明文为
Figure SMS_17
ui是浮点数,是一个长度为k的向量,同时精度参数为/>
Figure SMS_18
,对向量中的每一个/>
Figure SMS_19
(表示向量U中的第i个u)计算/>
Figure SMS_20
,之后将m按照预设数量进行分组拼接,在下述实施例中,按照每15个一组拼接起来为例进行说明,计算
Figure SMS_21
,/>
Figure SMS_22
,即M为m的首尾相接,最后如果有剩余不足15个则将那些直接进行打包,之后将M进行半同态加密。
在一些实施例中,所述得到若干数据包,然后进行半同态加密,得到若干所述加密数据包,包括:
利用公式
Figure SMS_23
,进行半同态加密,得到若干所述加密数据包,其中,M为转换为整数的明文按照预设数量进行分组拼接的数据组,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure SMS_24
的长度为2048bit。
具体地,原本paillier计算加密为
Figure SMS_25
,其中c为密文,m为明文,g为群n中的一个生成元,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure SMS_26
的长度为2048bit。
将加密计算简化为
Figure SMS_27
,和原本加密具有同样的代数性质。
在步骤102处,将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果。
具体地,参与方对密文解包的原因是由于发起方将明文进行了打包,如果此时需要对每个明文进行单独的计算则需要进行密文下的解包,含义是在不进行解密操作的前提下,提取出打包密文(加密数据包)中的对于某一特定明文的密文值。
在一些实施例中,所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,包括:
利用公式
Figure SMS_28
,得到对应的明文所在的所述加密数据包的位置,其中,d为所述加密数据包的序号,k为所述加密数据包中包含的明文的总数,t为需要进行解包的位置;
利用公式
Figure SMS_29
,得到需要提取的密文在所述加密数据包中的位置,即第e个密文,其中,y为进行分组拼接的明文的预设数量。
具体地,此处需要利用到密明文的乘法,t为需要密文下解包的位置,明文的总数为k,首先需要计算
Figure SMS_30
得到该明文被封装在密文/>
Figure SMS_31
当中。再计算/>
Figure SMS_32
(此处用分组拼接的预设数量15替换y)得到需要提取的密文是在打包当中的第e个。计算d,e即可得出每个密文具体对应第几个打包密文当中的第几个位置。
在一些实施例中,所述按照需要对密文进行移动后求和,以得到求和结果,包括:
利用公式
Figure SMS_33
,将第t个位置的密文移动到规定位置,其中,/>
Figure SMS_34
将需要求和的位置表示为
Figure SMS_35
,得到/>
Figure SMS_36
,通过/>
Figure SMS_37
,得到在密文下的明文的所述求和结果。
具体地,计算位移因子
Figure SMS_38
,然后计算/>
Figure SMS_39
Figure SMS_40
作为第t个位置的密文。本质上是将第t个位置的密文移动到密文的规定位置。
本申请中密文求和的概念和往常有所不同,密文求和是对几个特定位置的值进行求和,而非对全部数据的求和。
需要求和的位置写为
Figure SMS_41
,一共需要将h个值进行相加。
通过上述的密文解包,可以得到
Figure SMS_42
,计算/>
Figure SMS_43
即可在密文下计算明文求和结果,并发送给发起方。
根据上述实施例的方案,解决了通常的半同态加密通信量大的问题,相比于通常的方案,节省了15倍的存储空间,意味着在通信过程中也可以减少15倍的通信量。密文打包计算同时也计算友好,节约了大量的内存空间,方便了计算过程。
以下实施例以具体示例进行说明:
假设M一共256位,128为存4个32位的明文(m0、m1、m2、m3),实际上一共约1024位,后512位存15个32位的明文,参考表1;
表1:
Figure SMS_44
进行一次位移,具体方法为M乘以
Figure SMS_45
,参考表2;
表2:
Figure SMS_46
如需得到m2+m3,则需要先将M进行2次和3次位移,分别参考表3和表4;
表3:
Figure SMS_47
表4:
Figure SMS_48
之后将以上两个密文相加,即可在对应位置得到m3+m2的结果,求和结果参考表5。
表5:
Figure SMS_49
通过上述方法,基于半同态加密算法,将密文打包,从而将通信和计算缩小,达到算法优化的目的,节省了大量的时间和存储空间,使算法整体的耗时和通信的时长能够得到节省。
图2为本申请实施例提供的一种节约存储空间的半同态加密装置的模块框图。该装置包括:
存储器201;以及与所述存储器201连接的处理器202,所述处理器202被配置成:将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;
将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;
获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
在一些实施例中,所述处理器202还被配置成:所述将需要加密的明文进行拼接后进行半同态加密,得到加密数据包,包括:
将获取的需要加密的明文从浮点数转换为整数;
将转换为整数的明文按照预设数量进行分组拼接和打包,得到若干数据包,然后进行半同态加密,得到若干所述加密数据包。
在一些实施例中,所述处理器202还被配置成:所述得到若干数据包,然后进行半同态加密,得到若干所述加密数据包,包括:
利用公式
Figure SMS_50
,进行半同态加密,得到若干所述加密数据包,其中,M为转换为整数的明文按照预设数量进行分组拼接的数据组,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure SMS_51
的长度为2048bit。
在一些实施例中,所述处理器202还被配置成:所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,包括:
利用公式
Figure SMS_52
,得到对应的明文所在的所述加密数据包的位置,其中,d为所述加密数据包的序号,k为所述加密数据包中包含的明文的总数,t为需要进行解包的位置;
利用公式
Figure SMS_53
,得到需要提取的密文在所述加密数据包中的位置,即第e个密文,其中,y为进行分组拼接的明文的预设数量。
在一些实施例中,所述处理器202还被配置成:所述按照需要对密文进行移动后求和,以得到求和结果,包括:
利用公式
Figure SMS_54
,将第t个位置的密文移动到规定位置,其中,/>
Figure SMS_55
将需要求和的位置表示为
Figure SMS_56
,得到/>
Figure SMS_57
,通过/>
Figure SMS_58
,得到在密文下的明文的所述求和结果。/>
具体实现方法参考前述方法实施例,此处不再赘述。
本申请可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本申请的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
注意,除非另有直接说明,否则本说明书(包含任何所附权利要求、摘要和附图)中所揭示的所有特征皆可由用于达到相同、等效或类似目的的可替代特征来替换。因此,除非另有明确说明,否则所公开的每一个特征仅是一组等效或类似特征的一个示例。在使用到的情况下,进一步地、较优地、更进一步地和更优地是在前述实施例基础上进行另一实施例阐述的简单起头,该进一步地、较优地、更进一步地或更优地后带的内容与前述实施例的结合作为另一实施例的完整构成。在同一实施例后带的若干个进一步地、较优地、更进一步地或更优地设置之间可任意组合的组成又一实施例。
虽然,上文中已经用一般性说明及具体实施例对本申请作了详尽的描述,但在本申请基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本申请精神的基础上所做的这些修改或改进,均属于本申请要求保护的范围。

Claims (10)

1.一种节约存储空间的半同态加密方法,其特征在于,所述方法应用于发起方,包括:
将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;
将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;
获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
2.根据权利要求1所述的节约存储空间的半同态加密方法,其特征在于,所述将需要加密的明文进行拼接后进行半同态加密,得到加密数据包,包括:
将获取的需要加密的明文从浮点数转换为整数;
将转换为整数的明文按照预设数量进行分组拼接和打包,得到若干数据包,然后进行半同态加密,得到若干所述加密数据包。
3.根据权利要求2所述的节约存储空间的半同态加密方法,其特征在于,所述得到若干数据包,然后进行半同态加密,得到若干所述加密数据包,包括:
利用公式
Figure QLYQS_1
,进行半同态加密,得到若干所述加密数据包,其中,M为转换为整数的明文按照预设数量进行分组拼接的数据组,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure QLYQS_2
的长度为2048bit。
4.根据权利要求3所述的节约存储空间的半同态加密方法,其特征在于,所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,包括:
利用公式
Figure QLYQS_3
,得到对应的明文所在的所述加密数据包的位置,其中,d为所述加密数据包的序号,k为所述加密数据包中包含的明文的总数,t为需要进行解包的位置;
利用公式
Figure QLYQS_4
,得到需要提取的密文在所述加密数据包中的位置,即第e个密文,其中,y为进行分组拼接的明文的预设数量。
5.根据权利要求4所述的节约存储空间的半同态加密方法,其特征在于,所述按照需要对密文进行移动后求和,以得到求和结果,包括:
利用公式
Figure QLYQS_5
,将第t个位置的密文移动到规定位置,其中,
Figure QLYQS_6
将需要求和的位置表示为
Figure QLYQS_7
,得到/>
Figure QLYQS_8
,通过
Figure QLYQS_9
,得到在密文下的明文的所述求和结果。
6.一种节约存储空间的半同态加密装置,其特征在于,包括:
存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
将需要加密的明文进行拼接后进行半同态加密,得到若干加密数据包;
将所述加密数据包发送给参与方,以使所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,并按照需要对密文进行移动后求和,以得到求和结果;
获取所述参与方发送的所述求和结果,利用所述求和结果完成后续工作。
7.根据权利要求6所述的节约存储空间的半同态加密装置,其特征在于,所述处理器还被配置成:
所述将需要加密的明文进行拼接后进行半同态加密,得到加密数据包,包括:
将获取的需要加密的明文从浮点数转换为整数;
将转换为整数的明文按照预设数量进行分组拼接和打包,得到若干数据包,然后进行半同态加密,得到若干所述加密数据包。
8.根据权利要求7所述的节约存储空间的半同态加密装置,其特征在于,所述处理器还被配置成:
所述得到若干数据包,然后进行半同态加密,得到若干所述加密数据包,包括:
利用公式
Figure QLYQS_10
,进行半同态加密,得到若干所述加密数据包,其中,M为转换为整数的明文按照预设数量进行分组拼接的数据组,r为一个小于n的随机数,n为模,n=p×q,p,q是两个大素数,n的长度为1024bit,/>
Figure QLYQS_11
的长度为2048bit。
9.根据权利要求8所述的节约存储空间的半同态加密装置,其特征在于,所述处理器还被配置成:
所述参与方对所述加密数据包进行解包,从而得到所述加密数据包中的每个密文在所述加密数据包中的位置,包括:
利用公式
Figure QLYQS_12
,得到对应的明文所在的所述加密数据包的位置,其中,d为所述加密数据包的序号,k为所述加密数据包中包含的明文的总数,t为需要进行解包的位置;
利用公式
Figure QLYQS_13
,得到需要提取的密文在所述加密数据包中的位置,即第e个密文,其中,y为进行分组拼接的明文的预设数量。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被机器执行时实现如权利要求1至5中任一项所述的方法的步骤。
CN202310464676.5A 2023-04-27 2023-04-27 节约存储空间的半同态加密方法、装置及存储介质 Active CN116208316B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310464676.5A CN116208316B (zh) 2023-04-27 2023-04-27 节约存储空间的半同态加密方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310464676.5A CN116208316B (zh) 2023-04-27 2023-04-27 节约存储空间的半同态加密方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN116208316A true CN116208316A (zh) 2023-06-02
CN116208316B CN116208316B (zh) 2023-07-18

Family

ID=86513177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310464676.5A Active CN116208316B (zh) 2023-04-27 2023-04-27 节约存储空间的半同态加密方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN116208316B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014100788A2 (en) * 2012-12-21 2014-06-26 Microsoft Corporation Managed secure computations on encrypted data
US20200021568A1 (en) * 2018-07-16 2020-01-16 Sap Se Private Benchmarking Cloud Service with Enhanced Statistics
CN113449880A (zh) * 2021-08-30 2021-09-28 深圳致星科技有限公司 用于纵向联邦学习决策树模型的异构加速系统及方法
CN114169537A (zh) * 2022-02-11 2022-03-11 神州融安科技(北京)有限公司 一种纵向xgboost决策树的联邦学习方法和系统
CN114696990A (zh) * 2022-05-31 2022-07-01 深圳市洞见智慧科技有限公司 基于全同态加密的多方计算方法、系统及相关设备
CN115102686A (zh) * 2022-06-27 2022-09-23 平安银行股份有限公司 一种半同态加密方法、装置、电子设备及存储介质
US20230087864A1 (en) * 2021-05-10 2023-03-23 Tencent Technology (Shenzhen) Company Limited Secure multi-party computation method and apparatus, device, and storage medium
CN115982424A (zh) * 2023-03-15 2023-04-18 华控清交信息科技(北京)有限公司 一种隐私关键词查询方法、装置及电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014100788A2 (en) * 2012-12-21 2014-06-26 Microsoft Corporation Managed secure computations on encrypted data
US20200021568A1 (en) * 2018-07-16 2020-01-16 Sap Se Private Benchmarking Cloud Service with Enhanced Statistics
US20230087864A1 (en) * 2021-05-10 2023-03-23 Tencent Technology (Shenzhen) Company Limited Secure multi-party computation method and apparatus, device, and storage medium
CN113449880A (zh) * 2021-08-30 2021-09-28 深圳致星科技有限公司 用于纵向联邦学习决策树模型的异构加速系统及方法
CN114169537A (zh) * 2022-02-11 2022-03-11 神州融安科技(北京)有限公司 一种纵向xgboost决策树的联邦学习方法和系统
CN114696990A (zh) * 2022-05-31 2022-07-01 深圳市洞见智慧科技有限公司 基于全同态加密的多方计算方法、系统及相关设备
CN115102686A (zh) * 2022-06-27 2022-09-23 平安银行股份有限公司 一种半同态加密方法、装置、电子设备及存储介质
CN115982424A (zh) * 2023-03-15 2023-04-18 华控清交信息科技(北京)有限公司 一种隐私关键词查询方法、装置及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谢世茂: "基于纵向联邦学习的快速提升树算法", 信息技术与标准化 *

Also Published As

Publication number Publication date
CN116208316B (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
Chen et al. Homomorphic lower digits removal and improved FHE bootstrapping
US11843687B2 (en) Systems, devices, and processes for homomorphic encryption
US7933404B2 (en) Primitives for fast secure hash functions and stream ciphers
JP2017515195A (ja) 断熱量子計算を介してデジタル論理制約問題を解く
EP2351287B1 (en) Method of generating a cryptographic key, network and computer program therefor
US20190044697A1 (en) Methods and systems for enhanced data-centric homomorphic encryption searching using geometric algebra
CN111339545B (zh) 用于生成数据标签的方法、电子设备及计算机存储介质
CN113098691B (zh) 数字签名方法、签名信息的验证方法、相关装置及电子设备
Narumanchi et al. Performance analysis of sorting of FHE data: integer-wise comparison vs bit-wise comparison
CN115664747A (zh) 加密方法和装置
US9590805B1 (en) Ladder-based cryptographic techniques using pre-computed points
CN116208316B (zh) 节约存储空间的半同态加密方法、装置及存储介质
Bos et al. The matrix reloaded: Multiplication strategies in FrodoKEM
CN115765969B (zh) 一种基于同态加密的隐匿集合求交方法、装置及存储介质
US11728977B2 (en) Method for efficient and practical key distribution in network coding systems
US11290265B2 (en) Server device, secret equality determination system, secret equality determination method and secret equality determination program recording medium
KR101925614B1 (ko) 타원곡선 암호화 시스템에서의 스칼라 곱셈 처리 방법 및 타원곡선 암호화 시스템
WO2022218033A1 (zh) 一种数据处理的方法和装置
Fouque et al. Cryptanalysis of the co-ACD assumption
KR101976315B1 (ko) 이산대칭채널에서의 극 부호 설계 방법 및 그 장치
Tewani et al. Image encryption using permutation–diffusion approach
JP5388716B2 (ja) 分散情報生成装置、秘密情報復元装置、分散情報生成方法、秘密情報復元方法およびプログラム
Selvi et al. Hyper elliptic curve based homomorphic encryption scheme for cloud data security
Gong et al. Combining MILP modeling with algebraic bias evaluation for linear mask search: improved fast correlation attacks on SNOW
CN111339546B (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