CN114465708B - 隐私数据处理方法及装置、系统、电子设备、存储介质 - Google Patents

隐私数据处理方法及装置、系统、电子设备、存储介质 Download PDF

Info

Publication number
CN114465708B
CN114465708B CN202210266401.6A CN202210266401A CN114465708B CN 114465708 B CN114465708 B CN 114465708B CN 202210266401 A CN202210266401 A CN 202210266401A CN 114465708 B CN114465708 B CN 114465708B
Authority
CN
China
Prior art keywords
data
ciphertext
privacy
party
ciphertext data
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
Application number
CN202210266401.6A
Other languages
English (en)
Other versions
CN114465708A (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.)
Beijing Xufang Technology Co ltd
Original Assignee
Beijing Xufang 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 Beijing Xufang Technology Co ltd filed Critical Beijing Xufang Technology Co ltd
Priority to CN202210266401.6A priority Critical patent/CN114465708B/zh
Publication of CN114465708A publication Critical patent/CN114465708A/zh
Application granted granted Critical
Publication of CN114465708B publication Critical patent/CN114465708B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种隐私数据处理方法及装置、系统、电子设备、存储介质,该方法应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于所述第一参与方,包括:采用约定的全同态加密算法,对第一隐私数据进行加密,得到第一隐私数据对应的第一密文数据;将第一密文数据发送至隐私数据处理系统中的第二参与方,经由第二参与方对第二隐私数据和第一密文数据进行乘法运算,得到第二密文数据;对第二密文数据和预定的随机向量进行加法运算,得到第二隐私数据对应的第三密文数据;并将第三密文数据发送至第一参与方;接收第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。通过本发明,解决了相关技术中在保护数据隐私安全的条件下向量内积的计算过程冗余的技术问题。

Description

隐私数据处理方法及装置、系统、电子设备、存储介质
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种隐私数据处理方法及装置、系统、电子设备、存储介质。
背景技术
随着数据隐私和数据安全的问题受到社会各界的广泛关注,如何在保护数据隐私的同时实现数据价值的有效利用已成为学术界和产业界亟待解决的重要问题。
隐私计算,是指在提供隐私保护的前提下,实现数据价值挖掘的技术体系。当前,隐私计算的主要应用场景之一是结合机器学习技术解决在保障数据隐私的前提下,不同数据来源的联合建模问题;而在建模过程中,需要解决线性函数及非线性函数的隐私计算问题,其中,向量内积是线性函数隐私计算问题的典型之一,具有广泛的应用场景。
为解决向量内积的隐私计算问题,目前主要有以下三种方案:1)基于多方安全计算技术,常使用Beaver triple三元组计算密文乘法;2)基于半同态加密算法,通常使用Paillier算法,Paillier算法是加法同态算法,支持密文加法以及密文乘常数的计算;3)基于全同态加密算法,为实现N/2维的向量内积的密文计算,需要运行一次密文乘明文以及log2N-1次密文移位运算。发明人在实施上述三种方案进行隐私数据计算过程中,发现基于多方安全计算技术的方法,需要额外第三方辅助计算;基于半同态加密算法的方法,在密文计算向量内积时需要逐位分别执行密文乘常数的运算,计算量大;基于全同态加密算法的方法,需要运行一次密文乘明文以及log2N-1次密文移位运算,可见,上述任一项隐私计算方案,在保护数据隐私安全的条件下,都存在计算过程操作繁琐,计算过程冗余,计算量大,计算效率低等问题。
发明内容
鉴于上述问题,本发明提出了一种隐私数据处理方法及装置、系统、电子设备、存储介质,以至少解决了相关技术中在保护数据隐私安全的条件下向量内积的计算过程冗余的技术问题。
第一方面,本发明提供了一种隐私数据处理方法,应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于所述第一参与方,所述方法包括:采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据;将所述第一密文数据发送至所述隐私数据处理系统中的第二参与方,经由所述第二参与方对所述第二隐私数据和所述第一密文数据进行乘法运算,得到第二密文数据,其中,所述第二隐私数据存储于所述第二参与方;对所述第二密文数据和预定的随机向量进行加法运算,得到所述第二隐私数据对应的第三密文数据;并将所述第三密文数据发送至所述第一参与方;接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,所述采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据,包括:将所述第一隐私数据作为输入的第一明文数据且所述第一参与方的公钥作为输入密钥;其中,所述公钥由通过调用所述约定的全同态加密算法的密钥生成组件生成;采用约定的全同态加密算法对所述第一明文数据和所述输入密钥进行加密,得到所述第一密文数据。
可选地,所述接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积,包括:基于与所述第一参与方的公钥对应的私钥,通过调用约定的全同态加密算法中的解码函数对所述第三密文数据进行解密,得到目标向量;对所述第一隐私数据对应的向量维数和所述目标向量进行运算,得到所述第一隐私数据和所述第二隐私数据的向量内积。
第二方面,本发明提供了另一种隐私数据处理方法,应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于所述第二参与方,所述方法包括:接收由所述隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;对所述第一密文数据和所述第二隐私数据进行乘法运算,得到第二密文数据;对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;将所述第三密文数据发送至所述第一参与方,以使所述第一参与方根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,所述对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据,包括:从所述第二隐私数据中随机选取一初始向量;利用所述初始向量计算与所述第二密文数据的向量维度相同的目标随机向量,以作为预定的随机向量;对所述第二密文数据和所述目标随机向量进行加法运算,得到所述第三密文数据。
第三方面,本发明提供了一种隐私数据处理装置,应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于所述第一参与方,所述装置包括:加密模块,用于采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据;发送模块,用于将所述第一密文数据发送至所述隐私数据处理系统中的第二参与方,经由所述第二参与方对所述第二隐私数据和所述第一密文数据进行乘法运算,得到第二密文数据,其中,所述第二隐私数据存储于所述第二参与方;对所述第二密文数据和预定的随机向量进行加法运算,得到所述第二隐私数据对应的第三密文数据;并将所述第三密文数据发送至所述第一参与方;计算模块,用于接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,所述加密模块包括:确定单元,用于将所述第一隐私数据作为输入的第一明文数据且所述第一参与方的公钥作为输入密钥;其中,所述公钥由通过调用所述约定的全同态加密算法的密钥生成组件生成;加密单元,用于采用约定的全同态加密算法对所述第一明文数据和所述输入密钥进行加密,得到所述第一密文数据。
可选地,所述计算模块包括:解密单元,用于基于与所述第一参与方的公钥对应的私钥,通过调用约定的全同态加密算法中的解码函数对所述第三密文数据进行解密,得到目标向量;计算单元,用于对所述第一隐私数据对应的向量维数和所述目标向量进行运算,得到所述第一隐私数据和所述第二隐私数据的向量内积。
第四方面,本发明提供了另一种隐私数据处理装置,应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于所述第二参与方,所述装置包括:接收模块,用于接收由所述隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;第一计算模块,用于对所述第一密文数据和所述第二隐私数据进行乘法运算,得到第二密文数据;第二计算模块,用于对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;发送模块,用于将所述第三密文数据发送至所述第一参与方,以使所述第一参与方根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,所述第二计算模块包括:选取单元,用于从所述第二隐私数据中随机选取一初始向量;第一计算单元,用于利用所述初始向量计算与所述第二密文数据的向量维度相同的目标随机向量,以作为预定的随机向量;第二计算单元,用于对所述第二密文数据和所述目标随机向量进行加法运算,得到所述第三密文数据。
第五方面,本发明提供了一种隐私数据处理系统,所述系统包括上述任一项所述的装置。
第六方面,本发明还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
第七方面,本发明还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项装置实施例中的步骤。
本发明实施例提供的一种隐私数据处理方法,应用于隐私数据处理系统中的第一参与方,第一参与方中存储有第一隐私数据,采用约定的全同态加密算法,对第一隐私数据进行加密,将得到的第一密文数据发送至隐私数据处理系统中的第二参与方,经由第二参与方对其存储的第二隐私数据和第一密文数据进行乘法运算,即进行了一次明文乘密文运算,得到第二密文数据;然后对第二密文数据和预定的随机向量进行加法运算,即进行了一次密文加明文运算,得到第三密文数据;并将第三密文数据发送至第一参与方;接收第三密文数据,并根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。由于第二参与方对自身的第二隐私数据处理的过程仅进行了一次密文乘明文及一次密文加密文的计算,无需进行逐位的密文移位运算,大大减少了冗余的计算过程,从而解决了相关技术中在保护数据隐私安全的条件下向量内积的计算过程冗余的技术问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍。
图1是本发明实施例提供的一种隐私数据处理方法应用于计算机终端的硬件结构框图;
图2是根据本发明实施例提供的一种隐私数据处理方法的流程图;
图3是根据本发明实施例提供的一种隐私数据处理方法的流程图;
图4是根据本发明一具体实施例提供的隐私数据处理方法的示意图;
图5是根据本发明实施例提供的一种隐私数据处理装置的结构框图;
图6是根据本发明实施例提供的另一种隐私数据处理装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。
为了解决相关技术存在的技术问题,在本实施例中提供了一种隐私数据处理方法。下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
本发明实施例所提供的方法实施例可以在移动终端、服务器、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例提供的一种隐私数据处理方法应用于计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的隐私数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器,也可以包括易失性存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
图2是根据本发明实施例提供的一种隐私数据处理方法的流程图,如图2所示,该方法应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于第一参与方,该流程包括如下步骤:
步骤S202,采用约定的全同态加密算法,对第一隐私数据进行加密,得到第一隐私数据对应的第一密文数据;
基于全同态加密算法的方法中,实现密文计算最高效的方法是基于CKKS全同态加密算法的方法,CKKS算法支持密文加法、密文乘法、密文乘明文以及密文移位等运算,其主要特点是计算结果是近似结果而非精确结果;由于在机器学习领域中,近似结果对整体系统的影响有限,因此使用基于CKKS全同态加密算法实现向量内积的密文计算是一种实用且有效的方法。在本实施例中,优选基于CKKS的全同态加密算法。
步骤S204,将第一密文数据发送至隐私数据处理系统中的第二参与方,经由第二参与方对第二隐私数据和第一密文数据进行乘法运算,得到第二密文数据,其中,第二隐私数据存储于第二参与方;并对第二密文数据和预定的随机向量进行加法运算,得到第二隐私数据对应的第三密文数据;并将第三密文数据发送至第一参与方;
需要说明的是,本实施例中的第一隐私数据与第二隐私数据为事先约定好的,两者具有相同的向量维度。
现有的全同态加密算法进行向量内积,在密文内积计算过程中,在乘法之后需要对每个位置的元素进行求和,由于算法的明文和密文并非是一一对应的关系,需要对不同位置的元素求和,必须使用密文移位操作;因此,现有的密文内积计算过程中,为了实现N/2维的向量内积的密文计算,需要运行一次密文乘明文以及log2N-1次密文移位运算,计算过程繁琐,计算量大。
为了解决向量内积密文计算过程冗余的问题,在本实施例中,第一参与方将对自身保存的第一隐私数据和输入密钥进行加密后得到的密文(即上述第一密文数据)发送给了第二参与方,采用全同态加密算法,在保护第一隐私数据的隐私安全条件下,保留了第一隐私数据的计算性,使得第二参与方可直接对第一密文数据进行运算操作。
进一步地,第二参与方接收到第一密文数据后,将自身保存的第二隐私数据,通过明文乘密文计算,得到第二密文数据;为了防止其他参与方直接通过进行明文乘密文计算,解密得到第二密文数据,额外增加了一个预定的随机向量,进行了一次密文加明文计算,从而保证了只有调用第二密文数据的求和函数才能得到有意义的结果,从而进一步地避免数据的泄露问题。
步骤S206,接收第三密文数据,并根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。
在本案的一个应用场景中,假设第一参与方为评估机构,第二参与方为银行,评估机构针对银行中的用户1的多种数据,对用户1的用户价值进行一个评估。例如,评估机构持有评估参数(a1,a2,a3)(即上述第一隐私数据),用户1的数据为(b1,b2,b3)(即上述第二隐私数据),比如b1指代用户1的存款数据,b2指代用户1的贷款数据,b3指代用户1的收入数据;进一步地,为了保护评估机构的评估参数以及银行中的用户1的数据的隐私安全,采用基于CKKS的全同态加密算法对评估机构的评估参数进行加密,得到第一密文数据,然后将第一密文数据发送给银行(即第二参与方),在银行执行对用户1的隐私数据进行密文乘明文计算以及密文加明文计算,得到第三密文数据,然后将第三密文反馈给评估机构,然后评估机构即可利用向量内积的计算函数处理第三密文数据,从而在保护各数据方的数据隐私安全的条件下,还不影响计算性;最后在评估机构进行向量内积,将计算得到的近似结果作为对用户1价值的分析数据。
本发明实施例提供的一种隐私数据处理方法,应用于隐私数据处理系统中的第一参与方,第一参与方中存储有第一隐私数据,采用约定的全同态加密算法,对第一隐私数据进行加密,将得到的第一密文数据发送至隐私数据处理系统中的第二参与方,经由第二参与方对其存储的第二隐私数据和第一密文数据进行乘法运算,即进行了一次明文乘密文运算,得到第二密文数据;然后对第二密文数据和预定的随机向量进行加法运算,即进行了一次密文加明文运算,得到第三密文数据;并将第三密文数据发送至第一参与方;接收第三密文数据,并根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。由于第二参与方对自身的第二隐私数据处理的过程仅进行了一次密文乘明文及一次密文加密文的计算,无需进行逐位的密文移位运算,大大减少了冗余的计算过程,从而解决了相关技术中在保护数据隐私安全的条件下向量内积的计算过程冗余的技术问题。
本发明实施例中提供了一种可能的实现方式,上述步骤S202包括:将第一隐私数据作为输入的第一明文数据且第一参与方的公钥作为输入密钥;其中,公钥由通过调用约定的全同态加密算法的密钥生成组件生成;采用约定的全同态加密算法对第一明文数据和输入密钥进行加密,得到第一密文数据。
以CKKS的全同态加密算法的密钥生成为例,依据高斯分布X在环Rq上随机选择一个元素s←X作为私钥,然后在环Rq上随机均匀选取一个元素a1←Rq,同时在高斯分布X上随机选取一个差错e←X,计算a0=-a1s+e。令私钥sk=s,公钥pk=(a0,a1)。通过上述方式能够计算得到第一参与方的一组密钥对,密钥对中包括一个公钥和一个私钥,公钥用于加密,可以共享,私钥用于解密,必须保密。
根据上述实施例,第一参与方,利用基于CKKS的全同态加密算法,对输入的第一明文数据和输入密钥加密成第一密文数据,以对第一参与方自身只有的隐私数据进行加密,起到保护第一参与方的隐私数据的目的。
根据上述实施例,上述步骤S206包括:基于与第一参与方的公钥对应的私钥,通过调用约定的全同态加密算法中的解码函数对第三密文数据进行解密,得到目标向量;对第一隐私数据对应的向量维数和目标向量进行运算,得到第一隐私数据和第二隐私数据的向量内积。
在本实施例中,第一参与方得到第三密文数据后,使用自身的私钥解密第三密文数据,得到目标向量;然后进行向量内积隐私计算,计算结果仅与隐私数据的维数和目标向量有关,与输入的隐私数据及输入密钥对(即上述公钥和私钥)无关,从而在实现N/2维的向量内积的密文计算过程中,本方案需要运行一次密文乘明文以及一次密文加法运算,不需要执行密文移位运算,从而减少了冗余的计算过程,提高了算法效率。
图3是根据本发明实施例提供的另一种隐私数据处理方法的流程图,如图3所示,该方法应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于所述第二参与方,该流程包括如下步骤:
步骤S302,接收由隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,第一隐私数据存储于第一参与方;
优选地,约定的全同态加密算法选用基于CKKS的全同态加密算法。
步骤S304,对第一密文数据和第二隐私数据进行乘法运算,得到第二密文数据;
需要说明的是,本实施例中的第一隐私数据与第二隐私数据为事先约定好的,两者具有相同的向量维度。
现有的全同态加密算法在进行密文内积计算过程中,在乘法之后需要对每个位置的元素进行求和,由于算法的明文和密文并非是一一对应的关系。例如:(m1,m2,m3)加密后对应(c1,c2,c3);但改变明文中的任一元素,如:(m1,m2,m4),对应的密文的每个位置均不同,比如为(c4,c5,c6)。因此,需要对不同位置的元素求和,必须使用密文移位操作;因此,现有的密文内积计算过程中,为了实现N/2维的向量内积的密文计算,需要运行一次密文乘明文以及log2N-1次密文移位运算,计算过程繁琐,计算量大。
为了解决向量内积密文计算过程冗余的问题,在本实施例中,第一参与方将对自身的第一隐私数据和输入密钥进行加密后得到的密文(即上述第一密文数据)发送给了第二参与方,采用全同态加密算法,在保护第一隐私数据的隐私安全条件下,保留了第一隐私数据的计算性,使得第二参与方可直接对第一密文数据进行运算操作。
进一步地,第二参与方接收到第一密文数据后,将自身保存的第二隐私数据,通过明文乘密文计算,得到第二密文数据。例如,第一参与方的第一隐私数据为A=(a1,a2,a3),第二参与方的第二隐私数据约定为B=(b1,b2,b3),计算A和B的内积,通过对A加密得到C=Enc(A)=(c1,c2,c3),执行密文乘明文计算C*B=(c4,c5,c6)=Enc(a1*b1,a2*b2,a3*b3)(即上述第二密文数据)。
传统的密文内积计算过程中需要对C*B作密文移位,比如C*B+rotation(C*B,1)+rotation(C*B,2)=Enc(a1*b1+a2*b2+a3*b3,X,X),其中,rotation指代密文移位,从而解密得到内积。本实施例把解密和解码进行优化,实现一个新的函数f,比如对f(C*B)直接得到a1*b1+a2*b2+a3*b3,操作简单,无需进行逐位密文移位算法,减少了计算量。
步骤S306,对第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;
在本实施例的一个可能的实现方式中,上述步骤S306包括:从第二隐私数据中随机选取一初始向量;利用初始向量计算与第二密文数据的向量维度相同的目标随机向量,以作为预定的随机向量;对第二密文数据和目标随机向量进行加法运算,得到第三密文数据。
在本实施例中,通过从第二隐私数据中随机选择一个明文向量(即上述初始向量);然后计算一个与第二密文数据的向量维度相同的随机向量,进行一次明文加明文计算,以防止其他参与方直接通过进行明文乘密文计算即解密得到第二密文数据。
步骤S308,将第三密文数据发送至第一参与方,以使第一参与方根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。
本发明实施例提供的一种隐私数据处理方法,应用于隐私数据处理系统中的第二参与方,第二参与方接收到来自隐私数据处理系统中的第一参与方发送的第一密文数据,采用约定的全同态加密算法,经由第二参与方对其保存的第二隐私数据和第一密文数据进行乘法运算,即进行了一次明文乘密文运算,得到第二密文数据;然后对第二密文数据和预定的随机向量进行加法运算,即进行了一次密文加明文运算,得到第三密文数据;并将第三密文数据发送至第一参与方,以使第一参与方根据第三密文数据进行向量内积运算。由于第二参与方对自身保存的第二隐私数据处理的过程仅进行了一次密文乘明文及一次密文加密文的计算,无需进行逐位的密文移位运算,大大减少了冗余的计算过程,从而解决了相关技术中在保护数据隐私安全的条件下向量内积的计算过程冗余的技术问题。
下面结合一具体实施例,对本发明提供的隐私数据处理方法做进一步地说明。
图4是根据本发明一具体实施例提供的隐私数据处理方法的示意图,如图4所示,包括一下流程步骤:
步骤S401,参与方A(即上述第一参与方)将所拥有的数据向量VA={a0,…,aN/2-1}(即上述第一隐私数据)作为输入明文,将A的公钥PKA作为输入密钥,使用全同态加密CKKS算法加密为Enc(VA)(即上述第一密文数据),并将Enc(VA)发送给参与方B(即上述第二参与方);
需要说明的是,N的选取不是任意的,维数N、模数q以及CKKS算法的层数的选取一起影响算法的安全强度,而这些参数在执行本发明之前即可确定下来。
步骤S402,按照约定,参与方B将所拥有的数据向量VB={b0,…,bN/2-1}(即上述第二隐私数据),通过密文乘明文方法计算C=Enc(VA)×VB(即上述第二密文数据);
步骤S403,参与方B在Zq N/2-1空间内随机选取N/2-1维向量E0={e0,…eN/2-2}(即上述初始向量),计算n维向量(即上述预定的随机向量);
步骤S404,参与方B通过密文加明文方法计算R=C+E,并将R(即上述第三密文数据)发送给参与方A;
步骤S405,参与方A使用与公钥PKA对应的私钥SKA并调用decode()函数(即上述解码函数),解密获得向量VR=Dec(R)={r0,…,rN-1}(即上述目标向量),参与方A自身提供的向量内积计算公式,对数据维度和Vr进行运算,得到向量内积
其中,M是指隐私数据的向量维数,M是N的二倍,根据M可以计算N和n,即:M/2=N=2n-1;j表示[0,N-1]的整数,因此对于任意的j,可以逐位分解成0和1组成的字串,其中每个位置是jl,分解方式是:ξM=e-2πiM,ξM仅与M有关,其中i是虚数单位;然后结合这些参数,就可以依据这个公式计算bn-2;/>其中,k,l属于遍历的符号,最后将所有的bn-2,存储作为固定的参数,在每次计算s,只需要令rj与对应的固定参数相乘,再进行求和就能求得结果S了。
可见,计算结果仅与维数M和向量VR=Dec(R)有关,与输入的隐私数据及输入密钥对(即上述公钥和私钥)无关,影响CKKS的安全强度的模数、层数可通过预先计算得到。因此,在进行大量向量内积隐私计算过程中,仅需要对有关输入数据以及公私钥的步骤进行运算,再与上述预先计算所得结果结合计算最终结果。
可见,S计算除了rj需要由A,B双方交互得到外,其它部分都是确定的值,可以提前计算得到,不需要在协议中运算。当系统参数确定后即可进行预先计算(即计算S的过程)并存储相关结果。综上,为实现N/2维的向量内积的密文计算,本发明实施例需要运行一次密文乘明文以及一次密文加法运算,不需要执行密文移位运算,从而减少了冗余的计算过程,提高了算法效率。
通过本发明实施例,基于全同态加密的向量内积隐私计算方法将向量内积隐私计算过程中所需要的输入参数和系统参数分离,对系统参数执行预先计算,从而减少冗余的计算过程,提高算法效率。
基于上文各个实施例提供的隐私数据处理方法,基于同一发明构思,在本实施例中还提供了一种隐私数据处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本发明实施例提供的一种隐私数据处理装置的结构框图,如图5所示,该装置应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于第一参与方,上述装置包括:加密模块50,用于采用约定的全同态加密算法,对第一隐私数据进行加密,得到第一隐私数据对应的第一密文数据;发送模块52,连接至上述加密模块50,用于将第一密文数据发送至隐私数据处理系统中的第二参与方,经由第二参与方对第二隐私数据和第一密文数据进行乘法运算,得到第二密文数据,其中,第二隐私数据存储于第二参与方;对第二密文数据和预定的随机向量进行加法运算,得到第二隐私数据对应的第三密文数据;并将第三密文数据发送至第一参与方;计算模块54,连接至上述发送模块52,用于接收第三密文数据,并根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。
可选地,加密模块50包括:确定单元,用于将第一隐私数据作为输入的第一明文数据且第一参与方的公钥作为输入密钥;其中,公钥由通过调用约定的全同态加密算法的密钥生成组件生成;加密单元,用于采用约定的全同态加密算法对第一明文数据和输入密钥进行加密,得到第一密文数据。
可选地,计算模块54包括:解密单元,用于基于与第一参与方的公钥对应的私钥,通过调用约定的全同态加密算法中的解码函数对第三密文数据进行解密,得到目标向量;计算单元,用于对第一隐私数据对应的向量维数和目标向量进行运算,得到第一隐私数据和第二隐私数据的向量内积。
图6是根据本发明实施例提供的另一种隐私数据处理装置的结构框图,如图6所示,应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于第二参与方,上述装置包括:接收模块60,用于接收由隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;第一计算模块62,连接至上述接收模块60,用于对第一密文数据和第二隐私数据进行乘法运算,得到第二密文数据;第二计算模块64,连接至上述第一计算模块62,用于对第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;发送模块66,连接至上述第二计算模块64,用于将第三密文数据发送至第一参与方,以使第一参与方根据第三密文数据计算第一隐私数据和第二隐私数据的向量内积。
可选地,第二计算模块64包括:选取单元,用于从第二隐私数据中随机选取一初始向量;第一计算单元,用于利用初始向量计算与第二密文数据的向量维度相同的目标随机向量,以作为预定的随机向量;第二计算单元,用于对第二密文数据和目标随机向量进行加法运算,得到第三密文数据。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据;
S2,将所述第一密文数据发送至所述隐私数据处理系统中的第二参与方,经由所述第二参与方对所述第二隐私数据和所述第一密文数据进行乘法运算,得到第二密文数据,其中,所述第二隐私数据存储于所述第二参与方;对所述第二密文数据和预定的随机向量进行加法运算,得到所述第二隐私数据对应的第三密文数据;并将所述第三密文数据发送至所述第一参与方;
S3,接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,在本实施例中,上述存储介质还可以被设置为存储用于执行以下步骤的计算机程序:
S1,接收由所述隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;
S2,对所述第一密文数据和所述第二隐私数据进行乘法运算,得到第二密文数据;
S3,对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;
S4,将所述第三密文数据发送至所述第一参与方,以使所述第一参与方根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种隐私数据处理方法,其特征在于,应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于所述第一参与方,所述方法包括:
采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据;
将所述第一密文数据发送至所述隐私数据处理系统中的第二参与方,经由所述第二参与方对第二隐私数据和所述第一密文数据进行乘法运算,得到第二密文数据,其中,所述第二隐私数据存储于所述第二参与方;对所述第二密文数据和预定的随机向量进行加法运算,得到所述第二隐私数据对应的第三密文数据;并将所述第三密文数据发送至所述第一参与方,其中,所述第一隐私数据和所述第二隐私数据具有相同的向量维度;
接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
2.根据权利要求1所述的方法,其特征在于,所述采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据,包括:
将所述第一隐私数据作为输入的第一明文数据且所述第一参与方的公钥作为输入密钥;其中,所述公钥由通过调用所述约定的全同态加密算法的密钥生成组件生成;
采用约定的全同态加密算法对所述第一明文数据和所述输入密钥进行加密,得到所述第一密文数据。
3.根据权利要求2所述的方法,其特征在于,所述接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积,包括:
基于与所述第一参与方的公钥对应的私钥,通过调用约定的全同态加密算法中的解码函数对所述第三密文数据进行解密,得到目标向量;
对所述第一隐私数据对应的向量维数和所述目标向量进行运算,得到所述第一隐私数据和所述第二隐私数据的向量内积。
4.一种隐私数据处理方法,其特征在于,应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于所述第二参与方,所述方法包括:
接收由所述隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;
对所述第一密文数据和所述第二隐私数据进行乘法运算,得到第二密文数据,其中,所述第一隐私数据和所述第二隐私数据具有相同的向量维度;
对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;
将所述第三密文数据发送至所述第一参与方,以使所述第一参与方根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
5.根据权利要求4所述的方法,其特征在于,所述对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据,包括:
从所述第二隐私数据中随机选取一初始向量;
利用所述初始向量计算与所述第二密文数据的向量维度相同的目标随机向量,以作为预定的随机向量;
对所述第二密文数据和所述目标随机向量进行加法运算,得到所述第三密文数据。
6.一种隐私数据处理装置,其特征在于,应用于隐私数据处理系统中的第一参与方,第一隐私数据存储于所述第一参与方,所述装置包括:
加密模块,用于采用约定的全同态加密算法,对所述第一隐私数据进行加密,得到所述第一隐私数据对应的第一密文数据;
发送模块,用于将所述第一密文数据发送至所述隐私数据处理系统中的第二参与方,经由所述第二参与方对第二隐私数据和所述第一密文数据进行乘法运算,得到第二密文数据,其中,所述第二隐私数据存储于所述第二参与方;并对所述第二密文数据和预定的随机向量进行加法运算,得到所述第二隐私数据对应的第三密文数据;并将所述第三密文数据发送至所述第一参与方,其中,所述第一隐私数据和所述第二隐私数据具有相同的向量维度;
计算模块,用于接收所述第三密文数据,并根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
7.一种隐私数据处理装置,其特征在于,应用于隐私数据处理系统中的第二参与方,第二隐私数据存储于所述第二参与方,所述装置包括:
接收模块,用于接收由所述隐私数据处理系统中的第一参与方发送的通过采用约定的全同态加密算法对第一隐私数据进行加密得到的第一密文数据,其中,所述第一隐私数据存储于所述第一参与方;
第一计算模块,用于对所述第一密文数据和所述第二隐私数据进行乘法运算,得到第二密文数据,其中,所述第一隐私数据和所述第二隐私数据具有相同的向量维度;
第二计算模块,用于对所述第二密文数据和预定的随机向量进行加法运算,得到第三密文数据;
发送模块,用于将所述第三密文数据发送至所述第一参与方,以使所述第一参与方根据所述第三密文数据计算所述第一隐私数据和所述第二隐私数据的向量内积。
8.一种隐私数据处理系统,其特征在于,所述系统包括权利要求6所述的装置和权利要求7所述的装置。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN202210266401.6A 2022-03-17 2022-03-17 隐私数据处理方法及装置、系统、电子设备、存储介质 Active CN114465708B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210266401.6A CN114465708B (zh) 2022-03-17 2022-03-17 隐私数据处理方法及装置、系统、电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210266401.6A CN114465708B (zh) 2022-03-17 2022-03-17 隐私数据处理方法及装置、系统、电子设备、存储介质

Publications (2)

Publication Number Publication Date
CN114465708A CN114465708A (zh) 2022-05-10
CN114465708B true CN114465708B (zh) 2023-07-21

Family

ID=81416896

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210266401.6A Active CN114465708B (zh) 2022-03-17 2022-03-17 隐私数据处理方法及装置、系统、电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN114465708B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115473721A (zh) * 2022-09-06 2022-12-13 深圳壹账通智能科技有限公司 数据验证的处理方法、装置、计算机设备及可读存储介质
CN115510466B (zh) * 2022-09-28 2024-03-05 北京瑞莱智慧科技有限公司 密文预测方法、相关装置及存储介质
CN117540426A (zh) * 2023-11-27 2024-02-09 广东电网有限责任公司 基于同态加密和联邦学习的能源电力数据共享方法及装置
CN117978388B (zh) * 2024-03-29 2024-06-07 北京数牍科技有限公司 密钥生成的方法、装置、设备、介质及程序产品

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111294A (zh) * 2017-12-13 2018-06-01 南京航空航天大学 一种基于ML-kNN的保护隐私的多标记分类方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103259643B (zh) * 2012-08-14 2016-06-15 苏州大学 一种矩阵全同态加密方法
CN103401871B (zh) * 2013-08-05 2016-08-10 苏州大学 一种面向同态加密的密文定序方法及系统
CN105447361B (zh) * 2014-08-27 2018-08-21 华为技术有限公司 加密和相似性度量的方法、终端及服务器
CN105577357B (zh) * 2015-12-21 2019-05-31 东南大学 基于全同态加密的智能家居数据隐私保护方法
US11032061B2 (en) * 2018-04-27 2021-06-08 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
CN108964869A (zh) * 2018-06-08 2018-12-07 浙江捷尚人工智能研究发展有限公司 短密钥全同态加密方法及系统
US20210243005A1 (en) * 2018-07-04 2021-08-05 Shenzhen University Fully homomorphic encryption method and device and computer readable storage medium
CN111162896B (zh) * 2020-04-01 2020-06-26 支付宝(杭州)信息技术有限公司 双方联合进行数据处理的方法及装置
CN112989368B (zh) * 2021-02-07 2022-05-17 支付宝(杭州)信息技术有限公司 多方联合进行隐私数据处理的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111294A (zh) * 2017-12-13 2018-06-01 南京航空航天大学 一种基于ML-kNN的保护隐私的多标记分类方法

Also Published As

Publication number Publication date
CN114465708A (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
CN114465708B (zh) 隐私数据处理方法及装置、系统、电子设备、存储介质
CN110557245B (zh) 用于spdz的容错和安全多方计算的方法和系统
Wang et al. Cryptanalysis of a symmetric fully homomorphic encryption scheme
US9736128B2 (en) System and method for a practical, secure and verifiable cloud computing for mobile systems
KR100857323B1 (ko) 보안 통신 시스템에서 익명의 공개 키를 발생시키는 방법,장치 및 시스템
CN111512589A (zh) 用于利用spdz的快速安全多方内积的方法
RU2534944C2 (ru) Способ обеспечения безопасности связи в сети, используемые для этого устройство связи, сеть и компьютерная программа
CN111049650A (zh) 一种基于sm2算法的协同解密方法及装置、系统、介质
CN112287377A (zh) 基于联邦学习的模型训练方法、计算机设备及存储介质
CN112383388B (zh) 一种基于云计算大数据的双秘钥加密系统及方法
CN115276947B (zh) 隐私数据处理方法、装置、系统及存储介质
Peng Danger of using fully homomorphic encryption: A look at Microsoft SEAL
CN108933650B (zh) 数据加解密的方法及装置
CN111783129A (zh) 一种保护隐私的数据处理方法及系统
CN112865953B (zh) 基于辅助服务器的安全多方计算方法、装置和系统
Agrawal et al. Elliptic curve cryptography with hill cipher generation for secure text cryptosystem
CN113098675B (zh) 基于多项式完全同态的二进制数据加密系统及方法
US20240163084A1 (en) Method of data transmission, and electronic devic
US20240048360A1 (en) Method for processing multi-source data
CN115865311A (zh) 一种高效恒定轮次安全多方计算协议的优化方法和系统
CN117370927A (zh) 基于区块链的安全多方计算融合方法及系统
CN115567308A (zh) 一种基于密钥扩展的数据加密传输方法
CN114564730A (zh) 基于对称加密的联邦分组统计量计算方法、设备及介质
CN111835825A (zh) 一种适用于智慧物联体系通信双方传送消息的方法
CN116861477A (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