CN116095174A - 一种业务处理的方法、装置、存储介质及电子设备 - Google Patents

一种业务处理的方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN116095174A
CN116095174A CN202211738531.1A CN202211738531A CN116095174A CN 116095174 A CN116095174 A CN 116095174A CN 202211738531 A CN202211738531 A CN 202211738531A CN 116095174 A CN116095174 A CN 116095174A
Authority
CN
China
Prior art keywords
data
secret
processed
data processing
mantissa
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
Application number
CN202211738531.1A
Other languages
English (en)
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202211738531.1A priority Critical patent/CN116095174A/zh
Publication of CN116095174A publication Critical patent/CN116095174A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书公开了一种业务处理的方法、装置、存储介质及电子设备。首先,接收业务方发送的数据处理请求,数据处理请求中携带有密态业务数据。其次,预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。而后,根据值域范围,判断处理密态业务数据后得到的数据处理结果是否会数据溢出。最后,若是,根据值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据调整后密态数据,进行业务处理。本方法可以提高业务处理过程中的运算结果的精度以及正确率。

Description

一种业务处理的方法、装置、存储介质及电子设备
技术领域
本说明书涉及计算机技术领域,尤其涉及一种业务处理的方法、装置、存储介质及电子设备。
背景技术
随着互联网的发展和云计算概念的诞生,以及人们在密文搜索、电子投票、移动代码和多方计算等方面的需求日益增加,利用密态运算技术可以先对多个业务数据进行加密,再对加密后的业务数据进行计算,得到加密后的运算结果。然后,对加密后的运算数据进行解密,得到运算结果。该运算结果与各业务数据在明文状态下进行运算的运算结果相同。从而,使得运算方无法得知业务数据的内容,提高信息的安全性,保护用户的隐私安全。
目前,在运算过程中,任何一方都不知道这些中间运算结果的大小,若这些中间运算结果发生溢出或者有效位不足的情况,会导致中间运算结果中的部分数字丢失,从而,使得运算结果出错。
因此,如何能够提高业务处理过程中的运算结果的精度以及正确率,则是一个亟待解决的问题。
发明内容
本说明书提供一种业务处理的方法、装置、存储介质及电子设备,以提高业务处理过程中的运算结果的精度以及正确率。
本说明书采用下述技术方案:
本说明书提供了一种业务处理的方法,包括:
接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据;
预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围;
根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出;
若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
可选地,所述数据处理请求中还携带有所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围;
预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围,具体包括:
根据对所述密态业务数据进行数据处理的算术表达式、所述密态业务数据的数据量以及所述密态业务数据的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
可选地,根据对所述密态业务数据进行数据处理的算术表达式、所述密态业务数据的数据量以及所述密态业务数据的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围,具体包括:
根据所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围,生成所述测试数据,所述测试数据为明文数据,所述测试数据对应的数据量与所述密态业务数据对应的数据量相匹配;
对所述测试数据进行数据处理,得到所述测试数据的数据处理结果的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
可选地,所述密态业务数据为浮点类型的数据或整型的数据,所述密态业务数据由密态尾数以及明文指数组成,所述密态尾数是多方安全计算技术中的变量密文或同态加密技术中的变量密文。
可选地,根据所述值域范围,对所述待处理密态数据进行调整,得到调整后密态数据,具体包括:
根据所述值域范围中最大值的有效位数、对所述密态业务数据进行数据处理的算术表达式以及所述待处理密态数据的密态尾数的最大有效位数,确定所述待处理密态数据的密态尾数所需移位的位数;
按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的密态尾数进行移位,得到所述待处理密态数据的移位后的密态尾数,并按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的明文指数进行调整,得到所述待处理密态数据的调整后的明文指数;
根据所述待处理密态数据的移位后的密态尾数以及所述待处理密态数据的调整后的明文指数,得到调整后密态数据。
可选地,根据所述值域范围中最大值的有效位数、对所述密态业务数据进行数据处理的算术表达式以及所述待处理密态数据的密态尾数的最大有效位数,确定所述待处理密态数据的密态尾数所需移位的位数,具体包括:
根据所述值域范围中最大值的有效位数,确定目标有效位数,其中,所述目标有效位数为所述值域范围中最大值的密态尾数的有效位数;
若所述算术表达式为乘法表达式,且所述目标有效位数大于所述待处理密态数据的密态尾数的设定位数,则将所述待处理密态数据的密态尾数的有效位数调整为设定位数,所述设定位数为所述待处理密态数据的密态尾数的最大有效位数的设定比例;
根据所述目标有效位数与所述待处理密态数据的密态尾数的设定位数之间的差值,确定所述待处理密态数据的密态尾数所需移位的位数。
可选地,所述方法还包括:
若所述算术表达式为加法表达式,且第一加数对应的明文指数大于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第一加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
可选地,所述方法还包括:
若所述算术表达式为加法表达式,且第一加数对应的明文指数小于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第二加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
可选地,所述方法还包括:
若所述值域范围大于设定值域范围,则将所述待处理密态数据进行精度转换,得到转换后密态数据,所述转换后密态数据的数据精度大于所述待处理密态数据的数据精度;
通过预设的处理转换后密态数据的数据处理方式,对所述转换后密态数据进行数据处理,确定所述转换后密态数据的数据处理结果;
将所述转换后密态数据的数据处理结果进行精度还原,得到还原后的数据处理结果,进行业务处理。
本说明书提供了一种业务处理的装置,包括:
接收模块,用于接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据;
预估模块,用于预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围;
判断模块,用于根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出;
调整模块,用于若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述业务处理的方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述业务处理的方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的业务处理的方法中,首先,接收业务方发送的数据处理请求,数据处理请求中携带有密态业务数据。其次,预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。而后,根据值域范围,判断处理密态业务数据后得到的数据处理结果是否会数据溢出。最后,若是,根据值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据调整后密态数据,进行业务处理。
从上述方法中可以看出,本方法可以预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。而后,根据值域范围,判断处理密态业务数据后得到的数据处理结果是否会数据溢出。最后,若是,根据值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据调整后密态数据,进行业务处理。从而,业务处理过程中的运算结果的精度以及正确率。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附
图中:
图1为本说明书实施例提供的一种业务处理的方法的流程示意图;
图2为本说明书实施例提供的一种密态运算的流程示意图;
图3为本说明书实施例提供的一种业务处理的装置的结构示意图;
图4为本说明书实施例提供的电子设备的结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书中一种业务处理的方法的流程示意图,具体包括以下步骤:
S100:接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据。
在本说明书实施例中,业务处理的方法的执行主体可以是指服务器、台式电脑等电子设备。为了便于描述,下面仅以服务器为执行主体,对本说明书提供的业务处理的方法进行说明。
在实际应用中,一种密态运算技术仅支持整数运算以及移位操作,可以通过移位操作间接的实现定点数运算。但是,由于定点数的数字表示范围较小,在运算过程中,任何一方都不知道这些中间运算结果的大小,若这些中间运算结果发生溢出或者有效位不足的情况,会导致中间运算结果中的部分数字丢失,从而,使得运算结果出错。
另一种密态运算技术是通过一个密态尾数以及一个密态指数表示一个浮点类型的密态数据。但是,这种密态数据的运算方式较为复杂,并且,运算量大,消耗的运算时长长。基于此,服务器可以由密态尾数以及明文指数组成密态数据,以此在运算过程中降低运算量,减少运算时长。
在本说明书实施例中,服务器可以接收业务方发送的数据处理请求,这里提到的数据处理请求中携带有密态业务数据。密态业务数据可以为浮点类型的数据或整型的数据。
进一步的,数据处理请求中携带浮点类型的密态业务数据。这里提到的密态业务数据由密态尾数以及明文指数组成。这里提到的密态尾数可以是多方安全计算技术中的变量密文或同态加密技术中的变量密文。也就是说,业务方可以预先将业务数据转换为浮点类型的业务数据,再对浮点类型的业务数据中的尾数通过多方安全计算技术或同态加密技术进行加密,得到密态尾数。再将密态尾数以及明文指数组成密态业务数据,发送给服务器。
这里提到的浮点类型可以是指一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂。具体表示形式如下:
a=m×be
在上述公式中,a可以用于表示浮点类型的密态业务数据。m可以用于表示浮点类型的密态业务数据中的尾数。b可以用于表示记数系统的基数。e可以用于表示浮点类型的密态业务数据中的指数。
这里提到的密态运算技术可以是指业务方生成一个密钥对:公钥以及私钥,其中,公钥用于加密,私钥用于解密。业务方使用公钥对各数据进行加密,得到各密态数据。服务方使用运算函数对各密态数据进行运算,得到运算后的密态数据(加密的运算结果)。业务方使用私钥解密运算后的密态数据,得到运算结果。该运算结果与各数据在明文状态下进行运算的运算结果相同。
当然,密态业务数据也可以是定点数,即,明文指数为0的浮点类型的密态业务数据。
S102:预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
S104:根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出。
在实际应用中,由密态尾数以及密态指数组成的密态数据在运算过程中,需要先评估密态数据所需调整的倍数,倍数为2t,t为整数。然后,对密态数据中的密态尾数以及密态指数进行调整,得到(密态尾数*2t,密态指数-t)。由于,上述运算过程的运算量较大,且运算时长较长。基于此,服务器可以先预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围,再根据值域范围,对待处理密态数据的密态尾数以及明文指数进行调整,得到调整后密态数据。
在本说明书实施例中,服务器可以预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。这里提到的值域范围可以是指数据处理结果的最大值与最小值之间的范围。
其次,服务器可以根据值域范围,判断处理密态业务数据后得到的数据处理结果是否会数据溢出。例如,若处理密态业务数据后得到的数据处理结果的值域范围大于预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围,则判断数据溢出。
具体的,数据处理请求中还携带有密态业务数据对应的数据量以及密态业务数据对应的值域范围。这里提到的数据量可以是指密态业务数据的数量。
服务器可以根据对密态业务数据进行数据处理的算术表达式、密态业务数据的数据量以及密态业务数据的值域范围,预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
其中,服务器可以通过预先确定出的值域范围公式,根据对密态业务数据进行数据处理的算术表达式、密态业务数据的数据量以及密态业务数据的值域范围,预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
例如,若对密态业务数据进行数据处理的算术表达式为加法表达式,预先确定出的值域范围公式为(密态业务数据的数据量x密态业务数据的值域范围中的最小值,密态业务数据的数据量x密态业务数据的值域范围中的最大值),若密态业务数据的数据量为一万,密态业务数据的值域范围中的最小值为一,最大值为二,则预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围中的最小值为一万,最大值为两万。当然,本说明书不对值域范围公式进行限定。
在本说明书实施例中,服务器可以生成明文的测试数据,将测试数据进行数据处理,得到在对测试数据进行数据处理后所得到的数据处理结果的值域范围。
具体的,服务器可以根据密态业务数据对应的数据量以及密态业务数据对应的值域范围,生成测试数据。这里提到的测试数据为明文数据,测试数据对应的数据量与密态业务数据对应的数据量相匹配。其中,测试数据对应的数据量可以与密态业务数据对应的数据量相同。测试数据对应的数据量也可以与密态业务数据对应的数据量处于同一数量级。
其次,服务器可以对测试数据进行数据处理,得到测试数据的数据处理结果的值域范围,预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
其中,服务器可以对测试数据进行若干次的数据处理,确定若干个在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围,并根据若干个在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围,计算平均值域范围。然后,将平均值域范围,作为在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
需要说明的是,测试数据为浮点类型的明文数据,服务器可以获取业务方发送的真实数据的分布,并根据真实数据的分布,生成测试数据,以提高确定出的在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围的准确性。
S106:若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
在本说明书实施例中,若是,服务器可以根据值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据调整后密态数据,进行业务处理。
具体的,服务器可以根据值域范围中的最大值的有效位数、对密态业务数据进行数据处理的算术表达式以及待处理密态数据的密态尾数的最大有效位数,确定待处理密态数据的密态尾数所需移位的位数。
其次,服务器可以按照待处理密态数据的密态尾数所需移位的位数,对待处理密态数据的密态尾数进行移位,得到待处理密态数据的移位后的密态尾数,并按照待处理密态数据的密态尾数所需移位的位数,对待处理密态数据的明文指数进行调整,得到待处理密态数据的调整后的明文指数。
最后,服务器可以根据待处理密态数据的移位后的密态尾数以及待处理密态数据的调整后的明文指数,得到调整后密态数据。
在实际应用中,对密态业务数据进行的数据处理可以分为乘法运算以及加法运算,在乘法运算的过程中可能出现数据溢出的情况。因此,服务器需要将乘法运算的过程中的密态数据的密态尾数的有效位数进行调整,至少调整为最大有效位数的一半,以在乘法运算的过程中避免数据溢出。
在本说明书实施例中,服务器可以根据值域范围中最大值的有效位数,确定目标有效位数,其中,目标有效位数为值域范围中最大值的密态尾数的有效位数。若算术表达式为乘法表达式,且目标有效位数大于待处理密态数据的密态尾数的设定位数,则将待处理密态数据的密态尾数的有效位数调整为设定位数。这里提到的设定位数为待处理密态数据的密态尾数的最大有效位数的设定比例。设定比例可以为二分之一,当然也可以根据业务需求进行确定。
然后,服务器可以根据目标有效位数与待处理密态数据的密态尾数的设定位数之间的差值,确定待处理密态数据的密态尾数所需移位的位数。具体公式如下所示。
Figure BDA0004032403870000071
在上述公式中,t可以用于表示待处理密态数据的密态尾数所需移位的位数。max(x)可以用于表示值域范围中最大值。log(max(x))可以用于表示目标有效位数,也就是值域范围中最大值的有效数字的个数。T可以用于表示密态尾数对应的最大有效位数,也就是服务器在一次运算中最大的物理存储位数。
Figure BDA0004032403870000072
可以用于表示待处理密态数据的密态尾数的设定位数。
进一步的,服务器可以按照待处理密态数据的密态尾数所需移位的位数,对待处理密态数据的密态尾数进行移位,得到待处理密态数据的移位后的密态尾数,并按照该密态数据的密态尾数所需移位的位数,对待处理密态数据的明文指数进行调整,得到待处理密态数据的调整后的明文指数。具体公式如下所示。
(X>>(t-A),A+(t-A))=(X>>(t-A),t)
在上述公式中,X可以用于表示待处理密态数据的密态尾数。>>可以用于表示移位操作中的右移。t可以用于表示待处理密态数据的密态尾数所需移位的位数。A可以用于表示待处理密态数据的明文指数。可以看出,当X右移(t-A)时,A加上(t-A),得到调整后密态数据。
在实际应用中,两个浮点类型的数据的指数需要是相同的指数才能进行加法运算。因此,服务器需要先将两个浮点类型的数据的指数变为相同的指数。
在本说明书实施例中,若算术表达式为加法表达式,且第一加数对应的明文指数大于第二加数对应的明文指数,服务器可以根据第一加数对应的明文指数与第二加数对应的明文指数之间的差值,确定第一加数对应的密态尾数所需移位的位数,第一加数以及第二加数为待处理密态数据。
服务器可以按照第一加数对应的密态尾数所需移位的位数,对第一加数对应的密态尾数进行移位,得到移位后第一加数,并根据移位后第一加数以及第二加数,确定数据处理结果。
若算术表达式为加法表达式,且第一加数对应的明文指数小于第二加数对应的明文指数,服务器可以根据第一加数对应的明文指数与第二加数对应的明文指数之间的差值,确定第二加数对应的密态尾数所需移位的位数。
服务器可以按照第二加数对应的密态尾数所需移位的位数,对第二加数对应的密态尾数进行移位,得到移位后第二加数,并根据第一加数以及移位后第二加数,确定数据处理结果。
在实际应用中,若在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围的最大值与最小值之间的差值大于或接近最大有效位数的一半时,该数据处理结果可能面临有效位不足的情况。服务器可以使用更高的数据精度对密态业务数据进行表示。
在本说明书实施例中,服务器可以若值域范围大于设定值域范围,则将待处理密态数据进行精度转换,得到转换后密态数据。其中,转换后密态数据的数据精度大于待处理密态数据的数据精度。这里提到的精度可以是指int(整数型)、float(单精度浮点型)、double(双精度浮点型)、char(字符型)等。例如,将待处理密态数据的单精度浮点型转换为双精度浮点型,得到双精度浮点型的转换后密态数据。
其中,低精度的数据在运算过程中相比于高精度的数据的运算速度更快,运算时长更短。因此,服务器仅在该数据处理结果可能面临有效位不足的情况下,才进行精度转换。
其次,服务器可以通过预设的处理转换后密态数据的数据处理方式,对该数据处理步骤对应的转换后密态数据进行数据处理,确定转换后密态数据的数据处理结果。
由于,密态数据转换数据类型也是一种密态协议,需要消耗运算资源。因此,服务器可以在得到该数据处理步骤对应的转换后密态数据的数据处理结果后,将转换后密态数据的数据处理结果进行精度还原,得到低精度的数据。
具体的,服务器可以将该数据处理步骤对应的转换后密态数据的数据处理结果进行精度还原,得到还原后的数据处理结果,进行业务处理。
在本说明书实施例中,在一些安全性要求不是非常严格的情况下,可以在运算过程中将业务数据的有效位数恢复出来,进行更为精准的有效位控制。但是,这种方式会带来信息泄露,只能在部分不涉及信息安全的业务数据进行上使用。或者,服务器可以将移位数据中的整数部分恢复出来。通过泄露较少的信息,进行更为精准的有效位控制。
在本说明书实施例中,服务器可以预估在数据处理过程中的每个数据处理步骤对应的值域范围,并根据该数据处理步骤对应的值域范围,对该数据处理步骤对应的待处理密态数据的密态尾数以及明文指数进行调整,得到该数据处理步骤对应的调整后密态数据。再将该数据处理步骤对应的调整后密态数据,作为下一数据处理步骤对应的密态业务数据,以此类推,得到最终的数据处理结果,进行业务处理。具体如图2所示。
图2为本说明书实施例提供的一种密态运算的流程示意图。
在图2中,服务器接收业务方发送的密态业务数据。
其次,服务器可以预估在数据处理过程中的第N数据处理步骤对应的值域范围。
根据预估在数据处理过程中的第N数据处理步骤对应的值域范围,对第N数据处理步骤对应的待处理密态数据的密态尾数以及明文指数进行调整,得到第N数据处理步骤对应的调整后密态数据。
然后,服务器可以将第N数据处理步骤对应的调整后密态数据,作为第N+1数据处理步骤对应的密态业务数据,并预估第N+1数据处理步骤对应的值域范围,对第N+1数据处理步骤对应的待处理密态数据的密态尾数以及明文指数进行调整,以确定第N+1数据处理步骤对应的数据处理结果。以此类推,得到最终的数据处理结果,进行业务处理。
从上述方法中可以看出,本方法可以预估在对密态业务数据进行数据处理后所得到的数据处理结果的值域范围。而后,根据值域范围,判断处理密态业务数据后得到的数据处理结果是否会数据溢出。最后,若是,根据值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据调整后密态数据,进行业务处理。从而,业务处理过程中的运算结果的精度以及正确率。
以上为本说明书实施例提供的一种业务处理的方法,基于同样的思路,本说明书还提供了相应的装置、存储介质和电子设备。
图3为本说明书实施例提供的一种业务处理的装置的结构示意图,所述装置包括:
接收模块300,用于接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据;
预估模块302,用于预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围;
判断模块304,用于根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出;
调整模块306,用于若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
可选地,所述数据处理请求中还携带有所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围;
所述预估模块302具体用于,根据对所述密态业务数据进行数据处理的算术表达式、所述密态业务数据的数据量以及所述密态业务数据的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
可选地,所述预估模块302具体用于,根据所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围,生成所述测试数据,所述测试数据为浮点类型的明文数据,所述测试数据对应的数据量与所述密态业务数据对应的数据量相匹配,对所述测试数据进行数据处理,得到所述测试数据的数据处理结果的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
可选地,所述密态业务数据为浮点类型的数据或整型的数据,所述密态业务数据由密态尾数以及明文指数组成,所述密态尾数是多方安全计算技术中的变量密文或同态加密技术中的变量密文。
可选地,所述调整模块306具体用于,根据所述值域范围中最大值的有效位数、对所述密态业务数据进行数据处理的算术表达式以及所述待处理密态数据的密态尾数的最大有效位数,确定所述待处理密态数据的密态尾数所需移位的位数,按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的密态尾数进行移位,得到所述待处理密态数据的移位后的密态尾数,并按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的明文指数进行调整,得到所述待处理密态数据的调整后的明文指数,根据所述待处理密态数据的移位后的密态尾数以及所述待处理密态数据的调整后的明文指数,得到调整后密态数据。
可选地,所述调整模块306具体用于,根据所述值域范围中最大值的有效位数,确定目标有效位数,其中,所述目标有效位数为所述值域范围中最大值的密态尾数的有效位数,若所述算术表达式为乘法表达式,且所述目标有效位数大于所述待处理密态数据的密态尾数的设定位数,则将所述待处理密态数据的密态尾数的有效位数调整为设定位数,所述设定位数为所述待处理密态数据的密态尾数的最大有效位数的设定比例,根据所述目标有效位数与所述待处理密态数据的密态尾数的设定位数之间的差值,确定所述待处理密态数据的密态尾数所需移位的位数。
可选地,所述调整模块306具体还用于,若所述算术表达式为加法表达式,且第一加数对应的明文指数大于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第一加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
可选地,所述调整模块306具体还用于,若所述算术表达式为加法表达式,且第一加数对应的明文指数小于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第二加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
可选地,所述调整模块306具体还用于,若所述值域范围大于设定值域范围,则将所述待处理密态数据进行精度转换,得到转换后密态数据,所述转换后密态数据的数据精度大于所述待处理密态数据的数据精度,通过预设的处理转换后密态数据的数据处理方式,对所述转换后密态数据进行数据处理,确定所述转换后密态数据的数据处理结果,将所述转换后密态数据的数据处理结果进行精度还原,得到还原后的数据处理结果,进行业务处理。
本说明书还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可用于执行上述图1提供的业务处理的方法。
本说明书实施例还提供了图4所示的电子设备的结构示意图。如图4,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图1提供的业务处理的方法。
当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
需要说明的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (12)

1.一种业务处理的方法,包括:
接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据;
预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围;
根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出;
若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
2.如权利要求1所述的方法,所述数据处理请求中还携带有所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围;
预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围,具体包括:
根据对所述密态业务数据进行数据处理的算术表达式、所述密态业务数据的数据量以及所述密态业务数据的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
3.如权利要求2所述的方法,根据对所述密态业务数据进行数据处理的算术表达式、所述密态业务数据的数据量以及所述密态业务数据的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围,具体包括:
根据所述密态业务数据对应的数据量以及所述密态业务数据对应的值域范围,生成测试数据,所述测试数据为明文数据,所述测试数据对应的数据量与所述密态业务数据对应的数据量相匹配;
对所述测试数据进行数据处理,得到所述测试数据的数据处理结果的值域范围,预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围。
4.如权利要求1所述的方法,所述密态业务数据为浮点类型的数据或整型的数据,所述密态业务数据由密态尾数以及明文指数组成,所述密态尾数是多方安全计算技术中的变量密文或同态加密技术中的变量密文。
5.如权利要求4所述的方法,根据所述值域范围,对所述待处理密态数据进行调整,得到调整后密态数据,具体包括:
根据所述值域范围中最大值的有效位数、对所述密态业务数据进行数据处理的算术表达式以及所述待处理密态数据的密态尾数的最大有效位数,确定所述待处理密态数据的密态尾数所需移位的位数;
按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的密态尾数进行移位,得到所述待处理密态数据的移位后的密态尾数,并按照所述待处理密态数据的密态尾数所需移位的位数,对所述待处理密态数据的明文指数进行调整,得到所述待处理密态数据的调整后的明文指数;
根据所述待处理密态数据的移位后的密态尾数以及所述待处理密态数据的调整后的明文指数,得到调整后密态数据。
6.如权利要求5所述的方法,根据所述值域范围中最大值的有效位数、对所述密态业务数据进行数据处理的算术表达式以及所述待处理密态数据的密态尾数的最大有效位数,确定所述待处理密态数据的密态尾数所需移位的位数,具体包括:
根据所述值域范围中最大值的有效位数,确定目标有效位数,其中,所述目标有效位数为所述值域范围中最大值的密态尾数的有效位数;
若所述算术表达式为乘法表达式,且所述目标有效位数大于所述待处理密态数据的密态尾数的设定位数,则将所述待处理密态数据的密态尾数的有效位数调整为设定位数,所述设定位数为所述待处理密态数据的密态尾数的最大有效位数的设定比例;
根据所述目标有效位数与所述待处理密态数据的密态尾数的设定位数之间的差值,确定所述待处理密态数据的密态尾数所需移位的位数。
7.如权利要求5所述的方法,所述方法还包括:
若所述算术表达式为加法表达式,且第一加数对应的明文指数大于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第一加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
8.如权利要求5所述的方法,所述方法还包括:
若所述算术表达式为加法表达式,且第一加数对应的明文指数小于第二加数对应的明文指数,根据所述第一加数对应的明文指数与所述第二加数对应的明文指数之间的差值,确定所述第二加数对应的密态尾数所需移位的位数,所述第一加数以及所述第二加数为所述待处理密态数据。
9.如权利要求1所述的方法,所述方法还包括:
若所述值域范围大于设定值域范围,则将所述待处理密态数据进行精度转换,得到转换后密态数据,所述转换后密态数据的数据精度大于所述待处理密态数据的数据精度;
通过预设的处理转换后密态数据的数据处理方式,对所述转换后密态数据进行数据处理,确定所述转换后密态数据的数据处理结果;
将所述转换后密态数据的数据处理结果进行精度还原,得到还原后的数据处理结果,进行业务处理。
10.一种业务处理的装置,包括:
接收模块,用于接收业务方发送的数据处理请求,所述数据处理请求中携带有密态业务数据;
预估模块,用于预估在对所述密态业务数据进行数据处理后所得到的数据处理结果的值域范围;
判断模块,用于根据所述值域范围,判断处理所述密态业务数据后得到的数据处理结果是否会数据溢出;
调整模块,用于若是,根据所述值域范围,对待处理密态数据进行调整,得到调整后密态数据,并根据所述调整后密态数据,进行业务处理。
11.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-9任一项所述的方法。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1-9任一项所述的方法。
CN202211738531.1A 2022-12-30 2022-12-30 一种业务处理的方法、装置、存储介质及电子设备 Pending CN116095174A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211738531.1A CN116095174A (zh) 2022-12-30 2022-12-30 一种业务处理的方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211738531.1A CN116095174A (zh) 2022-12-30 2022-12-30 一种业务处理的方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN116095174A true CN116095174A (zh) 2023-05-09

Family

ID=86201974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211738531.1A Pending CN116095174A (zh) 2022-12-30 2022-12-30 一种业务处理的方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN116095174A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109361510A (zh) * 2018-11-07 2019-02-19 西安电子科技大学 一种支持溢出检测和大整数运算的信息处理方法及应用
US20210049935A1 (en) * 2019-08-16 2021-02-18 Informatica Llc Method, apparatus, and computer-readable medium for format preserving encryption of a numerical value
CN114448597A (zh) * 2022-01-25 2022-05-06 京东科技控股股份有限公司 数据处理方法、装置、计算机设备及存储介质
CN114647857A (zh) * 2020-12-18 2022-06-21 深圳前海微众银行股份有限公司 数据处理方法、装置、设备、存储介质及程序产品

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109361510A (zh) * 2018-11-07 2019-02-19 西安电子科技大学 一种支持溢出检测和大整数运算的信息处理方法及应用
US20210049935A1 (en) * 2019-08-16 2021-02-18 Informatica Llc Method, apparatus, and computer-readable medium for format preserving encryption of a numerical value
CN114647857A (zh) * 2020-12-18 2022-06-21 深圳前海微众银行股份有限公司 数据处理方法、装置、设备、存储介质及程序产品
CN114448597A (zh) * 2022-01-25 2022-05-06 京东科技控股股份有限公司 数据处理方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN112016120B (zh) 基于用户隐私保护的事件预测方法和装置
CN112199707B (zh) 一种同态加密中的数据处理方法、装置以及设备
TW202121197A (zh) 基於隱私資訊保護的資料查詢方法、裝置、設備及系統
US10540142B2 (en) Accuracy-conserving floating-point value aggregation
KR20180050203A (ko) 3-경로 단일 곱셈-누산기 설계에서 고속 근경로 증분합
Sayed et al. FPGA realization of a speech encryption system based on a generalized modified chaotic transition map and bit permutation
Moon et al. An Efficient Encrypted Floating‐Point Representation Using HEAAN and TFHE
CN111934878A (zh) 一种基于区块链的数据加密与解密方法、设备及介质
CN116095174A (zh) 一种业务处理的方法、装置、存储介质及电子设备
Liu et al. Performance analysis of arithmetic operations in homomorphic encryption
CN115834018A (zh) 一种保护隐私的多方数据处理方法、系统和设备
EP3975471B1 (en) Homomorphic encryption device and operating method thereof
CN113673844B (zh) 一种信息反馈方法、装置及设备
CN115276952A (zh) 一种隐私数据处理方法及装置
US9467199B1 (en) Compression using mu-law approximation
CN111641499A (zh) 一种基于区块链的私钥还原方法、装置、设备及介质
CN115987489B (zh) 一种轻量级的加密解密方法、装置和存储介质
CN108075889B (zh) 一种降低加解密运算时间复杂度的数据传输方法及系统
CN118174855A (zh) 一种基于Paillier的数据加密方法、装置和设备
TWI814642B (zh) 基於同態加密的隱私運算方法
CN112989365B (zh) 一种数据处理方法、装置、设备及存储介质
CN117725572B (zh) 一种sdk完整性的校验方法、装置、介质及设备
CN116401683A (zh) 一种模型训练方法、装置、存储介质以及电子设备
CN117792602A (zh) 一种基于多方全同态加密的隐私数据处理方法
CN118312985A (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