CN115659380B - 一种密文数据拟合计算方法、装置及电子设备 - Google Patents
一种密文数据拟合计算方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115659380B CN115659380B CN202211671748.5A CN202211671748A CN115659380B CN 115659380 B CN115659380 B CN 115659380B CN 202211671748 A CN202211671748 A CN 202211671748A CN 115659380 B CN115659380 B CN 115659380B
- Authority
- CN
- China
- Prior art keywords
- power
- ciphertext data
- value
- function
- product
- 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.)
- Active
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本申请公开了一种密文数据拟合计算方法、装置及电子设备,涉及隐私计算技术领域,包括:获取待计算的密文数据;按照预设的缩放倍数,分别计算密文数据除以该缩放倍数的商值的m‑1次幂与密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,拟合函数为次幂多项式函数;按照m的取值为从2到k的整数,计算a0,a1乘以密文数据的乘积,am乘以该缩放倍数的m‑1次幂乘以m次幂数值的乘积的和值,其中,a0为拟合函数的常数项,a1为拟合函数的1次幂的系数,am为拟合函数的m次幂的系数。采用该方案,提高了使用拟合函数对密文数据进行密文计算的计算精度。
Description
技术领域
本申请涉及隐私计算技术领域,尤其涉及一种密文数据拟合计算方法、装置及电子设备。
背景技术
在涉及到多数据源的数据融合计算过程中,传统的数据计算方式存在数据泄露的风险,因此出现了多方安全计算技术,多方安全计算属于隐私计算,其可以在对明文数据进行加密得到的密文数据上直接进行计算,虽然牺牲了一定的计算效率,但既实现了数据共享,又能够保证数据使用的安全性。
在密文计算中,经常需要使用密文计算函数对密文数据进行计算,针对一些复杂的密文计算函数,直接对密文数据进行计算将需要消耗大量计算资源,且计算效率较低,所以,在实际应用中,可以对密文计算函数进行数值逼近,即使用多项式对密文计算函数进行拟合,得到拟合函数,并在满足误差要求的情况下,使用拟合函数对密文数据进行计算,结果作为密文计算结果。
进行数值逼近使用的多项式,可以是次幂多项式,形式如下:
P(x) = a0 + a1 x + a2 x^2 + a3 x^3 + ak x^k;
其中,上述多项式P(x)的最高次幂为k,a0为常数项,a1至ak为系数。选定了多项式的最高次幂以及逼近范围,即可以按照最坏情形误差最小化的原则,基于给定的一些样本点,对密文计算函数进行数值逼近,得到拟合函数。从而可以将复杂计算简单化,提高计算效率。
然而,由于密文数据为加密数据,其数值往往比较大,对其进行高次幂的计算,其结果将是一个很大数,很可能导致溢出的情况发生,从而导致计算精度不够,存在缺失。
发明内容
本申请实施例提供一种密文数据拟合计算方法、装置及电子设备,用以解决现有技术中存在的使用拟合函数对密文数据进行密文计算时计算精度较低的问题。
本申请实施例提供一种密文数据拟合计算方法,包括:
获取待计算的密文数据;
按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,所述拟合函数为次幂多项式函数;
按照m的取值为从2到k的整数,计算a0,a1乘以所述密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以所述m次幂数值的乘积的和值,其中,a0为所述拟合函数的常数项,a1为所述拟合函数的1次幂的系数,am为所述拟合函数的m次幂的系数。
进一步的,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内。
进一步的,在所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积之前,还包括:
从预设的多个数值区间中,确定所述密文数据的明文数据所位于的数值区间,作为所属数值区间,所述多个数值区间中的每个数值区间对应有缩放倍数,每个数值区间对应有待计算函数的拟合函数;
所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,包括:
按照所述所属数值区间对应的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,k为所述所属数值区间对应的拟合函数的最高次幂,且所述所属数值区间中的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
其中,a0为所述所属数值区间对应的拟合函数的常数项,a1为所述所属数值区间对应的拟合函数的1次幂的系数,am为所述所属数值区间对应的拟合函数的m次幂的系数。
进一步的,所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,包括:
将所述密文数据作为res的初始值,采用如下公式进行i次迭代:
res = [res, res*res[-1]/s];
其中,s为预设的缩放倍数,res[-1]为数组res中的最后一个元素,进行i次迭代得到的数组res包括2的i次幂个元素,所述2的i次幂个元素中包括所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积。
进一步的,所述待计算函数为密文计算任务中的密文计算函数;或者
所述待计算函数为密文计算任务中的密文计算函数加上预设常数,所述待计算函数为奇函数或偶函数,所述方法,还包括:
计算所述和值减去预设常数,结果作为按照所述密文计算函数计算所述密文数据的密文计算结果。
本申请实施例还提供一种密文数据拟合计算装置,包括:
数据获取模块,用于获取待计算的密文数据;
第一计算模块,用于按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,所述拟合函数为次幂多项式函数;
第二计算模块,用于按照m的取值为从2到k的整数,计算a0,a1乘以所述密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以所述m次幂数值的乘积的和值,其中,a0为所述拟合函数的常数项,a1为所述拟合函数的1次幂的系数,am为所述拟合函数的m次幂的系数。
进一步的,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内。
进一步的,还包括:
区间确定模块,用于从预设的多个数值区间中,确定所述密文数据的明文数据所位于的数值区间,作为所属数值区间,所述多个数值区间中的每个数值区间对应有缩放倍数,每个数值区间对应有待计算函数的拟合函数;
所述第一计算模块,具体用于按照所述所属数值区间对应的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,k为所述所属数值区间对应的拟合函数的最高次幂,且所述所属数值区间中的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
其中,a0为所述所属数值区间对应的拟合函数的常数项,a1为所述所属数值区间对应的拟合函数的1次幂的系数,am为所述所属数值区间对应的拟合函数的m次幂的系数。
进一步的,所述第一计算模块,具体用于将所述密文数据作为res的初始值,采用如下公式进行i次迭代:
res = [res, res*res[-1]/s];
其中,s为预设的缩放倍数,res[-1]为数组res中的最后一个元素,进行i次迭代得到的数组res包括2的i次幂个元素,所述2的i次幂个元素中包括所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积。
进一步的,所述待计算函数为密文计算任务中的密文计算函数;或者
所述待计算函数为密文计算任务中的密文计算函数加上预设常数,所述待计算函数为奇函数或偶函数,所述第二计算模块,还用于计算所述和值减去预设常数,结果作为按照所述密文计算函数计算所述密文数据的密文计算结果。
本申请实施例还提供一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述任一密文数据拟合计算方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一密文数据拟合计算方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一密文数据拟合计算方法。
本申请有益效果包括:
本申请实施例提供的方法中,在对密文数据进行密文计算的过程中,使用待计算函数的拟合函数进行计算,并且,在针对密文数据的m次幂进行计算时,是计算密文数据除以预设的缩放倍数的商值的m-1次幂与密文数据的乘积,由于将密文数据按照该缩放倍数进行缩小,使得缩小后的商值的m-1次幂与密文数据的乘积,相比密文数据的m次幂,数值更小,降低了计算结果发生数值溢出的可能性,并在拟合函数的m次幂项的计算中,系数am乘以该缩放倍数,从而在确保计算结果准确的情况下,降低了发生数值溢出的可能性,提高了使用拟合函数对密文数据进行密文计算的计算精度。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中:
图1为本申请实施例提供的密文数据拟合计算方法的流程图;
图2为本申请实施例中Sigmoid函数的函数图像示意图;
图3为本申请另一实施例提供的密文数据拟合计算方法的流程图;
图4为本申请实施例提供的密文数据拟合计算装置的结构示意图;
图5为本申请另一实施例提供的密文数据拟合计算装置的结构示意图;
图6为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了给出提高使用拟合函数对密文数据进行密文计算的计算精度的实现方案,本申请实施例提供了一种密文数据拟合计算方法、装置及电子设备,以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请实施例提供一种密文数据拟合计算方法,如图1所示,包括:
步骤11、获取待计算的密文数据;
步骤12、按照预设的缩放倍数,分别计算密文数据除以该缩放倍数的商值的m-1次幂与密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,拟合函数为次幂多项式函数;
步骤13、按照m的取值为从2到k的整数,计算a0,a1乘以密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以m次幂数值的乘积的和值,其中,a0为拟合函数的常数项,a1为拟合函数的1次幂的系数,am为拟合函数的m次幂的系数。
采用本申请实施例提供的上述密文数据拟合计算方法,在对密文数据进行密文计算的过程中,使用待计算函数的拟合函数进行计算,并且,在针对密文数据的m次幂进行计算时,是计算密文数据除以预设的缩放倍数的商值的m-1次幂与密文数据的乘积,由于将密文数据按照该缩放倍数进行缩小,使得缩小后的商值的m-1次幂与密文数据的乘积,相比密文数据的m次幂,数值更小,降低了计算结果发生数值溢出的可能性,并在拟合函数的m次幂项的计算中,系数am乘以该缩放倍数,从而在确保计算结果准确的情况下,降低了发生数值溢出的可能性,提高了使用拟合函数对密文数据进行密文计算的计算精度。
本申请实施例中,预设的缩放倍数,可以基于实际应用的需要进行设置,例如,可以基于密文数据的取值大小以及拟合函数的最高次幂k的值进行选择。
在实际应用中,参与密文计算的密文数据的明文数据往往是在一定数值范围内的,关于预设的缩放倍数,可以按照满足明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内的要求,进行设置。
本申请实施例提供的上述方法中,待计算函数可以为密文计算任务中的密文计算函数,即直接对密文计算函数进行拟合,得到拟合函数,按照拟合函数对密文数据的计算的结果,即作为密文计算结果。
待计算函数也可以为密文计算任务中的密文计算函数加上预设常数,且待计算函数为奇函数或偶函数,相应的,本申请实施例提供的上述方法中,在计算出a0,a1乘以密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以m次幂数值的乘积的和值后,计算该和值减去预设常数,结果作为按照该密文计算函数计算该密文数据的密文计算结果。
由于通过将密文计算函数加上预设常数,使得到的待计算函数为奇函数或偶函数,所以在进行数值逼近的函数拟合时,只需要针对正数区间进行拟合即可,相应的,在计算时,如果待计算函数为偶函数,那么针对负数的密文数据,直接按照对应的正数进行计算即可,如果待计算函数为奇函数,那么针对负数的密文数据,按照对应的整数进行计算且结果取负即可,可以进一步的提高计算效率。
例如,针对Sigmoid函数,其表达式为S(x)=1/(1+e^x),其函数图像如2所示,从中可知,将函数S(x)减去0.5(即加上-5)得到的函数为奇函数,即g(x)=S(x)-0.5为奇函数,此时,仅针对正数区间进行拟合和计算即可。
本申请实施例中,为了使得进行数值逼近得到的拟合函数在计算过程中产生的误差更小,可以针对多个数值区间,分别进行数值逼近,得到分别与每个数值区间对应的拟合函数。
例如,针对Sigmoid函数,基于其表达式和图2所示的函数图像可知,随着x的增大其结果趋向于1,随着x的减小其结果趋向于0,所以,按照误差小于2e-9的要求,可以将数值区间划分为小于-20,大于20,以及[-20,20],当x>20时S(x)=1,当x<-20时S(x)=0,并在[-20,20]范围内,进行多项式拟合,得到形式为次幂多项式的拟合函数P(x)。
进一步的,如果是针对g(x)=S(x)-0.5进行拟合,则可以在[0,20]范围内进行多项式拟合。
为了降低误差,进一步提高计算结果的准确性,还可以将数值区间[0,20]进一步进行拆分,根据函数的增长速度以及拟合过程中针对误差的计算,可以将数值区间[0,20]进一步拆分为[0,8]和[8,20],分别针对每个数值区间进行多项式拟合,得到该数值区间对应的拟合函数。
本申请实施例中,针对多个数值区间中的每个数值区间还设置有对应的缩放倍数,下面基于此种情况对本申请实施例提供的方法进行详细描述,如图3所示,包括:
步骤31、获取待计算的密文数据。
步骤32、从预设的多个数值区间中,确定该密文数据的明文数据所位于的数值区间,作为所属数值区间。
本步骤中,可以计算出数值区间的端点数值的加密数据,并通过比较待计算的密文数据与端点数值的加密数据之间的大小关系,确定该密文数据的明文数据所位于的数值区间。
步骤33、按照该所属数值区间对应的缩放倍数,分别计算该密文数据除以该缩放倍数的商值的m-1次幂与该密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂。
本步骤中,具体可以如下方式计算该密文数据除以该缩放倍数的商值的m-1次幂与该密文数据的乘积:
将密文数据作为res的初始值,即res = [x],其中,x为密文数据;
采用如下公式进行i次迭代:
res = [res, res*res[-1]/s];
其中,s为预设的缩放倍数(scale),res[-1]为数组res中的最后一个元素,进行i次迭代得到的数组res包括2的i次幂个元素,2的i次幂个元素中包括密文数据除以该缩放倍数的商值的m-1次幂与密文数据的乘积。
即m次幂数值为x(x/8)^(m-1)。
例如,假设在示例一中,拟合函数的最高次幂k的值为16,缩放倍数s的值为8,按照上述公式进行4次迭代,过程如下:
res的初始值为res = [x];
第1次迭代之后,res = [x, x(x/8)];
第2次迭代之后,res = [x, x(x/8), x(x/8)^2, x(x/8)^3];
第3次迭代之后,res = [x, x(x/8), x(x/8)^2, x(x/8)^3,…,x(x/8)^7];
第4次迭代之后,res = [x, x(x/8), x(x/8)^2, x(x/8)^3,…,x(x/8)^15];
通过上述4次迭代计算,得到x的m次幂数值,即x(x/8)^(m-1),m的取值为从2到k,得到k-1个乘积,加上x本身作为密文数据的1次幂数值,共计得到k个结果。
采用上述迭代计算的计算过程,可以进一步的提高计算效率。
本步骤中,关于每个数值区间对应的缩放倍数,可以按照满足该数值区间的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内的要求,进行设置。
步骤34、按照m的取值为从2到k的整数,计算a0,a1乘以该密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以该m次幂数值的乘积的和值。
其中,按照上述拟合函数P(x),a0为该所属数值区间对应的拟合函数的常数项,a1为该所属数值区间对应的拟合函数的1次幂的系数,am为该所属数值区间对应的拟合函数的m次幂的系数。
本申请实施例中,采用如下格式的次幂多项式的拟合函数:
P(x) = a0 + a1 x + a2 x^2 + a3 x^3 + ak x^k;
相应的,本步骤中,具体可以采用如下公式进行计算:
Q(x) = a0 + a1 x + a2 s x(x/s) + a3 s^2 x(x/s)^2 + ak s^(k-1) x(x/s)^(k-1);
即得到的计算结果与采用上述拟合函数P(x)得到的计算结果相同。
例如,按照上述示例一中,拟合函数的最高次幂k的值为16,缩放倍数s的值为8,则按照如下公式计算:
Q(x) = a0 + a1 x + a2 8 x(x/8) + a3 8^2 x(x/8)^2 + a16 8^15 x(x/8)^15;
与采用P(x) = a0 + a1 x + a2 x^2 + a3 x^3 + a16 x^16的计算结果相同。
基于同一发明构思,根据本申请上述实施例提供的密文数据拟合计算方法,相应地,本申请另一实施例还提供了一种密文数据拟合计算装置,其结构示意图如图4所示,具体包括:
数据获取模块41,用于获取待计算的密文数据;
第一计算模块42,用于按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,所述拟合函数为次幂多项式函数;
第二计算模块43,用于按照m的取值为从2到k的整数,计算a0,a1乘以所述密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以所述m次幂数值的乘积的和值,其中,a0为所述拟合函数的常数项,a1为所述拟合函数的1次幂的系数,am为所述拟合函数的m次幂的系数。
进一步的,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内。
进一步的,如图5所示,还包括:
区间确定模块44,用于从预设的多个数值区间中,确定所述密文数据的明文数据所位于的数值区间,作为所属数值区间,所述多个数值区间中的每个数值区间对应有缩放倍数,每个数值区间对应有待计算函数的拟合函数;
所述第一计算模块42,具体用于按照所述所属数值区间对应的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,k为所述所属数值区间对应的拟合函数的最高次幂,且所述所属数值区间中的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
其中,a0为所述所属数值区间对应的拟合函数的常数项,a1为所述所属数值区间对应的拟合函数的1次幂的系数,am为所述所属数值区间对应的拟合函数的m次幂的系数。
进一步的,所述第一计算模块42,具体用于将所述密文数据作为res的初始值,采用如下公式进行i次迭代:
res = [res, res*res[-1]/s];
其中,s为预设的缩放倍数,res[-1]为数组res中的最后一个元素,进行i次迭代得到的数组res包括2的i次幂个元素,所述2的i次幂个元素中包括所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积。
进一步的,所述待计算函数为密文计算任务中的密文计算函数;或者
所述待计算函数为密文计算任务中的密文计算函数加上预设常数,所述待计算函数为奇函数或偶函数,所述第二计算模块43,还用于计算所述和值减去预设常数,结果作为按照所述密文计算函数计算所述密文数据的密文计算结果。
上述各模块的功能可对应于图1和图3所示流程中的相应处理步骤,在此不再赘述。
本申请的实施例所提供的密文数据拟合计算装置可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要密文数据拟合计算装置具有上述功能,都应该在本申请的保护范围之内。
本申请实施例还提供一种电子设备,如图6所示,包括处理器61和机器可读存储介质62,所述机器可读存储介质62存储有能够被所述处理器61执行的机器可执行指令,所述处理器61被所述机器可执行指令促使:实现上述任一密文数据拟合计算方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一密文数据拟合计算方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一密文数据拟合计算方法。
上述电子设备中的机器可读存储介质可以包括随机存取存储器(Random AccessMemory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质,计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种密文数据拟合计算方法,其特征在于,包括:
获取待计算的密文数据;
按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,所述拟合函数为次幂多项式函数,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
按照m的取值为从2到k的整数,计算a0,a1乘以所述密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以所述m次幂数值的乘积的和值,其中,a0为所述拟合函数的常数项,a1为所述拟合函数的1次幂的系数,am为所述拟合函数的m次幂的系数。
2.如权利要求1所述的方法,其特征在于,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内。
3.如权利要求1所述的方法,其特征在于,在所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积之前,还包括:
从预设的多个数值区间中,确定所述密文数据的明文数据所位于的数值区间,作为所属数值区间,所述多个数值区间中的每个数值区间对应有缩放倍数,每个数值区间对应有待计算函数的拟合函数;
所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,包括:
按照所述所属数值区间对应的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,k为所述所属数值区间对应的拟合函数的最高次幂,且所述所属数值区间中的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
其中,a0为所述所属数值区间对应的拟合函数的常数项,a1为所述所属数值区间对应的拟合函数的1次幂的系数,am为所述所属数值区间对应的拟合函数的m次幂的系数。
4.如权利要求1所述的方法,其特征在于,所述按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,包括:
将所述密文数据作为res的初始值,采用如下公式进行i次迭代:
res = [res, res*res[-1]/s];
其中,s为预设的缩放倍数,res[-1]为数组res中的最后一个元素,进行i次迭代得到的数组res包括2的i次幂个元素,所述2的i次幂个元素中包括所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积。
5.如权利要求1所述的方法,其特征在于,所述待计算函数为密文计算任务中的密文计算函数;或者
所述待计算函数为密文计算任务中的密文计算函数加上预设常数,所述待计算函数为奇函数或偶函数,所述方法,还包括:
计算所述和值减去预设常数,结果作为按照所述密文计算函数计算所述密文数据的密文计算结果。
6.一种密文数据拟合计算装置,其特征在于,包括:
数据获取模块,用于获取待计算的密文数据;
第一计算模块,用于按照预设的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,作为m次幂数值,其中,m的取值为从2到k的整数,k为待计算函数的拟合函数的最高次幂,所述拟合函数为次幂多项式函数,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
第二计算模块,用于按照m的取值为从2到k的整数,计算a0,a1乘以所述密文数据的乘积,am乘以该缩放倍数的m-1次幂乘以所述m次幂数值的乘积的和值,其中,a0为所述拟合函数的常数项,a1为所述拟合函数的1次幂的系数,am为所述拟合函数的m次幂的系数。
7.如权利要求6所述的装置,其特征在于,所述密文数据的明文数据的取值范围的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内。
8.如权利要求6所述的装置,其特征在于,还包括:
区间确定模块,用于从预设的多个数值区间中,确定所述密文数据的明文数据所位于的数值区间,作为所属数值区间,所述多个数值区间中的每个数值区间对应有缩放倍数,每个数值区间对应有待计算函数的拟合函数;
所述第一计算模块,具体用于按照所述所属数值区间对应的缩放倍数,分别计算所述密文数据除以该缩放倍数的商值的m-1次幂与所述密文数据的乘积,k为所述所属数值区间对应的拟合函数的最高次幂,且所述所属数值区间中的最大数值除以该缩放倍数的商值的k-1次幂与该最大数值的乘积在数值溢出范围之内;
其中,a0为所述所属数值区间对应的拟合函数的常数项,a1为所述所属数值区间对应的拟合函数的1次幂的系数,am为所述所属数值区间对应的拟合函数的m次幂的系数。
9.一种电子设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-5任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211671748.5A CN115659380B (zh) | 2022-12-26 | 2022-12-26 | 一种密文数据拟合计算方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211671748.5A CN115659380B (zh) | 2022-12-26 | 2022-12-26 | 一种密文数据拟合计算方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115659380A CN115659380A (zh) | 2023-01-31 |
CN115659380B true CN115659380B (zh) | 2023-03-21 |
Family
ID=85023085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211671748.5A Active CN115659380B (zh) | 2022-12-26 | 2022-12-26 | 一种密文数据拟合计算方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115659380B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106160995B (zh) * | 2015-04-21 | 2019-04-16 | 郑珂威 | 基于系数映射变换的多项式完全同态加密方法及系统 |
CN106850183B (zh) * | 2017-01-22 | 2019-12-27 | 蒋林智 | 一种全同态加密密文除法实现方法 |
US11637700B2 (en) * | 2020-08-14 | 2023-04-25 | Samsung Electronics Co., Ltd. | Method and apparatus with encryption based on error variance in homomorphic encryption |
CN114048519A (zh) * | 2021-10-27 | 2022-02-15 | 浙江数秦科技有限公司 | 一种基于多项式拟合的隐私计算方法 |
CN115361131B (zh) * | 2022-10-21 | 2022-12-13 | 华控清交信息科技(北京)有限公司 | 一种密文数据计算方法、装置和电子设备 |
-
2022
- 2022-12-26 CN CN202211671748.5A patent/CN115659380B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115659380A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10574260B2 (en) | Techniques for floating-point number conversion | |
US11023801B2 (en) | Data processing method and apparatus | |
KR100528269B1 (ko) | 부동소수점하드웨어를사용하여마이크로프로세서정수나눗셈연산들을실행하기위한방법및장치 | |
CN106855952B (zh) | 基于神经网络的计算方法及装置 | |
US10534576B2 (en) | Optimization apparatus and control method thereof | |
Arnold et al. | Output-sensitive algorithms for sumset and sparse polynomial multiplication | |
WO2013109532A1 (en) | Algebraic processor | |
CN115659380B (zh) | 一种密文数据拟合计算方法、装置及电子设备 | |
US20180203669A1 (en) | Digit recurrence division | |
CN115062299B (zh) | 一种针对数据泄露的安全性检测方法、装置及电子设备 | |
CN116306030A (zh) | 考虑预测误差和波动分布的新能源预测动态场景生成方法 | |
CN103190077A (zh) | 数字计数器和用于测量时段的方法 | |
McFarland | A modified ziggurat algorithm for generating exponentially and normally distributed pseudorandom numbers | |
CN115328438B (zh) | 一种数据处理方法、装置及电子设备 | |
Kupriianova et al. | A domain splitting algorithm for the mathematical functions code generator | |
CN110750752B (zh) | 一种模拟量数据的插值方法及装置 | |
Boldyrev et al. | An approach to multidimensional nonlinear optimization | |
Asim et al. | Centered Symmetric Quantization for Hardware-Efficient Low-Bit Neural Networks. | |
CN114706557B (zh) | 一种asic芯片及蒙哥马利模乘的实现方法和装置 | |
KR20160017319A (ko) | 연산 장치, 그것의 몽고메리 파라미터 계산 방법 및 모듈러 곱셈 방법 | |
CN116127523B (zh) | 一种隐私计算中的数据处理方法、装置及电子设备 | |
Liu et al. | Fast and Scaled Counting-Based Stochastic Computing Divider Design | |
CN116070282B (zh) | 一种隐私计算中的数据处理方法、装置及电子设备 | |
CN108595148A (zh) | 除法函数实现方法、电路、芯片以及系统 | |
CN116301716B (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 |