CN113630250A - 基于数据加密的模型训练方法及系统 - Google Patents

基于数据加密的模型训练方法及系统 Download PDF

Info

Publication number
CN113630250A
CN113630250A CN202110968138.0A CN202110968138A CN113630250A CN 113630250 A CN113630250 A CN 113630250A CN 202110968138 A CN202110968138 A CN 202110968138A CN 113630250 A CN113630250 A CN 113630250A
Authority
CN
China
Prior art keywords
ciphertext
random
data
shares
model
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
CN202110968138.0A
Other languages
English (en)
Other versions
CN113630250B (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.)
University of Jinan
Original Assignee
University of Jinan
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 University of Jinan filed Critical University of Jinan
Priority to CN202110968138.0A priority Critical patent/CN113630250B/zh
Publication of CN113630250A publication Critical patent/CN113630250A/zh
Application granted granted Critical
Publication of CN113630250B publication Critical patent/CN113630250B/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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/0435Network 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 symmetric encryption, i.e. same key used 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于数据加密的模型训练方法及系统,属于数据处理技术领域,包括:使用公钥加密原始数据得到密文c;生成随机负数R和随机负数的相反数R1,使用公钥加密随机负数的相反数R1得到密文份额c2;将c和c2通过同态运算生成秘密共享的密文份额c3;使用私钥解密所述密文份额c3,得到明文份额m3;使用随机负数和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;将得到的两个模型份额进行相加,得到最终所需要的模型。本发明可以自身需求有针对性地搜索数据进行训练,具有较强的数据选择灵活性;数据存储、训练中,均是以密文或者明文份额存在,保证了数据的安全性;在模型训练之前,数据从同态密文转换为明文份额,保证了模型训练的高效性和准确性。

Description

基于数据加密的模型训练方法及系统
技术领域
本发明涉及数据处理技术领域,具体涉及一种基于数据加密的模型训练方法及系统。
背景技术
传统的机器学习中,用户需要直接将明文数据上传到服务器,而互联网上很多包含大量数据的服务器存在严重的安全漏洞,更有些云服务商(例如谷歌、Facebook)其会自动挖掘用户隐私数据,导致用户数据隐私信息的泄露,因此,数据直接以明文状态存储在云服务器,会危害用户信息安全。
采用同态加密技术可以将数据以密文的形式上传到服务器,并对实数计算进行优化,再利用最小二乘法去近似sigmod函数以提高精度和效率(即降低计算成本)。虽然同态方案在数据的安全性上提供了很大的保障,但其存在时间与性能消耗的弊端,无法在短时间内训练出有效模型。
采用秘密共享将数据变成份额形式上传至两服务器,再将两服务器中的份额数据通过beaver三元组实现预测与模型训练。该方法在不暴露隐私的情况下快速地得到所需要的结果,并且具有较好的模型准确率。但在实际场景中,每个用户都是一次性将自己完整的数据上传到云服务商,并不是数据份额的形式分次上传,所以该方法并不方便用户直接使用。
在实际应用中,不同的用户拥有不同的需求,所请求的模型一般也是不同的。例如在医疗场景中,医疗机构想得到某种疾病的模型,则需要从病人的电子病历信息中筛选出与该疾病相关的检测数据,并不是直接使用一份完整的电子病历;并且对于不同的疾病模型,所需求的相关数据一般也是不同的。然而在以往的结合数据隐私保护的机器学习算法中,均是利用上传到云端的完整数据集进行模型训练,无法对数据集的某项特征进行筛选,无法灵活的满足用户的需求。
发明内容
本发明的目的在于提供一种能够进行数据特定特征筛选,满足用户需求灵活性,同时提高了数据存储、训练的安全性和效率的基于数据加密的模型训练方法及系统,以解决上述背景技术中存在的至少一项技术问题。
为了实现上述目的,本发明采取了如下技术方案:
一方面,本发明提供一种基于数据加密的模型训练方法,包括:
使用公钥加密原始数据得到密文c;
生成随机负数R和随机负数的相反数R1,其中,R作为训练所需的明文份额,使用公钥加密随机负数的相反数得到密文份额c2
将c和c2通过同态运算生成秘密共享的密文份额c3
使用私钥解密所述密文份额c3,得到明文份额m3
将两部分明文份额,借助Beaver三元组进行交互训练,得到两个模型份额;
将得到的两个模型份额进行相加,得到最终所需要的模型。
优选的,在得到密文c之前,还包括以下步骤:在可信任服务器中生成公私钥对和Beaver三元组,生成伪随机函数、随机预言机和随机数。
优选的,可信服务器随机选择两个长度相等的大素数p和q,满足gcd(pq(p-1)(q-1))=1;
计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数
Figure BDA0003224668990000021
Figure BDA0003224668990000022
表示模n2的互质同余类,并满足gcd(L(gλmod n2),n)=1;
生成公钥为pk=(n,g),私钥为sk=λ;
生成Beaver三元组<Z,U,V>,且满足Z=U×V;
生成3个伪随机函数分别为:
F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k、P:{0,1}k×{0,1}*→{0,1}k
生成两个随机预言机分别为:H1:{0,1}*→{0,1}*、H2:{0,1}*{0,1}*
生成3个k位随机数分别为:K1、K2、K3
优选的,提取原始数据的关键词、文件标志符;结合对称可搜索加密算法SSE,利用关键词、伪随机函数,构建查询表;结合对称可搜索加密算法SSE,利用关键词、伪随机函数、随机预言机、文件标志符,构建存储链表;利用公钥加密原始数据,生成的密文c为:c=Encpk(m,r1)=gm×r1 n mod n2
优选的,构建查询表Ts为:
Figure BDA0003224668990000031
其中,w表示关键词,N1表示存储链表中的第一个节点,addrs表示存储链表中节点的地址,
Figure BDA0003224668990000032
表示异或运算。
优选的,构建存储链表Lw为:
Figure BDA0003224668990000033
其中,Ni表示链表中的第i个结点,i=(1,2,...,#fw);θi表示为对应于每一个Ni的k位随机字符串,id表示文件标志符。
优选的,得到的密文份额c2为:
Figure BDA0003224668990000034
其中,Encpk表示加密算法。
生成的密文份额c3为:
Figure BDA0003224668990000035
其中,m表示原始数据,
Figure BDA0003224668990000036
Figure BDA0003224668990000037
表示模n的互质同余类。
第二方面,本发明提供一种基于数据加密的模型训练系统,包括:
第一加密模块,用于使用公钥加密原始数据得到密文c;
第二加密模块,用于生成随机负数R和随机负数的相反数R1,其中,R作为训练所需的明文份额,使用公钥加密随机负数的相反数得到密文份额c2
同态运算模块,用于将c和c2通过同态运算生成秘密共享的密文份额c3
解密模块,用于使用私钥解密所述密文份额c3,得到明文份额m3
交互运算模块,用于将两部分明文份额R和m3,借助Beaver三元组进行交互训练,得到两个模型份额;
结合模块,用于将两个模型份额进行相加,得到最终所需要的模型。
第三方面,本发明提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如上所述的基于数据加密的模型训练方法。
第四方面,本发明提供一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现如上所述的基于数据加密的模型训练方法的指令。
本发明有益效果:应用了对称可搜索加密技术(SSE),使得用户在选择数据方面不受限制,可以自身需求有针对性地搜索数据进行训练,具有较强的数据选择灵活性;数据在服务器上的存储、训练等一切过程中,均是以密文或者明文份额存在,保证了数据的安全性;在模型训练之前,数据从同态密文转换为明文份额,节省了训练时间,并且提升了模型的准确度,保证了模型训练的高效性和准确性。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所述的基于数据加密的模型训练方法流程图;
图2为本发明实施例所述的离线阶段的方法流程图;
图3为本发明实施例所述的在线阶段的方法流程图。
具体实施方式
下面详细叙述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。
还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件和/或它们的组。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
为便于理解本发明,下面结合附图以具体实施例对本发明作进一步解释说明,且具体实施例并不构成对本发明实施例的限定。
本领域技术人员应该理解,附图只是实施例的示意图,附图中的部件并不一定是实施本发明所必须的。
实施例1
本实施例1提供一种基于数据加密的模型训练系统,该系统包括:
第一加密模块,用于使用公钥加密原始数据得到密文c;
第二加密模块,用于生成随机负数R和随机负数的相反数R1,其中,R作为训练所需的明文份额,使用公钥加密随机负数的相反数R1得到密文份额c2
同态运算模块,用于将c和c2通过同态运算生成秘密共享的密文份额c3
解密模块,用于使用私钥解密所述密文份额c3,得到明文份额m3
交互运算模块,用于两部分明文份额R和m3,借助Beaver三元组进行交互训练,得到两个模型份额;
结合模块,用于将两个模型份额进行相加,得到最终所需要的模型。
本实施例1中,利用上述的基于数据加密的模型训练系统,实现了基于数据加密的模型训练方法,该方法包括:
利用第一加密模块,使用公钥加密原始数据得到密文c;
利用第二加密模块,生成随机负数R和随机负数的相反数R1,其中,R作为训练所需的明文份额,使用公钥加密随机负数的相反数得到密文份额c2
使用同态运算模块,将c和c2通过同态运算生成秘密共享的密文份额c3
利用解密模块,使用私钥解密所述密文份额c3,得到明文份额m3
利用交互运算模块,将两部分明文份额,借助Beaver三元组进行交互训练,得到两个模型份额;
利用结合模块,将得到的两个模型份额进行相加,得到最终所需要的模型。
本实施例1中,在得到密文c之前,还包括以下步骤:在可信任服务器中生成公私钥对和Beaver三元组,生成伪随机函数、随机预言机和随机数。
本实施例1中,可信服务器随机选择两个长度相等的大素数p和q,满足gcd(pq(p-1)(q-1))=1;
计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数
Figure BDA0003224668990000071
并满足gcd(L(gλmod n2),n)=1;
生成公钥为pk=(n,g),私钥为sk=λ;
生成Beaver三元组<Z,U,V>,且满足Z=U×V;
生成3个伪随机函数分别为:
F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k、P:{0,1}k×{0,1}*→{0,1}k
生成两个随机预言机分别为:H1:{0,1}*→{0,1}*、H2:{0,1}*{0,1}*
生成3个k位随机数分别为:K1、K2、K3
本实施例1中,提取原始数据的关键词、文件标志符;结合对称可搜索加密算法SSE,利用关键词、伪随机函数,构建查询表;结合对称可搜索加密算法SSE,利用关键词、伪随机函数、随机预言机、文件标志符,构建存储链表;利用公钥加密原始数据,生成密文c:c=Encpk(m,r1)=gm×r1 N mod n2
本实施例1中,构建查询表Ts为:
Figure BDA0003224668990000072
其中,w表示关键词,N1表示存储链表中的第一个节点,addrs表示存储链表中节点的地址,
Figure BDA0003224668990000073
表示异或运算。
本实施例1中,构建存储链表Lw为:
Figure BDA0003224668990000074
其中,Ni表示链表中的第i个结点,i=(1,2,...,#fw);θi表示为对应于每一个Ni的k位随机字符串,id表示文件标志符。
本实施例1中,得到的密文份额c2为:
Figure BDA0003224668990000081
其中,Encpk表示加密算法。
生成密文份额c3为:
Figure BDA0003224668990000082
其中,m表示原始数据。
本实施例1中,
Figure BDA0003224668990000083
Figure BDA0003224668990000084
表示模n的互质同余类,
Figure BDA0003224668990000085
表示模n2的互质同余类。
综上,本实施例1中,构建了一种基于数据加密的模型训练系统,使用该系统实现了一种基于数据加密的模型训练方法,解决了数据在第三方服务器上存储、训练的安全和效率问题以及所得模型是否能迎合用户需求的问题,本实施例1中,增强隐私保护的同时,提高了模型训练的灵活性和高效性。
实施例2
本实施例2提供一种基于数据加密的模型训练系统,该系统包括:
第一加密模块,用于使用公钥加密原始数据得到密文c;
第二加密模块,用于生成随机负数和随机负数的相反数,使用公钥加密随机负数的相反数得到密文份额c2
同态运算模块,用于将c和c2通过同态运算生成秘密共享的密文份额c3
解密模块,用于使用私钥解密所述密文份额c3,得到明文份额m3
交互运算模块,用于使用随机负数和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;
结合模块,用于将两个模型份额进行相加,得到最终所需要的模型。
具体的,本实施例2中,上述的基于数据加密的模型训练系统共涉及五个参与方,分别是数据拥有者、查询者、服务器S1、服务器S2以及可信服务器S3(完全可信任)。
其中,数据拥有者提取了原始数据的关键词w,在第一加密模块中:构建存储链表Lw和搜索表Ts,使用公钥加密原始数据m得到了密文c,并最终将Ts和密文数据c发送给服务器S1。查询者也提取了关键词w,构建了查询陷门tw,并将tw发送给服务器S1。在服务器S1中的第二加密模块,生成随机负数和随机负数的相反数,使用公钥加密随机负数的相反数得到密文份额c2;在服务器S1中的同态运算模块根据tw和Ts,查找到所需要的c,通过同态加密,生成秘密共享密文份额c3,并发送给服务器S2。在服务器S2中的解密模块,接收c3,使用私钥解密,得到明文份额m3。最后使用交互运算模块,在服务器S1和服务器S2中,使用随机负数和明文份额进行交互训练,更新模型参数,得到两个模型份额。最终,在客户端的结合模块,下载两个模型份额后进行相加,得到最终的所需要的的模型。
本实施例2中,利用上述的基于数据加密的模型训练系统,实现了基于数据加密的模型训练方法,该方法包括:利用第一加密模块,使用公钥加密原始数据得到密文c;利用第二加密模块,生成随机负数和随机负数的相反数,使用公钥加密随机负数的相反数得到密文份额c2;使用同态运算模块,利用c和c2,结合同态加密生成秘密共享的密文份额c3;利用解密模块,使用私钥解密所述密文份额c3,得到明文份额m3;利用交互运算模块,使用随机负数和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;利用结合模块,将得到的两个模型份额进行相加,得到最终所需要的模型。
本实施例2中,在得到密文c之前,还包括以下步骤:在可信任服务器中生成公私钥对和Beaver三元组,生成伪随机函数、随机预言机和随机数。该步骤为离线阶段的步骤,具体的,服务器S3本地生成同态加密的公私钥对(pk,sk)、Beaver三元组,完成对称可搜索加密算法SSE准备阶段,并且,服务器S3向每个参与方发送各自所需要内容。
本实施例2中的离线阶段,可信服务器S3随机选择两个长度相等的大素数p和q,满足gcd(pq(p-1)(q-1))=1;计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数
Figure BDA0003224668990000101
Figure BDA0003224668990000102
表示模n2的互质同余类,并满足gcd(L(gλmod n2),n)=1;生成公钥为pk=(n,g),私钥为sk=λ;生成Beaver三元组<Z,U,V>,且满足Z=U×V;生成3个伪随机函数分别为:F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k、P:{0,1}k×{0,1}*→{0,1}k;生成两个随机预言机分别为:H1:{0,1}*→{0,1}*、H2:{0,1}*{0,1}*;生成3个k位随机数分别为:K1、K2、K3
本实施例2中,在离线阶段,查询者提取关键词w,使用关键词w、伪随机函数F、G、P,生成了查询陷门
Figure BDA0003224668990000103
并将tw发送至服务器S1。
在服务器S1的第二加密模块中,首先通过SSE技术根据tw、Ts找到相应数据c。然后本地生成随机负数R和其相反数R1,随机负数R作为训练模型的一部分明文份额,利用公钥pk加密R1,得到c2。然后在同态运算模块中,将c、c2通过同态运算,生成秘密共享密文份额c3。服务器S1本地保存随机负数R,并将c3发送给服务器S2。
服务器S2接收到数据c3,利用私钥sk解密得到明文份额m3,作为模型训练的另一部分明文份额:
m3=Decsk(c3,λ)=(L(c3 λmod n2)/L(gλmod n2))modn。
服务器S1、S2初始化本地模型参数α(i),利用beaver三元组盲化各自的份额数据<x>(i)、〈y〉(i)进行交互计算,并采用随机梯度下降SGD算法训练模型,对模型进行优化,产生模型参数αnew(i)
本实施例2中,借助Beaver三元组乘法运算可行性分析包括:
服务器S1中拥有:{<x>1、<y1、<Z>1、<U>1、<V>1},
服务器S2中拥有:{<x>2、<y2、<Z>2、<U>2、<V>2}。
设:d=x×y
服务器S1、S2各自计算机自己的<δ>=<x>-<U>,<μ>=<y>-<V>用来盲化<x>、<y>。两方共享自己的<δ>、<μ>,计算出δ、μ。两服务器本地计算:d1=μ×<U>1+δ×<V>1+<Z>1;d2=δ×μ+μ×<U>2+δ×<V>2+<Z>2,
即d=d1+d2
本实施例2中,提取原始数据的关键词、文件标志符;结合对称可搜索加密算法SSE,利用关键词、伪随机函数,构建查询表;结合对称可搜索加密算法SSE,利用关键词、伪随机函数、随机预言机、文件标志符,构建存储链表;利用公钥加密原始数据,生成密文c:c=Encpk(m,r1)=gm×r1 n mod n2
本实施例2中,构建查询表Ts为:
Figure BDA0003224668990000111
其中,w表示关键词,N1表示存储链表中的第一个节点,addrs表示存储链表中节点的地址,
Figure BDA0003224668990000112
表示异或运算。
本实施例2中,构建存储链表Lw为:
Figure BDA0003224668990000113
其中,Ni表示链表中的第i个结点,i=(1,2,...,#fw);id表示文件标志符,θi表示对应于Ni的k位随机字符串。
本实施例2中,得到的密文份额c2为:
Figure BDA0003224668990000114
其中,Encpk表示加密算法;
生成的密文份额c3为:
Figure BDA0003224668990000115
其中,m表示原始数据,
Figure BDA0003224668990000116
Figure BDA0003224668990000117
表示模n的互质同余类。
综上,在本实施例2中,数据拥有者提取关键词,构建查询表、存储表、利用公钥加密数据,将查询表、存储表和密文上传至服务器S1。查询者根据自己的需求提取关键词,构建查询陷门,将陷门发送至服务器。服务器接收到查询陷门后,找到相应密文,筛选出查询者所需要的数据;再本地生成随机数,经公钥加密后与所需数据进行同态运算生成密文份额,传递给服务器S2。服务器S2利用私钥解密密文份额获取明文份额,与服务器S1交互运算更新模型参数。训练结束后查询者从服务器S1、服务器S2下载模型份额,本地相加恢复模型。
本实施例2所述的模型训练方法中,数据在服务器上的存储、训练等一切过程中,均是以密文或者明文份额存在,保证了数据的安全性。在模型训练之前,数据从同态密文转换为明文份额,这极大的节省了训练时间,并且将模型的准确度提升至可以媲美明文模型的水准,保证了模型训练的高效性和准确性。同时本方法中应用了对称可搜索加密技术(SSE),使得用户在选择数据方面不受限制,可以自身需求有针对性地搜索数据进行训练,因此本方案还具有很强的灵活性。
实施例3
如图1所示,为了解决数据在第三方服务器上存储、训练的安全和效率问题以及所得模型是否能迎合用户需求的问题,本实施例3中提出了一种增强了数据隐私保护的同时提高模型训练的灵活性和高效性的模型方法。
在本实施例3的方法中,数据拥有者提取关键词,构建查询表、存储表、利用公钥加密数据,将查询表、存储表和密文上传至服务器S1。查询者根据自己的需求提取关键词,构建查询陷门,将陷门发送至服务器。服务器接收到查询陷门后,找到相应密文,筛选出查询者所需要的数据;再本地生成随机数,经公钥加密后与所需数据进行同态运算生成密文份额,传递给服务器S2。服务器S2利用私钥解密密文份额获取明文份额,与服务器S1交互运算更新模型参数。训练结束后查询者从服务器S1、服务器S2下载模型份额,本地相加恢复模型。
本实施例3所述的模型训练方法,共分为离线阶段和在线阶段两个阶段,共涉及五个参与方,分别是:数据拥有者、查询者、服务器S1、服务器S2、可信服务器S3(完全可信任)。
如图3所示,本实施例3中,离线阶段包括的步骤为:
步骤(1):服务器S3本地生成同态加密的公私钥对(pk,sk)、Beaver三元组,完成SSE准备阶段。
步骤(2):服务器S3向每个参与方发送各自所需要内容。
如图2所示,本实施例3中,在线阶段包括的步骤为:
步骤(3):数据拥有者提取关键词w,构建存储链表Lw和搜索表Ts,使用pk加密数据m得到密文c,将Ts和密文数据c发送给服务器S1。
步骤(4):查询者提取关键词w,构建查询陷门tw,将tw发送给服务器S1。
步骤(5):服务器S1根据tw和Ts,查找到所需要的数据c最原始,通过同态加密、秘密共享生成密文份额c3,并发送给服务器S2。
步骤(6):服务器S2接收c3,使用私钥解密,得到明文份额m3
步骤(7):服务器S1、S2,使用各自份额并借助beaver三元组交互训练,更新(所需的)模型参数。
步骤(8):客户端下载模型份额,本地恢复模型。
上述步骤详细表述如下:
在离线阶段步骤(1)中,服务器S3随机选择两个长度相等的大素数p和q,并满足gcd(pq(p-1)(q-1))=1。计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数
Figure BDA0003224668990000131
并满足:gcd(L(gλmod n2),n)=1,生成公钥为pk=(n,g),私钥为sk=λ。服务器S3本地生成beaver三元组Z、U、V且满足Z=U×V,
Figure BDA0003224668990000141
表示模n2的互质同余类。
SSE准备阶段中:生成3个伪随机函数分别为:F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k、P:{0,1}k×{0,1}*→{0,1}k,2个随机预言机为:H1:{0,1}*→{0,1}*、H2:{0,1}*→{0,1}*,3个k位位伪随机数(k位随机字符串):K1、K2、K3
在离线阶段步骤(2)中,服务器S3向数据拥有者分发公私钥对(pk,sk)、伪随机函数F、P、G、随机预言机H1、H2以及伪随机数K1、K2、K3;向服务器S2发送(pk,sk);向服务器S1发送pk;将Beaver三元组以份额形式发送给服务器S1、S2;向查询者发送伪随机数K1、K2、K3和伪随机函数F、P、G。
在在线阶段步骤(3)中,数据拥有者首先提取关键词w、文件标志符id,并通过以下操作分别生成查询表、存储表、密文数据。
通过SSE技术并利用关键词w、伪随机函数F、G,构建查询表Ts
Figure BDA0003224668990000142
通过SSE技术并利用关键词w、伪随机函数P、随机预言机H1、文件标志符id,生成Lw
Figure BDA0003224668990000143
然后将链表Lw中的#fw个结点随机存储于数组As中。利用pk加密数据m,生成密文c=Encpk(m,r1)=gm×r1 n mod n2。数据拥有者将Ts、As以及密文c上传到服务器S1
在在线阶段步骤(4)中,查询者提取关键词w,使用关键词、伪随机函数F、G、P,生成查询陷门
Figure BDA0003224668990000144
并将tw发送至服务器S1。
在在线阶段步骤(5)中,服务器S1首先通过SSE技术根据tw、Ts找到相应数据c。然后本地生成随机负数R和其相反数R1,利用pk加密R1,得到密文份额c2
Figure BDA0003224668990000145
然后将c、c2通过同态运算,生成秘密共享密文份额
Figure BDA0003224668990000151
Figure BDA0003224668990000152
Figure BDA0003224668990000153
表示模n的互质同余类。服务器S1本地保存随机数R,并将c3发送给服务器S2。
在在线阶段步骤(6)中,服务器S2接收到数据c3,利用私钥sk解密得到明文份额m3=Decsk(c3,λ)=(L(c3 λmod n2)/L(gλmod n2))modn。
在在线阶段步骤(7)中,服务器S1、S2初始化本地模型参数α(i),利用beaver三元组盲化各自的份额数据<x>(i)、<y>(i)进行交互计算,并采用随机梯度下降SGD算法训练模型,对模型进行优化,产生模型参数αnew(i)
借助beaver三元组乘法运算可行性分析:经过离线阶段与在线阶段步骤(3)-(6)之后,服务器S1拥有:{<x>1、<y>1、<Z>1、<U>1、<V>1},服务器S2拥有:{<x>2、<y>2、<Z>2、<U>2、<V>2}。
设:d=x×y
服务器S1、S2各自计算机自己的<δ>=<x>-<U>,<μ>=<y>-<V>用来盲化<x>、<y>。两方共享自己的<δ>、<μ>,计算出δ、μ。两服务器本地计算:d1=μ×<U>1+δ×<V>1+<Z>1;d2=δ×μ+μ×<U>2+δ×<V>2+<Z>2,
即d=d1+d2
在在线阶段步骤(8)中,客户端从服务器下载模型份额,本地简单相加即可恢复模型。
本实施例3中,可搜索加密就是在加密的情况下实现搜索功能。目前很多文件存储在远程服务器,并且在有需要的时候需要能够检索文件或实现文件增,删,改。但是有的时候有些文件内容又不想让服务器知道,需要对文件加密处理,将加密文件存储到远程服务器同时又可以在保密的情况下实现搜索和文件修改,就是可搜索加密的研究内容。可搜索加密方法共分为两种:对称可搜索加密,非对称可搜索加密。
本实施例3中,采用的是对称可搜索加密,该方案用到了伪随机函数,哈希算法以及对称加密算法等工具,相比基于公钥密码的算法运算速度更快。
以下是对称可搜索加密参与方和步骤介绍:
在该方案中共有三个参与方,分别是数据拥有者、查询者、服务器。
数据拥有者:①提取关键词,以及文档的标识符,将关键词进行加密。②构建索引。③加密原文档所有数据。
服务器:①存储文档②根据查询者提交的令牌来进行检索,将查询到的加密文档发送给查询者。
查询者:①加密关键词,构建查询令牌。②解密服务器发送的加密文档。
用户采用SKE=(Gen,Enc,Dec)对称加密方案,并随机生成k位字符串、伪随机函数、随机预言机以及对称密钥K4:k位字符串:K1、K2、K3。F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k H1:{0,1}*→{0,1}*P:{0,1}k×{0,1}*→{0,1}kH2:{0,1}*→{0,1}*、K4=SSE.Gen(1k)。
数据拥有者提取关键词w和文件标志符id,并将每个w通过伪随机函数和随机预言机生成随机数。本地构建链表Lw,其#fw个结点
Figure BDA0003224668990000161
随机存储于数组As中。其中
Figure BDA0003224668990000162
θi表示对应于每一个Ni的k位随机字符串。
同时构建搜索表Ts
Figure BDA0003224668990000163
利用对称密钥K4加密文档。数据拥有者将Ts、As以及加密文档上传到服务器。
查询者提取关键词,并根据关键词和伪随机函数构建查询陷门tw
Figure BDA0003224668990000164
并将tw发送给服务器。
服务器可以根据tw和Ts获取文档标志符,找到加密文档,发送给查询者。
查询者获取加密文档,利用密钥K4本地解密文档。
同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。同态加密共分为三种:全同态加密,部分同态加密,类同态加密。
本实施例3中,采用的是部分同态加密中的Paillier同态加密方案,该方案可以做无限次同态加法。以下是Paillier同态加密介绍:
(1)秘钥生成:随机选择两个较大的素数p和q(两者长度需要相等),随机选择两个大质数p和q满足gcd(pq(p-1)(q-1))=1。这个属性保证两个质数长度相等。计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数
Figure BDA0003224668990000171
使得满足n整除g的阶:gcd(L(gλmod n2),n)=1,其中,公钥为pk=(n,g),私钥为sk=λ。
(2)加密数据:选择随机整数
Figure BDA0003224668990000172
Zn表模n同余类,
Figure BDA0003224668990000173
表示模n的互质同余类,
Figure BDA0003224668990000174
表示模n2的互质同余类。对于任意一个明文数据m,利用公钥(n,g)加密之后得到的密文c=Encpk(m,r)=gm×rn mod n2
(3)加法运算:
Figure BDA0003224668990000175
Figure BDA0003224668990000176
(4)解密数据:m=Decsk(c,λ)=(L(cλmod n2)/L(gλmod n2))mod n。
其中,L(u)=u-1/n,
Figure BDA0003224668990000177
本实施例3中,秘密共享其本质为:假设一个秘密s,秘密分发者将s运用某种特定的算法分成n份,然后将n份分别分发给n个参与者。在重构时,在n个参与者中选取t个人来重构这个秘密s。任意的t个人都可以重构,任意的t-1个参与者无法获得秘密的任何信息。
本实施例3中,提供了上述的基于数据加密的模型训练方法的实际应用场景-医疗场景:首先医院用每个病人电子病历信息中的检测项目的名称作为关键词,并利用伪随机函数F、P、G对每个关键词构建相应的搜索表和存储表;再采用pk加密数据;然后将搜索表、存储表以及加密的数据存储于服务器S1。由于对于不同的疾病模型,所需求的相关数据一般也是不同的,更不是直接使用病人的整张电子病历进行训练。所以医生可以根据自己的病种,在服务器S1中挑选不同的检测项目和标签进行训练,训练完成之后将两服务器返回的模型份额本地相加即可恢复疾病模型,用于判断疾病类别。
实施例4
本发明实施例4提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如上所述的基于数据加密的模型训练方法,该方法包括:
使用公钥加密原始数据得到密文c;
生成随机负数R和随机负数的相反数R1,其中,将随机负数R作为模型训练的一部分明文份额,使用公钥加密随机负数的相反数R1得到密文份额c2
将c和c2通过同态运算生成秘密共享的密文份额c3
使用私钥解密所述密文份额c3,得到明文份额m3
使用随机负数R和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;
将得到的两个模型份额进行相加,得到最终所需要的模型。
实施例5
本发明实施例5提供一种计算机程序(产品),包括计算机程序,所述计算机程序当在一个或多个处理器上运行时,用于实现如上所述的基于数据加密的模型训练方法,该方法包括:
使用公钥加密原始数据得到密文c;
生成随机负数R和随机负数的相反数R1,其中,将随机负数R作为模型训练的一部分明文份额,使用公钥加密随机负数的相反数R1得到密文份额c2
将c和c2通过同态运算生成秘密共享的密文份额c3
使用私钥解密所述密文份额c3,得到明文份额m3
使用随机负数R和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;
将得到的两个模型份额进行相加,得到最终所需要的模型。
实施例6
本发明实施例6提供一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现如上所述的基于数据加密的模型训练方法的指令,该方法包括:
使用公钥加密原始数据得到密文c;
生成随机负数R和随机负数的相反数R1,其中,将随机负数R作为模型训练的一部分明文份额,使用公钥加密随机负数的相反数R1得到密文份额c2
将c和c2通过同态运算生成秘密共享的密文份额c3
使用私钥解密所述密文份额c3,得到明文份额m3
使用随机负数R和明文份额m3,借助Beaver三元组进行交互训练,得到两个模型份额;
将得到的两个模型份额进行相加,得到最终所需要的模型。
综上所述,本发明实施例所述的基于数据加密的模型训练方法及系统,增强了隐私保护下模型训练的隐私性、灵活性、高效性,具有很强的灵活性,使得用户在选择数据方面不受限制,可以有针对性地挑选数据进行训练。在该方法中,数据在服务器中均以密文或份额形式存在,保证了数据的安全性。在该方法中,实现了同态密文转换为明文份额,在训练时具有高效性,节省了大量的时间与性能,并且在份额下训练出的模型准确率与明文状态下训练出的模型准确率相差无几。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明公开的技术方案的基础上,本领域技术人员在不需要付出创造性劳动即可做出的各种修改或变形,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种基于数据加密的模型训练方法,其特征在于,包括:
使用公钥加密原始数据得到密文c;
生成随机负数R和随机负数的相反数R1,其中,将随机负数R作为模型训练的一部分明文份额,使用公钥加密随机负数的相反数R1得到密文份额c2
将c和c2通过同态运算生成秘密共享的密文份额c3
使用私钥解密所述密文份额c3,得到另一部分明文份额m3
将两部分明文份额,借助Beaver三元组进行交互训练,得到两个模型份额;
将得到的两个模型份额进行相加,得到最终所需要的模型。
2.根据权利要求1所述的基于数据加密的模型训练方法,其特征在于,在得到密文c之前,还包括以下步骤:在可信任服务器中生成公私钥对和Beaver三元组,生成伪随机函数、随机预言机和随机数。
3.根据权利要求2所述的基于数据加密的模型训练方法,其特征在于:
可信服务器随机选择两个长度相等的大素数p和q,满足gcd(pq(p-1)(q-1))=1;
计算n=pq和λ=(lcm(p-1),(q-1)),随机选择整数g,
Figure FDA0003224668980000011
并满足gcd(L(gλmodn2),n)=1;
Figure FDA0003224668980000012
表示模n2的互质同余类;
生成公钥为pk=(n,g),私钥为sk=λ;
生成Beaver三元组<Z,U,V>,且满足Z=U×V;
生成3个伪随机函数分别为:
F:{0,1}k×{0,1}*→{0,1}k、G:{0,1}k×{0,1}*→{0,1}k、P:{0,1}k×{0,1}*→{0,1}k
生成两个随机预言机分别为:H1:{0,1}*→{0,1}*、H2:{0,1}*{0,1}*
生成3个k位伪随机数分别为:K1、K2、K3
4.根据权利要求3所述的基于数据加密的模型训练方法,其特征在于,提取原始数据的关键词、文件标志符;结合对称可搜索加密算法SSE,利用关键词、伪随机函数,构建查询表;结合对称可搜索加密算法SSE,利用关键词、伪随机函数、随机预言机、文件标志符,构建存储链表;利用公钥加密原始数据,生成密文c:c=Encpk(m,r1)=gm×r1 nmod n2
Figure FDA0003224668980000021
Figure FDA0003224668980000022
表示模n的互质同余类,m表示原始数据。
5.根据权利要求4所述的基于数据加密的模型训练方法,其特征在于:
构建查询表Ts为:
Figure FDA0003224668980000023
其中,w表示关键词,N1表示存储链表中的第一个节点,addrs表示存储链表中节点的地址,
Figure FDA0003224668980000024
表示异或运算。
6.根据权利要求5所述的基于数据加密的模型训练方法,其特征在于:
构建存储链表Lw为:
Figure FDA0003224668980000025
其中,Ni表示链表中的第i个结点,i=(1,2,...,#fw);id表示文件标志符,θi表示对应于每一个Ni的k位随机字符串。
7.根据权利要求6所述的基于数据加密的模型训练方法,其特征在于:
得到的密文份额c2为:
Figure FDA0003224668980000026
其中,Encpk表示加密运算;
生成的密文份额c3为:
Figure FDA0003224668980000027
其中,m表示原始数据,
Figure FDA0003224668980000028
8.一种基于数据加密的模型训练系统,其特征在于,包括:
第一加密模块,用于使用公钥加密原始数据得到密文c;
第二加密模块,用于生成随机负数和随机负数的相反数,其中,将随机负数R作为模型训练的一部分明文份额,使用公钥加密随机负数的相反数得到密文份额c2
同态运算模块,用于将c和c2通过同态运算生成秘密共享的密文份额c3
解密模块,用于使用私钥解密所述密文份额c3,得到作为模型训练的另一部分明文份额m3
交互运算模块,用于将两部分明文份额,借助Beaver三元组进行交互训练,得到两个模型份额;
结合模块,用于将两个模型份额进行相加,得到最终所需要的模型。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如权利要求1-7任一项所述的基于数据加密的模型训练方法。
10.一种电子设备,其特征在于,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现如权利要求1-7任一项所述的基于数据加密的模型训练的方法的指令。
CN202110968138.0A 2021-08-23 2021-08-23 基于数据加密的模型训练方法及系统 Active CN113630250B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110968138.0A CN113630250B (zh) 2021-08-23 2021-08-23 基于数据加密的模型训练方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110968138.0A CN113630250B (zh) 2021-08-23 2021-08-23 基于数据加密的模型训练方法及系统

Publications (2)

Publication Number Publication Date
CN113630250A true CN113630250A (zh) 2021-11-09
CN113630250B CN113630250B (zh) 2023-04-25

Family

ID=78387460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110968138.0A Active CN113630250B (zh) 2021-08-23 2021-08-23 基于数据加密的模型训练方法及系统

Country Status (1)

Country Link
CN (1) CN113630250B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114444488A (zh) * 2022-01-26 2022-05-06 中国科学技术大学 一种少样本机器阅读理解方法、系统、设备及存储介质
WO2023184847A1 (zh) * 2022-03-31 2023-10-05 深圳前海环融联易信息科技服务有限公司 一种基于秘密共享的纵向隐私保护逻辑回归方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200127830A1 (en) * 2018-10-23 2020-04-23 Samsung Sds Co., Ltd. Apparatus and method for encryption and decryption
US20200364303A1 (en) * 2019-05-15 2020-11-19 Nvidia Corporation Grammar transfer using one or more neural networks
CN112149160A (zh) * 2020-08-28 2020-12-29 山东大学 基于同态伪随机数的联邦学习隐私保护方法及系统
CN113037460A (zh) * 2021-03-03 2021-06-25 北京工业大学 基于同态加密和秘密共享的联邦学习隐私保护方法
CN113254743A (zh) * 2021-05-31 2021-08-13 西安电子科技大学 一种车联网中动态空间数据的安全语义感知搜索方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200127830A1 (en) * 2018-10-23 2020-04-23 Samsung Sds Co., Ltd. Apparatus and method for encryption and decryption
US20200364303A1 (en) * 2019-05-15 2020-11-19 Nvidia Corporation Grammar transfer using one or more neural networks
CN112149160A (zh) * 2020-08-28 2020-12-29 山东大学 基于同态伪随机数的联邦学习隐私保护方法及系统
CN113037460A (zh) * 2021-03-03 2021-06-25 北京工业大学 基于同态加密和秘密共享的联邦学习隐私保护方法
CN113254743A (zh) * 2021-05-31 2021-08-13 西安电子科技大学 一种车联网中动态空间数据的安全语义感知搜索方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114444488A (zh) * 2022-01-26 2022-05-06 中国科学技术大学 一种少样本机器阅读理解方法、系统、设备及存储介质
WO2023184847A1 (zh) * 2022-03-31 2023-10-05 深圳前海环融联易信息科技服务有限公司 一种基于秘密共享的纵向隐私保护逻辑回归方法和装置

Also Published As

Publication number Publication date
CN113630250B (zh) 2023-04-25

Similar Documents

Publication Publication Date Title
CN106533650B (zh) 面向云端的交互型隐私保护方法和系统
CN110572253A (zh) 一种联邦学习训练数据隐私性增强方法及系统
Salam et al. Implementation of searchable symmetric encryption for privacy-preserving keyword search on cloud storage
Qiu et al. Toward practical privacy-preserving frequent itemset mining on encrypted cloud data
Faber et al. Three-party ORAM for secure computation
Liu et al. Efficient and privacy-preserving skyline computation framework across domains
CN108111587B (zh) 一种基于时间释放的云存储搜索方法
Cui et al. Harnessing encrypted data in cloud for secure and efficient mobile image sharing
CN111967514B (zh) 一种基于数据打包的隐私保护决策树的样本分类方法
CN113630250B (zh) 基于数据加密的模型训练方法及系统
CN110175169A (zh) 一种加密数据去重方法、系统及相关装置
Yuan et al. Towards privacy-preserving and practical image-centric social discovery
CN114826564B (zh) 一种基于区块链的秘密图像共享和恢复方法
CN114598472A (zh) 基于区块链的条件隐藏可搜索代理重加密方法及存储介质
Sekar et al. Comparative study of encryption algorithm over big data in cloud systems
Hoang et al. A multi-server oblivious dynamic searchable encryption framework
CN109672525B (zh) 一种具有前向索引的可搜索公钥加密方法及系统
Karvelas et al. Efficient privacy-preserving big data processing through proxy-assisted ORAM
CN113132345B (zh) 具有可搜索功能的代理隐私集合求交方法
CN115510490A (zh) 一种非密钥共享的加密数据查询方法、装置、系统及设备
CN116248289A (zh) 基于密文属性加密的工业互联网标识解析访问控制方法
JP6693503B2 (ja) 秘匿検索システム、サーバ装置、秘匿検索方法、検索方法、およびプログラム
Yang et al. Efficient privacy-preserving inference outsourcing for convolutional neural networks
CN115085983A (zh) 数据处理方法、装置、计算机可读存储介质和电子设备
CN114073037B (zh) Rlwe明文的压缩和未察觉地扩展

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