CN116506218A - 一种云环境下用户数据交互式计算隐私保护方法及*** - Google Patents
一种云环境下用户数据交互式计算隐私保护方法及*** Download PDFInfo
- Publication number
- CN116506218A CN116506218A CN202310744970.1A CN202310744970A CN116506218A CN 116506218 A CN116506218 A CN 116506218A CN 202310744970 A CN202310744970 A CN 202310744970A CN 116506218 A CN116506218 A CN 116506218A
- Authority
- CN
- China
- Prior art keywords
- server
- ciphertext
- vector
- user data
- cloud environment
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 26
- 239000013598 vector Substances 0.000 claims abstract description 102
- 238000004364 calculation method Methods 0.000 claims abstract description 38
- 238000009826 distribution Methods 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 6
- 238000009827 uniform distribution Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 abstract description 6
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 34
- 230000004913 activation Effects 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 10
- 238000013527 convolutional neural network Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/95—Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种云环境下用户数据交互式计算隐私保护方法及***,方法包括将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;两个向量之和为初始的真实特征向量;设计了一种基于乱序和旋转的交互式加密修正线性单元计算方法,将修正线性单元计算分发给两个服务器执行,在两个服务器间进行四次数据传输,从而实现安全地计算ReLU。基于随机输出的计算协议保证了两个服务器的计算结果相加结果等同于对真实向量计算ReLU。本发明避免了服务器端的预计算,相较于基于混淆电路的方案减小了开销。本发明对于输入的数据仅进行拆分和合并等简单操作,并不进行近似计算,精度高于基于多项式近似的方案。
Description
技术领域
本发明属于数据隐私保护技术领域,具体涉及一种云环境下用户数据交互式计算隐私保护方法及***。
背景技术
云环境下使用深度卷积神经网络模型推理服务时,有两个基本步骤:用户选择服务类型,并将私有数据上传云端;服务商根据服务类型将用户数据输入深度卷积神经网络,进行修正线性单元计算等处理后将处理结果发送给用户。在这一过程中,用户数据产生了所有权与使用权的分离,因此存在数据隐私泄露风险。
为了保护以上过程中的用户数据安全,已有研究主要提出了基于同态加密、混淆电路等原语的安全多方计算协议来计算修正线性单元。但现有方案存在两点不足:(1)对于基于混淆电路的方案,由于混淆电路本身通信开销巨大、并行计算能力低下,因此,此类方法执行耗时较大;(2)对于基于同态加密的方案,在同态加密的环境下进行比较计算通常需要借助多项式近似的方法进行,这会造成计算精度的下降。
发明内容
本发明的目的在于针对上述现有技术中的问题,提供一种云环境下用户数据交互式计算隐私保护方法及***,利用同态加密通信开销小、可并行计算等优势,避免精度下降,在进行非线性激活函数计算的同时,实现了对用户数据的隐私保护。
为了实现上述目的,本发明有如下的技术方案:
一种云环境下用户数据交互式计算隐私保护方法,包括:
将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;
第一服务器生成指令{pk, rk,<X1>k}发送给第二服务器,式中,pk为公钥,rk为旋转密钥,使用公钥pk加密向量X1得到<X1>k,k表示密文个数;
第二服务器随机生成一个与向量X2大小相同的掩码矢量m,计算掩码矢量m与<X1>k+X2的哈达玛积,得到密文<>k,并按照长度为k的随机索引I改变密文</>>k序列顺序,以及对每个密文进行旋转操作,得到改变序列顺序且旋转后的密文</>>k,发送给第一服务器;
第一服务器对改变序列顺序且旋转后的密文<>k进行解密,得到明文/>并将负元素置为0,得到明文/>,再次使用公钥pk加密明文/>,得到密文</>>k,发送给第二服务器;
第二服务器对<>k中的每一个密文进行反旋转并按照随机索引I的逆序恢复序列顺序,得到密文</>1>k,计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;第二服务器随机产生一个输出向量Y2,按照<Y1>k=<Y>k-Y2计算得到密文<Y1>k,发送给第一服务器;
第一服务器对密文<Y1>k进行解密,得到输出向量Y1。
作为一种优选方案,所述将用户数据转化为多维向量的步骤包括:
特征提取,从用户数据中提取目标特征;
向量化,将提取到的目标特征转化为向量进行表示。
作为一种优选方案,所述第一服务器生成指令{pk, rk,<X1>k}的步骤包括:
通过密钥生成函数KeyGen(),生成公钥pk,安全密钥sk,辅助计算密钥ek和旋转密钥rk,其中,/>是安全参数,/>是密文的时隙数;
通过加密算法Enc(pk,X1),使用公钥pk加密向量X1为<X1>k, k=,/>为向量维数。
作为一种优选方案,所述掩码矢量m,/>表示/>维的实数域,m>0;
通过辅助计算函数Eval(ek, m○(<X1>k+X2))来计算掩码矢量m与<X1>k+X2的哈达玛积。
作为一种优选方案,第二服务器通过旋转函数Rot(rk,<>i, +ri)对</>>k中的每个密文依次进行旋转操作,以及对</>>k中的每一个密文进行反旋转,式中r为随机向量,r/>,表示/>维的整数环。
作为一种优选方案,所述随机索引I以及随机向量r按照均匀分布、正态分布或对数正态分布方法生成。
作为一种优选方案,所述第一服务器通过解密算法Dec(sk,<>k),用安全密钥sk对改变序列顺序且旋转后的密文</>>k进行解密,得到明文/>;所述第一服务器通过加密算法Enc(pk,/>),使用公钥pk加密明文/>,得到密文</>>k。
作为一种优选方案,所述第二服务器通过辅助计算函数Eval(ek,<1>k○/>)来计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;所述第一服务器通过解密算法Dec(sk,<Y1>k),用安全密钥sk对密文<Y1>k进行解密,得到输出向量Y1。
一种云环境下用户数据交互式计算隐私保护***,包括:
用户数据转化及向量分发模块,用于将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;
第一服务器向量加密模块,用于第一服务器生成指令{pk, rk,<X1>k}发送给第二服务器,式中,pk为公钥,rk为旋转密钥,使用公钥pk加密向量X1得到<X1>k,k表示密文个数;
第二服务器向量加密模块,用于第二服务器随机生成一个与向量X2大小相同的掩码矢量m,计算掩码矢量m与<X1>k+X2的哈达玛积,得到密文<>k,并按照长度为k的随机索引I改变密文</>>k序列顺序,以及对每个密文进行旋转操作,得到改变序列顺序且旋转后的密文</>>k,发送给第一服务器;
第一服务器解密第二服务器密文模块,用于第一服务器对改变序列顺序且旋转后的密文<>k进行解密,得到明文/>并将负元素置为0,得到明文/>,再次使用公钥pk加密明文,得到密文</>>k,发送给第二服务器;
第二服务器计算第一服务器输出向量密文模块,用于第二服务器对<>k中的每一个密文进行反旋转并按照随机索引I的逆序恢复序列顺序,得到密文</>1>k,计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;第二服务器随机产生一个输出向量Y2,并按照<Y1>k=<Y>k-Y2计算得到密文<Y1>k,发送给第一服务器;
第一服务器输出向量解密模块,用于第一服务器对密文<Y1>k进行解密,得到输出向量Y1。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现所述的云环境下用户数据交互式计算隐私保护方法。
相较于现有技术,本发明至少具有如下的有益效果:
通过两个服务器分别持有神经网络中的层的特征向量,两个向量之和为初始的真实特征向量,通过随机改变密文顺序以及对每个密文进行旋转操作,将修正线性单元的计算分发给两个服务器执行,在两个服务器间进行四次数据传输,从而实现安全地计算修正线性单元。基于随机输出的计算协议保证了两个服务器的计算结果相加结果等同于对真实向量计算修正线性单元。本发明方法由于避免了服务器端的预计算,相较于基于混淆电路的传统方案,减小了开销。并且对于输入的数据仅进行拆分和合并等简单操作,并不进行近似计算,精度高于基于多项式近似的方案。第一服务器和第二服务器各自均不能得到完整的向量,无法得知完整的用户数据,在进行非线性激活函数计算的同时,实现了对用户数据的隐私保护。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1 本发明实施例云环境下用户数据交互式计算隐私保护方法数据流向图。
图2 本发明实施例云环境下用户数据交互式计算隐私保护***结构框图。
具体实施方式
下面结合附图对本发明做进一步的详细说明。
修正线性单元(Rectified Linear Unit, ReLU),又称线性整流函数,是一种人工神经网络中常用的激活函数,通常指代以斜坡函数及其变种为代表的非线性函数。ReLU通过阈值0来工作,即f (x) = max(0, x),当x<0时,输出0,反之,当x ≥ 0时输出线性函数。
同时,云计算服务作为一种基本的软件信息服务模式被广泛应用于生产生活中。结合深度神经网络和云计算技术,产生了全新的服务模式:深度学习即服务(DLaaS),以卷积神经网络为例,其基本的服务步骤如下:
1、云服务商或企业用户在云端部署深度卷积神经网络模型;
2、个人用户将私有图像数据上传到云端;
3、云服务商利用个人用户的数据作为输入,执行深度卷积神经网络模型的计算;
4、云服务得到计算结果,将结果发送给个人用户。
对于个人用户来说,以上服务模式面临着潜在隐私泄露风险。个人用户将私有数据上传到云端后被失去了对数据的访问控制,云服务商可以得到完整的未经加密等处理的原始数据。因此,亟需提出在使用深度学习即服务时能够保护用户私有数据隐私安全的技术。
神经网络的训练是从输入到输出的一个神秘未知函数映射。如果不使用激活函数,那么输出只能是线性的,因此,需要非线性激活函数处理。
由于ReLU可以使一部分神经元输出为0,造成网络的稀疏性,从而减少参数之间的依存性,减少过拟合的情况,故深层网络的激活函数默认大多采用ReLU函数。因此,在计算ReLU时进行隐私保护是安全卷积神经网络的一个关键步骤。
针对以上问题,目前主要采用密码学中的安全多方计算技术设计安全推理方案,基本原语有同态加密和混淆电路。同态加密旨在解决在不接触数据的前提下,对数据进行加工处理的问题。使用同态加密将数据加密后,对加密数据进行运算处理,之后对数据进行解密,解密结果等同于数据未进行加密,并进行同样的运算处理。目前,同态加密支持的运算主要为加法运算和乘法运算。CKKS是目前比较流行的同态加密方案,最大的优势是能够处理浮点数,甚至是复数。混淆电路也可实现相同的功能,一般分为两步:电路构造,电路执行。混淆电路通常也需要对称密加密、不经意传输等技术辅助完成计算。
现有最先进的技术方案是Delphi[1],它是一种混合同态加密和混淆电路技术的安全神经网络推理方案。对于非线性函数的评估,Delphi引入了两种不同的方法,第一种方法使用混淆电路来评估ReLU激活函数,而第二种方法使用安全评估ReLU的多项式近似。前者提供了最大的精度,但需要用户和服务提供商之间进行大量通信,效率低,而后者计算成本低,但降低了精度。此外为了辅助完成协议,需要服务器离线生成大量乘法三元组,计算开销大。
公布号为CN112051980A的专利申请[2]公开一种基于牛顿迭代法的非线性激活函数计算装置,通过近似计算在资源消耗较少地情况下实现了高精度的计算。公布号为CN110688088A的专利申请[3]公开了一种面向神经网络的通用非线性激活函数计算装置和方法,使用分段线性逼近方法对函数进行分段线性拟合操作,通过模式选择和相应的线性变化来实现神经网络中不同的非线性函数的运算,从而减少片上计算和存储资源的消耗。这两个已公开的专利均实现了非线性激活函数的高效计算,而没有满足数据隐私保护的需求。
[1] P. Mishra, R. Lehmkuhl, A. Srinivasan, W. Zheng, and R. A. Popa,“Delphi: A cryptographic inference service for neural networks,” in 29thUSENIX Security Symposium, USENIX Security, 2020, pp. 2505–2522.
[2] 浙江大学,之江实验室. 一种基于牛顿迭代法的非线性激活函数计算装置:中国,CN202011090563.6 [P]. 2022-06-21.
[3] 南京大学. 一种面向神经网络的通用非线性激活函数计算装置和方法:中国,CN201910944451.3 [P]. 2023-03-28.
上述现有的方案,基于混淆电路的方案需要用户和服务提供商之间进行大量通信,通信开销巨大、并行计算能力低下,执行耗时较大。基于多项式近似的方案精度低。此外,在高效进行非线性激活函数计算时,不能很好地对用户数据隐私性进行保护。
请参阅图1,本发明实施例提出一种云环境下用户数据交互式计算隐私保护方法,将用户数据转化为维向量,并划分为向量X1、X2发送给第一服务器和第二服务器。
(一)第一服务器执行以下操作:
1、通过密钥生成函数KeyGen(),生成公钥pk,安全密钥sk,辅助计算密钥ek和旋转密钥rk,其中,/>是安全参数,/>是密文的时隙数;
2、通过加密算法Enc(pk,X1),使用公钥pk加密向量X1为<X1>k。其中,k表示密文个数,k=。
3、发送{pk, rk,<X1>k}给第二服务器。
(二)第二服务器执行以下操作:
1、按照均匀分布、正态分布或对数正态分布方法随机生成一个与X2大小相同的掩码矢量m,m,/>表示/>维的实数域,m>0;
2、通过辅助计算函数Eval(ek, m○(<X1>k+X2)),对密文进行计算,将结果记为<>k。其中,m○(<X1>k+X2)表示计算m与(<X1>k+X2)的哈达玛积,即将两个矩阵m、(<X1>k+X2)相同位置的元素对应相乘。
3、按照均匀分布、正态分布或对数正态分布方法生成一个长度为k的随机索引I,按照随机索引I改变密文序列顺序。
4、按照均匀分布、正态分布或对数正态分布方法生成一个随机向量r,r,/>表示维的整数环。通过旋转函数Rot(rk,</>>i, +ri)对每个密文</>>i依次进行旋转操作,得到</>>k。
5、发送<>k给第一服务器。
(三)第一服务器执行以下操作:
1、通过解密算法Dec(sk,<>k),用安全密钥sk解密</>>k,得到/>。
2、将中的负元素置为0,得到/>。
3、通过加密算法Enc(pk,),用公钥pk加密/>,得到</>>k。
4、发送<>k给第二服务器。
(四)第二服务器执行以下操作:
1、通过旋转函数Rot(rk,<>i, -ri)对每个密文</>>i依次进行旋转操作,得到新的</>1>k。
2、使用步骤(二)中的随机索引I,按照I的逆序-I改变<1>k序列顺序。
3、通过辅助计算函数Eval(ek,<1>k○/>),计算</>1>k与/>的哈达玛积,即将两个矩阵/>、</>1>k相同位置的元素对应相乘,得到<Y>k。
4、按照均匀分布、正态分布或对数正态分布方法随机产生一个输出Y2 。
5、计算<Y1>k=<Y>k-Y2。
6、发送<Y1>k给第一服务器。
(五)第一服务器通过解密算法Dec(sk,<Y1>k),用安全密钥sk解密<Y1>k,得到Y1。
本发明实施例将用户数据转化为维向量的过程涉及两个主要步骤:特征提取和向量化。
特征提取和向量化的方法取决于数据类型和具体任务的要求。
1.特征提取:
特征提取是将原始数据转化为可用于表示的特征的过程。例如,如果用户数据是文本,可以使用词袋模型、TF-IDF(词频-逆文档频率)、Word2Vec等技术从文本中提取有意义的特征。如果用户数据是图像,可以使用卷积神经网络(CNN)或预训练的特征提取器(如VGG、ResNet)从图像中提取特征。
2.向量化:
从原始数据中提取了有意义的特征后要将这些特征转化为向量表示。这可以通过不同的方法来实现。以下是一些常用的向量化技术:
One-Hot 编码:适用于离散特征。将每个特征映射到一个长度为d的二进制向量,其中d是特征的可能取值数目。向量的每个元素表示特征取值是否存在。例如,对于一个有3个取值的特征,可以使用[1, 0, 0]、[0, 1, 0]、[0, 0, 1]来表示不同的取值。
数值缩放:适用于连续特征。可以使用标准化(将数据缩放为均值为0,标准差为1的分布)或归一化(将数据缩放到0和1之间)等技术将数值特征进行缩放。
嵌入(Embedding):适用于高维离散特征,如文本中的单词。通过将每个离散特征映射到低维连续向量空间中的实数向量,可以捕捉到特征之间的语义关系。常见的嵌入技术包括Word2Vec和GloVe。
特征组合:在某些情况下,将多个特征组合成单个向量也可能是有意义的。例如,可以将多个词的词向量平均或拼接起来作为句子的表示。
本发明实施例云环境下用户数据交互式计算隐私保护方法,涉及到两个服务器。维向量X1、X2为两个服务器分别持有的神经网络中的层的特征向量,两个向量之和为初始的真实特征向量。本发明实施例的方案基于CKKS同态加密方案,包含五种算法(KeyGen, Enc,Dec, Eval, Rot)。在两个服务器间进行如下的四次数据传输,从而实现安全地计算ReLU。
参见图2,本发明实施例还提出一种云环境下用户数据交互式计算隐私保护***,包括:
用户数据转化及向量分发模块,用于将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;
第一服务器向量加密模块,用于第一服务器生成指令{pk, rk,<X1>k}发送给第二服务器,式中,pk为公钥,rk为旋转密钥,使用公钥pk加密向量X1得到<X1>k,k表示密文个数;
第二服务器向量加密模块,用于第二服务器随机生成一个与向量X2大小相同的掩码矢量m,计算掩码矢量m与<X1>k+X2的哈达玛积,得到密文<>k,并按照长度为k的随机索引I改变密文</>>k序列顺序,以及对每个密文进行旋转操作,得到改变序列顺序且旋转后的密文</>>k,发送给第一服务器;
第一服务器解密第二服务器密文模块,用于第一服务器对改变序列顺序且旋转后的密文<>k进行解密,得到明文/>并将负元素置为0,得到明文/>,再次使用公钥pk加密明文,得到密文</>>k,发送给第二服务器;
第二服务器计算第一服务器输出向量密文模块,用于第二服务器对<>k中的每一个密文进行反旋转并按照随机索引I的逆序恢复序列顺序,得到密文</>1>k,计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;第二服务器随机产生一个输出向量Y2,并按照<Y1>k=<Y>k-Y2计算得到密文<Y1>k,发送给第一服务器;
第一服务器输出向量解密模块,用于第一服务器对密文<Y1>k进行解密,得到输出向量Y1。
本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现所述的云环境下用户数据交互式计算隐私保护方法。
示例性的,所述存储器中存储的指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在计算机可读存储介质中,并由所述处理器执行,以完成本发明所述的云环境下用户数据交互式计算隐私保护方法。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机程序在服务器中的执行过程。
所述电子设备可以是智能手机、笔记本、掌上电脑及云端服务器等计算设备。所述电子设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述电子设备还可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备还可以包括输入输出设备、网络接入设备、总线等。
所述处理器可以是中央处理单元(CentraL Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DigitaL SignaL Processor,DSP)、专用集成电路(AppLication Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieLd-ProgrammabLe Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可以是所述服务器的内部存储单元,例如服务器的硬盘或内存。所述存储器也可以是所述服务器的外部存储设备,例如所述服务器上配备的插接式硬盘,智能存储卡(Smart Media Card ,SMC) ,安全数字(Secure DigitaL ,SD)卡,闪存卡(FLashCard)等。进一步地,所述存储器还可以既包括所述服务器的内部存储单元也包括外部存储设备。所述存储器用于存储所述计算机可读指令以及所述服务器所需的其他程序和数据。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
需要说明的是,上述模块单元之间的信息交互、执行过程等内容,由于与方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种云环境下用户数据交互式计算隐私保护方法,其特征在于,包括:
将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;
第一服务器生成指令{pk, rk, <X1>k }发送给第二服务器,式中,pk为公钥,rk为旋转密钥,使用公钥pk加密向量X1得到<X1>k,k表示密文个数;
第二服务器随机生成一个与向量X2大小相同的掩码矢量m,计算掩码矢量m与<X1>k+ X2的哈达玛积,得到密文<>k,并按照长度为k的随机索引I改变密文</>>k序列顺序,以及对每个密文进行旋转操作,得到改变序列顺序且旋转后的密文</>>k,发送给第一服务器;
第一服务器对改变序列顺序且旋转后的密文<>k进行解密,得到明文/>并将负元素置为0,得到明文/>,再次使用公钥pk加密明文/>,得到密文</>>k,发送给第二服务器;
第二服务器对<>k中的每一个密文进行反旋转并按照随机索引I的逆序恢复序列顺序,得到密文</>1>k,计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;第二服务器随机产生一个输出向量Y2,按照< Y1 >k =<Y>k -Y2计算得到密文< Y1 >k,发送给第一服务器;
第一服务器对密文< Y1 >k进行解密,得到输出向量Y1。
2.根据权利要求1所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述将用户数据转化为多维向量的步骤包括:
特征提取,从用户数据中提取目标特征;
向量化,将提取到的目标特征转化为向量进行表示。
3. 根据权利要求1所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述第一服务器生成指令{pk, rk, <X1>k }的步骤包括:
通过密钥生成函数KeyGen(),生成公钥pk,安全密钥sk,辅助计算密钥ek和旋转密钥rk,其中,/>是安全参数,/>是密文的时隙数;
通过加密算法Enc(pk, X1),使用公钥pk加密向量X1为<X1>k, k=,/>为向量维数。
4.根据权利要求3所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述掩码矢量m,/>表示/>维的实数域,m>0;
通过辅助计算函数Eval(ek, m○(<X1>k+ X2))来计算掩码矢量m与<X1>k+ X2的哈达玛积。
5. 根据权利要求3所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,第二服务器通过旋转函数Rot(rk, <>i , +ri)对</>>k中的每个密文依次进行旋转操作,以及对</>>k中的每一个密文进行反旋转,式中r为随机向量,r/>,/>表示/>维的整数环。
6.根据权利要求5所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述随机索引I以及随机向量r按照均匀分布、正态分布或对数正态分布方法生成。
7. 根据权利要求3所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述第一服务器通过解密算法Dec(sk, <>k),用安全密钥sk对改变序列顺序且旋转后的密文</>>k进行解密,得到明文/>;所述第一服务器通过加密算法Enc(pk, />),使用公钥pk加密明文/>,得到密文</>>k。
8. 根据权利要求3所述的云环境下用户数据交互式计算隐私保护方法,其特征在于,所述第二服务器通过辅助计算函数Eval(ek, <1>k○/>)来计算密文</>1>k与/>的哈达玛积,得到密文<Y>k;所述第一服务器通过解密算法Dec(sk, <Y1>k),用安全密钥sk对密文<Y1 >k进行解密,得到输出向量Y1。
9.一种云环境下用户数据交互式计算隐私保护***,其特征在于,包括:
用户数据转化及向量分发模块,用于将用户数据转化为多维向量,并划分为向量X1、X2发送给第一服务器和第二服务器;
第一服务器向量加密模块,用于第一服务器生成指令{pk, rk, <X1>k }发送给第二服务器,式中,pk为公钥,rk为旋转密钥,使用公钥pk加密向量X1得到<X1>k,k表示密文个数;
第二服务器向量加密模块,用于第二服务器随机生成一个与向量X2大小相同的掩码矢量m,计算掩码矢量m与<X1>k+ X2的哈达玛积,得到密文<>k,并按照长度为k的随机索引I改变密文</>>k序列顺序,以及对每个密文进行旋转操作,得到改变序列顺序且旋转后的密文<>k,发送给第一服务器;
第一服务器解密第二服务器密文模块,用于第一服务器对改变序列顺序且旋转后的密文<>k进行解密,得到明文/>并将负元素置为0,得到明文/>,再次使用公钥pk加密明文/>,得到密文</>>k,发送给第二服务器;
第二服务器计算第一服务器输出向量密文模块,用于第二服务器对<>k中的每一个密文进行反旋转并按照随机索引I的逆序恢复序列顺序,得到密文</>1>k,计算密文</>1>k与的哈达玛积,得到密文<Y>k;第二服务器随机产生一个输出向量Y2,并按照< Y1 >k =<Y>k-Y2计算得到密文< Y1 >k,发送给第一服务器;
第一服务器输出向量解密模块,用于第一服务器对密文< Y1 >k进行解密,得到输出向量Y1。
10.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现如权利要求1至8中任意一项所述的云环境下用户数据交互式计算隐私保护方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310744970.1A CN116506218B (zh) | 2023-06-25 | 2023-06-25 | 一种云环境下用户数据交互式计算隐私保护方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310744970.1A CN116506218B (zh) | 2023-06-25 | 2023-06-25 | 一种云环境下用户数据交互式计算隐私保护方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116506218A true CN116506218A (zh) | 2023-07-28 |
CN116506218B CN116506218B (zh) | 2023-08-29 |
Family
ID=87328680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310744970.1A Active CN116506218B (zh) | 2023-06-25 | 2023-06-25 | 一种云环境下用户数据交互式计算隐私保护方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116506218B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117420953A (zh) * | 2023-10-07 | 2024-01-19 | 国家电网有限公司华东分部 | 数据存储方法及装置、计算机设备和可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104444A (zh) * | 2010-12-29 | 2011-06-22 | 重庆邮电大学 | Lte***中信道质量指示的快速编译码方法 |
CN109951443A (zh) * | 2019-01-28 | 2019-06-28 | 湖北工业大学 | 一种云环境下隐私保护的集合交集计算方法及*** |
CN110688088A (zh) * | 2019-09-30 | 2020-01-14 | 南京大学 | 一种面向神经网络的通用非线性激活函数计算装置和方法 |
CN112051980A (zh) * | 2020-10-13 | 2020-12-08 | 浙江大学 | 一种基于牛顿迭代法的非线性激活函数计算装置 |
CN115834018A (zh) * | 2022-10-28 | 2023-03-21 | 蚂蚁区块链科技(上海)有限公司 | 一种保护隐私的多方数据处理方法、***和设备 |
-
2023
- 2023-06-25 CN CN202310744970.1A patent/CN116506218B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104444A (zh) * | 2010-12-29 | 2011-06-22 | 重庆邮电大学 | Lte***中信道质量指示的快速编译码方法 |
CN109951443A (zh) * | 2019-01-28 | 2019-06-28 | 湖北工业大学 | 一种云环境下隐私保护的集合交集计算方法及*** |
CN110688088A (zh) * | 2019-09-30 | 2020-01-14 | 南京大学 | 一种面向神经网络的通用非线性激活函数计算装置和方法 |
CN112051980A (zh) * | 2020-10-13 | 2020-12-08 | 浙江大学 | 一种基于牛顿迭代法的非线性激活函数计算装置 |
CN115834018A (zh) * | 2022-10-28 | 2023-03-21 | 蚂蚁区块链科技(上海)有限公司 | 一种保护隐私的多方数据处理方法、***和设备 |
Non-Patent Citations (2)
Title |
---|
JIANFENG CHI等: ""Privacy Partition: A Privacy-preserving Framework for Deep Neural Networks in Edge Networks"", 《2018 THIRD ACM/IEEE SYMPOSIUM ON EDGE COMPUTING》 * |
蒋林智;许春香;王晓芳;陈克非;王保仓;: "(全)同态加密在基于密文计算模型中的应用", 密码学报, no. 06 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117420953A (zh) * | 2023-10-07 | 2024-01-19 | 国家电网有限公司华东分部 | 数据存储方法及装置、计算机设备和可读存储介质 |
CN117420953B (zh) * | 2023-10-07 | 2024-03-26 | 国家电网有限公司华东分部 | 数据存储方法及装置、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116506218B (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Multiple-image encryption algorithm based on mixed image element and chaos | |
WO2022237450A1 (zh) | 多方安全计算方法、装置、设备及存储介质 | |
JP2022508351A (ja) | 準同型暗号に基づくプライバシー保護多機関データ分類方法 | |
RU2638639C1 (ru) | Кодер, декодер и способ кодирования и шифрования входных данных | |
EP3959839A1 (en) | Methods and systems for privacy preserving evaluation of machine learning models | |
CN111049650A (zh) | 一种基于sm2算法的协同解密方法及装置、***、介质 | |
CN116506218B (zh) | 一种云环境下用户数据交互式计算隐私保护方法及*** | |
Lin et al. | Chaos based encryption system for encrypting electroencephalogram signals | |
CN113407963A (zh) | 基于signsgd的联邦学习梯度安全聚合方法 | |
Duong-Ngoc et al. | Efficient NewHope cryptography based facial security system on a GPU | |
CN115994559A (zh) | 一种高效的不经意神经网络转化方法 | |
Riza et al. | The Application of RSA and LSB in Securing Message on Imagery | |
Yasumura et al. | Secure Naïve Bayes classification protocol over encrypted data using fully homomorphic encryption | |
US8458452B1 (en) | System and method for encryption and decryption of data transferred between computer systems | |
Manikandan et al. | On dual encryption with RC6 and combined logistic tent map for grayscale and DICOM | |
CN114564730A (zh) | 基于对称加密的联邦分组统计量计算方法、设备及介质 | |
CN107248914B (zh) | 一种iOS设备上新型对称加密***及加密方法 | |
CN112906715A (zh) | 一种基于深度神经网络的安全图像特征提取与分类方法 | |
Salman et al. | A homomorphic cloud framework for big data analytics based on elliptic curve cryptography | |
Shafran et al. | Crypto-oriented neural architecture design | |
CN114362912A (zh) | 基于分布式密钥中心的标识密码生成方法、电子设备及介质 | |
CN115134471A (zh) | 图像加密、解密方法以及相关设备 | |
Wang et al. | High-throughput privacy-preserving GRU network with homomorphic encryption | |
Li et al. | A new image encryption algorithm based on modified optically injected semiconductor laser chaotic system | |
CN115865302A (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 |