CN112949741B - 基于同态加密的卷积神经网络图像分类方法 - Google Patents

基于同态加密的卷积神经网络图像分类方法 Download PDF

Info

Publication number
CN112949741B
CN112949741B CN202110288782.3A CN202110288782A CN112949741B CN 112949741 B CN112949741 B CN 112949741B CN 202110288782 A CN202110288782 A CN 202110288782A CN 112949741 B CN112949741 B CN 112949741B
Authority
CN
China
Prior art keywords
gradient
user
ciphertext
parameter
server
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
CN202110288782.3A
Other languages
English (en)
Other versions
CN112949741A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202110288782.3A priority Critical patent/CN112949741B/zh
Publication of CN112949741A publication Critical patent/CN112949741A/zh
Application granted granted Critical
Publication of CN112949741B publication Critical patent/CN112949741B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出一种基于同态加密的卷积神经网络图像分类方法,用于解决现有技术中存在的隐私信息容易泄露和无法抵抗共谋攻击的技术问题,实现步骤为:构建多方深度学习场景模型;参数服务器初始化加密参数;每个用户生成自己的公钥和私钥;参数服务器生成自己的公钥和私钥;辅助服务器生成自己的公钥和私钥,以及联合公钥;每个用户获取训练图像样本集和测试图像样本集;参数服务器构建卷积神经网络模型,并初始化训练参数;用户P获取梯度向量密文并上传;参数服务器对梯度密文向量进行聚合;参数服务器和辅助服务器对聚合梯度向量密文
Figure DDA0002981551190000011
进行同态重加密;用户P获取卷积神经网络模型的训练结果;每个用户获取图像分类结果。

Description

基于同态加密的卷积神经网络图像分类方法
技术领域
本发明属于图像处理技术领域,涉及一种图像分类方法,具体涉及一种基于同态加密的卷积神经网络图像分类方法。
背景技术
图像分类问题是图像处理技术领域的基础问题,它的目的是根据图像的语义信息将不同类别图像区分开来,实现最小的分类误差。现在主要的图像分类方法是使用卷积神经网络来进行的,但是要训练出一个好的用于图像分类的卷积神经网络模型就需要大量的图像数据。但是用户的图像数据包含了大量隐私数据,所以进行卷积神经网络模型训练时的海量图像数据交互必然会带来隐私安全问题,图像分类服务提供方无论是在训练还是识别上都会接触用户信息,如果出现恶意的服务提供方他可以轻易获取图像数据拥有者的隐私数据,从而造成隐私泄露问题并带来巨大的危害。
曲阜师范大学在其申请的专利文献“云环境下保护隐私的多方深度学习计算代理方法”(申请号201810439054.6,申请公布号CN 108712260 A)中公开了一种隐私保护的图像分类方法。该方法利用ElGamal同态加密将参与者一次训练时产生的梯度信息进行加密上传到参数服务器,再由参数服务器进行梯度聚合,最后参与者再下载聚合后的梯度进行下一次模型训练,直到模型收敛。该方法仍然存在的不足之处是,在模型训练时用户参与了联合密钥生成和联合解密,导致用户开销过大。同时服务器如果和任意参与者共谋则该方法不再安全,其他参与者的隐私受到威胁。
发明内容
本发明的目的是针对上述现有技术的缺陷与不足,提出一种基于同态加密的卷积神经网络图像分类方法,用于解决现有技术中存在的隐私信息容易泄露和无法抵抗共谋攻击的技术问题。
为实现上述目的,本发明采取的技术方案包括如下步骤:
(1)构建多方深度学习场景模型:
构建包括参数服务器、辅助服务器和I个用户P={Pi|1≤i≤I,I≥2}的多方深度学习场景模型,其中,Pi表示第i个用户;
(2)参数服务器初始化加密参数:
参数服务器选取大素数p作为安全模数,并将p的比特长度
Figure GDA0004048537470000029
作为安全参数k,
Figure GDA0004048537470000021
再根据p构建剩余类环
Figure GDA0004048537470000022
然后在
Figure GDA00040485374700000210
中随机选取p的原根g,其中,
Figure GDA0004048537470000023
(3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure GDA0004048537470000024
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure GDA0004048537470000025
将p、g和yi作为自己的公钥pki=(p,g,yi),其中,mod表示取模操作,≡表示同余;
(4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure GDA0004048537470000026
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡ga mod p,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya);
(5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure GDA0004048537470000027
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gb mod p,将p、g和yb作为自己的公钥pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure GDA0004048537470000028
后广播至所有用户;
(6)每个用户获取训练图像样本集和测试图像样本集:
每个用户Pi获取n幅图像数据,并对每幅图像进行标注,将半数以上图像及其标签作为训练图像样本集,将剩余的图像及其标签作为测试图像样本集,n≥500;
(7)参数服务器构建卷积神经网络模型,并初始化训练参数:
(7a)构建由依次层叠的输入层、num个卷积层-ReLU层-池化层、输出层组成的卷积神经网络模型,其中num≥2,输出层依次层叠的多个全连接层;
(7b)初始化卷积神经网络模型的权重参数向量为w0,迭代次数为d,最大迭代次数为D,D≥50,并令d=1,当前的权重参数向量为wd,其中w0的权重参数数量为T,T≥10000,当d=1时,wd=w0
(8)用户P获取梯度向量密文并上传:
(8a)每个用户Pi将自身的训练图像样本集作为卷积神经网络模型的输入进行前向传播,得到第d次迭代的预测结果
Figure GDA0004048537470000031
并采用均方误差损失函数,通过
Figure GDA0004048537470000038
计算卷积神经网络模型权重参数的梯度向量Δw(i_d),其中,Δw(i_d)的梯度数量为T;
(8b)每个用户Pi通过联合公钥PK对梯度向量Δw(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure GDA0004048537470000032
Figure GDA0004048537470000033
其中,
Figure GDA0004048537470000034
表示Pi获取的包括T个梯度密文的梯度密文向量,Enc(·)表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure GDA0004048537470000037
中随机选取的整数,
Figure GDA0004048537470000035
表示第t个梯度密文,1≤t≤T;
(9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure GDA0004048537470000036
Figure GDA0004048537470000041
其中,
Figure GDA0004048537470000042
表示第t个聚合梯度密文,∑表示求和操作;
(10)参数服务器和辅助服务器对聚合梯度向量密文
Figure GDA0004048537470000043
进行同态重加密:
(10a)参数服务器通过
Figure GDA0004048537470000044
Figure GDA0004048537470000045
分别表示第t个聚合梯度密文
Figure GDA0004048537470000046
的第一梯度密文
Figure GDA0004048537470000047
和第二梯度密文
Figure GDA0004048537470000048
Figure GDA0004048537470000049
其中
Figure GDA00040485374700000410
表示第t个聚合梯度明文,
Figure GDA00040485374700000411
Figure GDA00040485374700000412
(10b)参数服务器在剩余类环
Figure GDA00040485374700000413
中随机选取一个整数s作为盲化因子,并通过s对聚合梯度密文
Figure GDA00040485374700000414
进行盲化,得到盲化聚合梯度密文
Figure GDA00040485374700000415
后,将
Figure GDA00040485374700000416
发送给辅助服务器:
Figure GDA00040485374700000417
Figure GDA00040485374700000418
(10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure GDA00040485374700000419
同态解密,得到中间明文
Figure GDA00040485374700000420
并通过每个用户Pi的公钥pki
Figure GDA00040485374700000421
进行同态加密,得到Pi的一级密文
Figure GDA00040485374700000422
并将
Figure GDA00040485374700000423
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure GDA00040485374700000424
中随机选择的整数;
(10d)参数服务器对
Figure GDA00040485374700000425
进行去除盲化因子,得到Pi的二级密
Figure GDA00040485374700000426
Figure GDA00040485374700000427
Figure GDA0004048537470000051
(10e)参数服务器在剩余类环
Figure GDA0004048537470000052
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure GDA0004048537470000053
后,将
Figure GDA0004048537470000054
发送给对应的用户Pi
Figure GDA0004048537470000055
Figure GDA0004048537470000056
(11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure GDA0004048537470000057
进行同态解密,得到第t个聚合梯度明文
Figure GDA0004048537470000058
并将T个三级密文的同态解密结果组合成聚合梯度明文向量
Figure GDA0004048537470000059
并通过
Figure GDA00040485374700000510
对权重参数wd进行更新,然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1并执行步骤(8):
Figure GDA00040485374700000511
其中
Figure GDA00040485374700000512
(12)每个用户获取图像分类结果:
每个用户Pi将自身的测试图像样本集作为训练好的卷积神经网络模型的输入进行图像分类,得到每一幅测试图像的分类结果。
本发明与现有技术相比,具有如下优点:
1.本发明用户利用联合公钥同态加密并传输用户梯度数据,参数服务器可以利用同态加法特性在密文情况下对所有梯度数据进行聚合,并和辅助服务器共同完成同态重加密,降低了隐私信息泄露的几率,同时能够有效抵抗共谋攻击,与现有技术相比,具有更好的安全性。
2.本发明使用参数服务器和辅助服务器共同处理加密数据,由辅助服务器负责中间计算过程,克服了现有技术中用户发送完加密数据后还需要接收服务器计算的中间结果并进行处理后再发送回服务器,导致的用户开销较大的缺陷,与现有技术相比,有效地提高了计算效率。
附图说明
图1为本发明的实现流程图;
图2为本发明实施例采用的卷积神经网络的结构示意图。
具体实施方式
以下结合附图和具体实施例,对本发明作进一步详细描述:
参照图1,本发明包括如下步骤:
步骤1)构建多方深度学习场景模型:
构建包括参数服务器、辅助服务器和10个用户P={Pi|1≤i≤10}的多方深度学习场景模型,其中,Pi表示第i个用户。
步骤2)参数服务器初始化加密参数:
参数服务器选取安全参数选取k=1024,然后通过Python的SymPy库中randprime()函数生成1024比特长的大素数p作为安全模数,再根据p构建剩余类环
Figure GDA0004048537470000061
其中
Figure GDA0004048537470000062
为0到p-1的整数集合构成,然后在
Figure GDA0004048537470000063
中随机选取p的原根g。
步骤3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure GDA0004048537470000064
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure GDA0004048537470000065
将p、g和yi作为自己的公钥pki=(p,g,yi),其中,mod表示取模操作,≡表示同余。
步骤4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure GDA0004048537470000066
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡ga mod p,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya)。
步骤5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure GDA0004048537470000067
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gb mod p,将p、g和yb作为自己的公钥pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure GDA0004048537470000068
后广播至所有用户。
步骤6)每个用户获取训练图像样本集和测试图像样本集:
本实例使用的是MINIST手写数字图像数据集,该数据集对应的标签是0-9的数字,MINIST数据集中包括60000个训练图像样本集和10000个测试图像样本集,实例设置每个用户Pi拥有6000个训练图像样本集和1000个测试图像样本集。
步骤7)参数服务器构建卷积神经网络模型,并初始化训练参数:
步骤7a)构建由依次层叠的输入层、2个卷积层-ReLU层-池化层、输出层组成的卷积神经网络模型,输出层依次层叠的3个全连接层构成,其结构图2所示。
具体结构和参数设置为:
第一卷积层-ReLU层-池化层→第二卷积层-ReLU层-池化层;
第一卷积层和第二卷积层卷积核的大小均为5,步长均为1,第一卷积层的填充为2,卷积核个数设置为6、第二卷积层的填充为0,卷积核个数设置为16。
第一全连接层的的输入为400,输出为120,第二全连接层的输入为120,输出为84,第三全连接层的输入为84,输出为10。
步骤7b)初始化卷积神经网络模型的权重参数向量为w0,迭代次数为d,最大迭代次数为D,D=100,并令d=1,当前的权重参数向量为wd,其中w0的权重参数数量为T,T=61706,当d=1时,wd=w0
步骤8)用户P获取梯度向量密文并上传:
步骤8a)每个用户Pi将自身的训练图像样本集作为卷积神经网络模型的输入经过第一卷积层-ReLU层-池化层、第二卷积层-ReLU层-池化层和三个全连接层进行前向传播,得到第d次迭代的预测结果
Figure GDA0004048537470000071
并采用均方误差损失函数
Figure GDA0004048537470000072
通过
Figure GDA0004048537470000073
和训练图像样本集的真实标签值
Figure GDA0004048537470000074
计算卷积神经网络模型权重参数的梯度向量Δw(i_d),计算公式为:
Figure GDA0004048537470000075
其中Δw(i_d)的梯度数量为61706,
Figure GDA0004048537470000076
表示求偏导;
步骤8b)每个用户Pi通过联合公钥PK对梯度向量Δw(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure GDA0004048537470000089
Figure GDA0004048537470000081
其中,
Figure GDA0004048537470000082
表示Pi获取的包括61706个梯度密文的梯度密文向量,Enc(·)表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure GDA0004048537470000083
中随机选取的整数,
Figure GDA0004048537470000084
表示第t个梯度密文,1≤t≤61706。
该步骤中用户使用联合公钥将梯度向量Δw(i_d)进行同态加密,并上传到参数服务器,即使在不安全的信道传输,敌手也无法得到梯度向量的明文,所以不会泄露用户的隐私数据。
步骤9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure GDA0004048537470000085
Figure GDA0004048537470000086
其中,
Figure GDA0004048537470000087
表示第t个聚合梯度密文,∑表示求和操作。
该步骤中参数服务器利用同态加法特性,在不解密用户上传的梯度向量的情况下,完成对所有用户的梯度向量的聚合操作。由于参数服务器无法得到辅助服务器的私钥skb,所以聚合过程中无法对用户上传的梯度向量密文进行解密,参数服务器无法获得用户的隐私信息。
步骤10)参数服务器和辅助服务器对聚合梯度向量密文
Figure GDA0004048537470000088
进行同态重加密:
步骤10a)参数服务器通过
Figure GDA0004048537470000091
Figure GDA0004048537470000092
分别表示第t个聚合梯度密文
Figure GDA0004048537470000093
的第一梯度密文
Figure GDA0004048537470000094
和第二梯度密文
Figure GDA0004048537470000095
Figure GDA0004048537470000096
其中
Figure GDA0004048537470000097
表示第t个聚合梯度明文,
Figure GDA0004048537470000098
Figure GDA0004048537470000099
步骤10b)参数服务器在剩余类环
Figure GDA00040485374700000910
中随机选取一个整数s作为盲化因子,并通过s对聚合梯度密文
Figure GDA00040485374700000911
进行盲化,得到盲化聚合梯度密文
Figure GDA00040485374700000912
后,将
Figure GDA00040485374700000913
发送给辅助服务器:
Figure GDA00040485374700000914
Figure GDA00040485374700000915
该步骤中参数服务器传输
Figure GDA00040485374700000916
方便辅助服务器进行下一步的解密。
步骤10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure GDA00040485374700000917
同态解密,得到中间明文
Figure GDA00040485374700000918
并通过每个用户Pi的公钥pki
Figure GDA00040485374700000919
进行同态加密,得到Pi的一级密文
Figure GDA00040485374700000920
并将
Figure GDA00040485374700000921
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure GDA00040485374700000922
中随机选择的整数。
该步骤中辅助服务器使用自己的私钥skb解密得到的是有盲化因子s的中间密文,所以辅助服务器无法获得聚合梯度向量的明文,辅助服务器再使用每个用户Pi的公钥pki将中间明文进行同态加密,保证了在不安全信道中将Pi的一级密文传输给参数服务器时,敌手无法获得聚合梯度的明文,保障了聚合梯度向量的隐私安全。
步骤10d)参数服务器对
Figure GDA00040485374700000923
进行去除盲化因子,得到Pi的二级密文
Figure GDA00040485374700000924
Figure GDA0004048537470000101
Figure GDA0004048537470000102
该步骤中由于参数服务器知道盲化因子s可以通过计算去除Pi的一级密文,得到Pi的二级密文。
步骤10e)参数服务器在剩余类环
Figure GDA0004048537470000103
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure GDA0004048537470000104
后,将
Figure GDA0004048537470000105
发送给对应的用户Pi
Figure GDA0004048537470000106
Figure GDA0004048537470000107
该步骤中由于二级密文中的随机数zit是由辅助服务器选取的,为了防止在不安全信道传输时,辅助服务器截获密文进行解密,获取用户的隐私信息,所以参数服务器再选择一个随机数eit对二级密文进行混淆,同时不破坏密文结构,使得用户依然可以解密。保证了用户的隐私安全。
步骤11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure GDA0004048537470000108
进行同态解密,得到第t个聚合梯度明文
Figure GDA0004048537470000109
并将61706个三级密文的同态解密结果组合成聚合梯度明文向量
Figure GDA00040485374700001010
并通过
Figure GDA00040485374700001011
对权重参数wd进行更新,更新公式为
Figure GDA00040485374700001012
然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1,并执行步骤(8):
Figure GDA00040485374700001013
其中
Figure GDA00040485374700001014
其中α为学习率。
步骤12)每个用户获取图像分类结果:
每个用户Pi将自身的MINIST测试图像样本集作为训练好的卷积神经网络模型的输入进行图像分类,得到每一幅测试图像的分类结果。我们的测试结果为10000幅测试图片样本集,最终准确分类的有9915幅,准确率为99.15%。
方案中由于用户使用的是联合公钥进行加密上传,且联合公钥的私钥分别掌握在参数服务器和辅助服务器的手中,所以任何人都无法解密用户的加密梯度向量。并且假设服务器和某一用户共谋也无法获取到联合公钥的私钥,最后参数服务器返回聚合梯度向量密文给用户时,密文使用的是不同用户的公钥加密的,即使共谋也无法获取其他用户的私钥,所以方案可以有效的防止共谋攻击。
方案中用户不用参与联合密钥的生成和联合解密,用户不需要多余的计算开销,同时服务器的计算能力远大于用户,所以方案提高了计算效率。

Claims (4)

1.一种基于同态加密的卷积神经网络图像分类方法,其特征在于,包括如下步骤:
(1)构建多方深度学习场景模型:
构建包括参数服务器、辅助服务器和I个用户P={Pi|1≤i≤I,I≥2}的多方深度学习场景模型,其中,Pi表示第i个用户;
(2)参数服务器初始化加密参数:
参数服务器选取大素数p作为安全模数,并将p的比特长度
Figure FDA0004048537460000011
作为安全参数k,
Figure FDA0004048537460000012
再根据p构建剩余类环
Figure FDA0004048537460000013
然后在
Figure FDA0004048537460000014
中随机选取p的原根g,其中,
Figure FDA0004048537460000015
(3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure FDA0004048537460000016
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure FDA0004048537460000017
将p、g和yi作为自己的公钥pki=(p,g,yi),其中,mod表示取模操作,≡表示同余;
(4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure FDA0004048537460000018
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡gamodp,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya);
(5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure FDA0004048537460000019
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gbmodp,将p、g和yb作为自己的公钥pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure FDA0004048537460000021
后广播至所有用户;
(6)每个用户获取训练图像样本集和测试图像样本集:
每个用户Pi获取n幅图像数据,并对每幅图像进行标注,将半数以上图像及其标签作为训练图像样本集,将剩余的图像及其标签作为测试图像样本集,n≥500;
(7)参数服务器构建卷积神经网络模型,并初始化训练参数:
(7a)构建由依次层叠的输入层、num个卷积层-ReLU层-池化层、输出层组成的卷积神经网络模型,其中num≥2,输出层依次层叠的多个全连接层;
(7b)初始化卷积神经网络模型的权重参数向量为w0,迭代次数为d,最大迭代次数为D,D≥50,并令d=1,当前的权重参数向量为wd,其中w0的权重参数数量为T,T≥10000,当d=1时,wd=w0
(8)用户P获取梯度向量密文并上传:
(8a)每个用户Pi将自身的训练图像样本集作为卷积神经网络模型的输入进行前向传播,得到第d次迭代的预测结果
Figure FDA0004048537460000022
并采用均方误差损失函数,通过
Figure FDA0004048537460000023
计算卷积神经网络模型权重参数的梯度向量Δw(i_d),其中,Δw(i_d)的梯度数量为T;
(8b)每个用户Pi通过联合公钥PK对梯度向量Δw(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure FDA0004048537460000024
Figure FDA0004048537460000025
其中,
Figure FDA0004048537460000026
表示Pi获取的包括T个梯度密文的梯度密文向量,Enc(·)表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure FDA0004048537460000027
中随机选取的整数,
Figure FDA0004048537460000028
表示第t个梯度密文,1≤t≤T;
(9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure FDA0004048537460000031
Figure FDA0004048537460000032
其中,
Figure FDA0004048537460000033
表示第t个聚合梯度密文,∑表示求和操作;
(10)参数服务器和辅助服务器对聚合梯度向量密文
Figure FDA0004048537460000034
进行同态重加密:
(10a)参数服务器通过
Figure FDA0004048537460000035
Figure FDA0004048537460000036
分别表示第t个聚合梯度密文
Figure FDA0004048537460000037
的第一梯度密文
Figure FDA0004048537460000038
和第二梯度密文
Figure FDA0004048537460000039
Figure FDA00040485374600000310
其中
Figure FDA00040485374600000311
表示第t个聚合梯度明文,
Figure FDA00040485374600000312
Figure FDA00040485374600000313
(10b)参数服务器在剩余类环
Figure FDA00040485374600000314
中随机选取一个整数s作为盲化因子,并通过s对聚合梯度密文
Figure FDA00040485374600000315
进行盲化,得到盲化聚合梯度密文
Figure FDA00040485374600000316
后,将
Figure FDA00040485374600000317
发送给辅助服务器:
Figure FDA00040485374600000318
Figure FDA00040485374600000319
(10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure FDA00040485374600000320
同态解密,得到中间明文
Figure FDA00040485374600000321
Figure FDA00040485374600000322
并通过每个用户Pi的公钥pki
Figure FDA00040485374600000323
进行同态加密,得到Pi的一级密文
Figure FDA00040485374600000324
并将
Figure FDA0004048537460000041
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure FDA0004048537460000042
中随机选择的整数;
(10d)参数服务器对
Figure FDA0004048537460000043
进行去除盲化因子,得到Pi的二级密文
Figure FDA0004048537460000044
Figure FDA0004048537460000045
Figure FDA0004048537460000046
(10e)参数服务器在剩余类环
Figure FDA0004048537460000047
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure FDA0004048537460000048
后,将
Figure FDA0004048537460000049
发送给对应的用户Pi
Figure FDA00040485374600000410
Figure FDA00040485374600000411
(11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure FDA00040485374600000412
进行同态解密,得到第t个聚合梯度明文
Figure FDA00040485374600000413
并将T个三级密文的同态解密结果组合成聚合梯度明文向量
Figure FDA00040485374600000414
并通过
Figure FDA00040485374600000415
对权重参数wd进行更新,然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1,并执行步骤(8):
Figure FDA00040485374600000416
其中
Figure FDA00040485374600000417
(12)每个用户获取图像分类结果:
每个用户Pi将自身的测试图像样本集作为训练好的卷积神经网络模型的输入进行图像分类,得到每一幅测试图像的分类结果。
2.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(7a)中所述的构建由依次层叠的输入层、num个卷积层-ReLU层-池化层、输出层组成的卷积神经网络模型,其中num≥2,输出层依次层叠的多个全连接层,其中包括2个卷积层-ReLU层-池化层、3全连接层,具体结构和参数设置为:
第一卷积层-ReLU层-池化层→第二卷积层-ReLU层-池化层;
第一卷积层和第二卷积层卷积核的大小均为5,步长均为1,第一卷积层的填充为2,卷积核个数设置为6、第二卷积层的填充为0,卷积核个数设置为16。
3.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(8a)中所述的通过
Figure FDA0004048537460000051
计算卷积神经网络模型权重参数的梯度向量Δw(i_d),计算公式为:
Figure FDA0004048537460000052
其中
Figure FDA0004048537460000053
表示均方误差损失函数,
Figure FDA0004048537460000054
表示训练图像样本中的真实标签值,
Figure FDA0004048537460000055
表示求偏导。
4.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(11)中所述的通过
Figure FDA0004048537460000056
对权重参数wd进行更新,更新公式为:
Figure FDA0004048537460000057
其中α为学习率。
CN202110288782.3A 2021-03-18 2021-03-18 基于同态加密的卷积神经网络图像分类方法 Active CN112949741B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110288782.3A CN112949741B (zh) 2021-03-18 2021-03-18 基于同态加密的卷积神经网络图像分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110288782.3A CN112949741B (zh) 2021-03-18 2021-03-18 基于同态加密的卷积神经网络图像分类方法

Publications (2)

Publication Number Publication Date
CN112949741A CN112949741A (zh) 2021-06-11
CN112949741B true CN112949741B (zh) 2023-04-07

Family

ID=76230376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110288782.3A Active CN112949741B (zh) 2021-03-18 2021-03-18 基于同态加密的卷积神经网络图像分类方法

Country Status (1)

Country Link
CN (1) CN112949741B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108712260A (zh) * 2018-05-09 2018-10-26 曲阜师范大学 云环境下保护隐私的多方深度学习计算代理方法
CN109684855A (zh) * 2018-12-17 2019-04-26 电子科技大学 一种基于隐私保护技术的联合深度学习训练方法
CN110572253A (zh) * 2019-09-16 2019-12-13 济南大学 一种联邦学习训练数据隐私性增强方法及系统
CN111260081A (zh) * 2020-02-14 2020-06-09 广州大学 一种非交互式隐私保护多方机器学习方法
CN111563265A (zh) * 2020-04-27 2020-08-21 电子科技大学 一种基于隐私保护的分布式深度学习方法
CN111611610A (zh) * 2020-04-12 2020-09-01 西安电子科技大学 联邦学习信息处理方法、系统、存储介质、程序、终端
WO2020177392A1 (zh) * 2019-03-01 2020-09-10 深圳前海微众银行股份有限公司 基于联邦学习的模型参数训练方法、装置、设备及介质
WO2020233260A1 (zh) * 2019-07-12 2020-11-26 之江实验室 一种基于同态加密的隐私保护多机构数据分类方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11343068B2 (en) * 2019-02-06 2022-05-24 International Business Machines Corporation Secure multi-party learning and inferring insights based on encrypted data

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108712260A (zh) * 2018-05-09 2018-10-26 曲阜师范大学 云环境下保护隐私的多方深度学习计算代理方法
CN109684855A (zh) * 2018-12-17 2019-04-26 电子科技大学 一种基于隐私保护技术的联合深度学习训练方法
WO2020177392A1 (zh) * 2019-03-01 2020-09-10 深圳前海微众银行股份有限公司 基于联邦学习的模型参数训练方法、装置、设备及介质
WO2020233260A1 (zh) * 2019-07-12 2020-11-26 之江实验室 一种基于同态加密的隐私保护多机构数据分类方法
CN110572253A (zh) * 2019-09-16 2019-12-13 济南大学 一种联邦学习训练数据隐私性增强方法及系统
CN111260081A (zh) * 2020-02-14 2020-06-09 广州大学 一种非交互式隐私保护多方机器学习方法
CN111611610A (zh) * 2020-04-12 2020-09-01 西安电子科技大学 联邦学习信息处理方法、系统、存储介质、程序、终端
CN111563265A (zh) * 2020-04-27 2020-08-21 电子科技大学 一种基于隐私保护的分布式深度学习方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Privacy preserving multi-party computation delegation for deep learning in cloud computing;Xu Ma et al;《Information Sciences》;20180831;全文 *
基于同态加密的卷积神经网络前向传播方法;谢四江等;《计算机应用与软件》;20200212(第02期);全文 *
机器学习的隐私保护研究综述;刘俊旭等;《计算机研究与发展》;20200215(第02期);全文 *
隐私保护机器学习的密码学方法;蒋瀚等;《电子与信息学报》;20200515(第05期);全文 *

Also Published As

Publication number Publication date
CN112949741A (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
Chen et al. Cryptanalysis and improvement in an image encryption scheme using combination of the 1D chaotic map
Gentry et al. i-hop homomorphic encryption and rerandomizable Yao circuits
CN110572253A (zh) 一种联邦学习训练数据隐私性增强方法及系统
Zheng et al. Lossless data hiding based on homomorphic cryptosystem
CN112134688B (zh) 一种基于量子混沌映射与sha-3的非对称图像加密方法
CN113972981B (zh) 一种基于sm2密码算法的高效门限签名方法
Kumar et al. Image cryptography with matrix array symmetric key using chaos based approach
Darwish et al. Secure image compression approach based on fusion of 3D chaotic maps and arithmetic coding
CN110460442B (zh) 一种基于格的密钥封装方法
CN112949741B (zh) 基于同态加密的卷积神经网络图像分类方法
Al-Husainy et al. Image encryption technique based on the entropy value of a random block
Shah et al. Prediction error expansion‐based reversible data hiding in encrypted images with public key cryptosystem
Gopalakrishnan et al. IMAGE ENCRYPTION IN BLOCK-WISE WITH MULTIPLE CHAOTIC MAPS FOR PERMUTATION AND DIFFUSION.
CN115865313A (zh) 一种轻量级隐私保护纵向联邦学习模型参数聚合方法
Mostafa et al. A new chaos based medical image encryption scheme
Nguyen et al. Privacy-preserving spam filtering using homomorphic and functional encryption
Alkotb et al. Secure Communications of Visual Data Over CF Relays
Huang et al. Encrypted domain secret medical-image sharing with secure outsourcing computation in iot environment
Mondal et al. A multi-stage encryption technique to enhance the secrecy of image
Jabbar et al. Adaptive Hiding Algorithm Based on Mapping Database
CN113806759A (zh) 联邦学习模型的训练方法、装置、电子设备和存储介质
Kashid et al. NS4: a Novel Security approach for extracted video keyframes using Secret Sharing Scheme
Chen et al. Distributed encrypted image-based reversible data hiding
You et al. Secure two-party computation approach for ntruencrypt
Jayanthi et al. Encrypted image-based data hiding technique using elliptic curve ElGamal cryptography

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