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

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

Info

Publication number
CN112949741A
CN112949741A CN202110288782.3A CN202110288782A CN112949741A CN 112949741 A CN112949741 A CN 112949741A CN 202110288782 A CN202110288782 A CN 202110288782A CN 112949741 A CN112949741 A CN 112949741A
Authority
CN
China
Prior art keywords
user
gradient
parameter
server
ciphertext
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
CN202110288782.3A
Other languages
English (en)
Other versions
CN112949741B (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)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (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 BDA0002981551170000021
作为安全参数k,
Figure BDA0002981551170000022
再根据p构建剩余类环
Figure BDA0002981551170000023
然后在
Figure BDA0002981551170000024
中随机选取p的原根g,其中,
Figure BDA0002981551170000025
(3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure BDA0002981551170000026
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure BDA0002981551170000027
将p、g和yi作为自己的公钥 pki=(p,g,yi),其中,mod表示取模操作,≡表示同余;
(4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure BDA0002981551170000028
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡ga modp,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya);
(5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure BDA0002981551170000029
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gb modp,将p、g和yb作为自己的公钥 pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure BDA00029815511700000210
后广播至所有用户;
(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 BDA0002981551170000031
并采用均方误差损失函数,通过
Figure BDA0002981551170000032
计算卷积神经网络模型权重参数的梯度向量△w(i_d),其中,△w(i_d)的梯度数量为T;
(8b)每个用户Pi通过联合公钥PK对梯度向量△w(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure BDA0002981551170000033
Figure BDA0002981551170000034
其中,
Figure BDA0002981551170000035
表示Pi获取的包括T个梯度密文的梯度密文向量,Enc(·)表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure BDA0002981551170000036
中随机选取的整数,
Figure BDA0002981551170000037
表示第t个梯度密文,1≤t≤T;
(9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure BDA0002981551170000038
Figure BDA0002981551170000041
其中,
Figure BDA0002981551170000042
表示第t个聚合梯度密文,∑表示求和操作;
(10)参数服务器和辅助服务器对聚合梯度向量密文
Figure BDA0002981551170000043
进行同态重加密:
(10a)参数服务器通过
Figure BDA0002981551170000044
Figure BDA0002981551170000045
分别表示第t个聚合梯度密文
Figure BDA0002981551170000046
的第一梯度密文
Figure BDA0002981551170000047
和第二梯度密文
Figure BDA0002981551170000048
其中
Figure BDA0002981551170000049
表示第t个聚合梯度明文,
Figure BDA00029815511700000410
(10b)参数服务器在剩余类环
Figure BDA00029815511700000411
中随机选取一个整数s作为盲化因子,并通过s对聚合梯度密文
Figure BDA00029815511700000412
进行盲化,得到盲化聚合梯度密文
Figure BDA00029815511700000413
后,将
Figure BDA00029815511700000414
发送给辅助服务器:
Figure BDA00029815511700000415
Figure BDA00029815511700000416
(10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure BDA00029815511700000417
同态解密,得到中间明文
Figure BDA00029815511700000418
Figure BDA00029815511700000419
并通过每个用户Pi的公钥pki
Figure BDA00029815511700000420
进行同态加密,得到Pi的一级密文
Figure BDA00029815511700000421
并将
Figure BDA00029815511700000422
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure BDA00029815511700000423
中随机选择的整数;
(10d)参数服务器对
Figure BDA00029815511700000424
进行去除盲化因子,得到Pi的二级密
Figure BDA00029815511700000425
Figure BDA00029815511700000426
Figure BDA00029815511700000427
(10e)参数服务器在剩余类环
Figure BDA00029815511700000428
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure BDA0002981551170000051
后,将
Figure BDA0002981551170000052
发送给对应的用户Pi
Figure BDA0002981551170000053
Figure BDA0002981551170000054
(11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure BDA0002981551170000055
进行同态解密,得到第t个聚合梯度明文
Figure BDA0002981551170000056
并将T个三级密文的同态解密结果组合成聚合梯度明文向量
Figure BDA0002981551170000057
并通过
Figure BDA0002981551170000058
对权重参数wd进行更新,然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1并执行步骤(8):
Figure BDA0002981551170000059
其中
Figure BDA00029815511700000510
(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 BDA0002981551170000061
其中
Figure BDA0002981551170000062
为0到p-1的整数集合构成,然后在
Figure BDA0002981551170000063
中随机选取p的原根g。
步骤3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure BDA0002981551170000064
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure BDA0002981551170000065
将p、g和yi作为自己的公钥 pki=(p,g,yi),其中,mod表示取模操作,≡表示同余。
步骤4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure BDA0002981551170000066
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡ga modp,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya)。
步骤5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure BDA0002981551170000067
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gb modp,将p、g和yb作为自己的公钥 pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure BDA0002981551170000068
后广播至所有用户。
步骤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 BDA0002981551170000071
并采用均方误差损失函数
Figure BDA0002981551170000072
通过
Figure BDA0002981551170000073
和训练图像样本集的真实标签值
Figure BDA0002981551170000074
计算卷积神经网络模型权重参数的梯度向量△w(i_d),计算公式为:
Figure BDA0002981551170000075
其中△w(i_d)的梯度数量为61706,
Figure BDA0002981551170000076
表示求偏导;
步骤8b)每个用户Pi通过联合公钥PK对梯度向量△w(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure BDA0002981551170000081
Figure BDA0002981551170000082
其中,
Figure BDA0002981551170000083
表示Pi获取的包括61706个梯度密文的梯度密文向量,Enc(·) 表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure BDA0002981551170000084
中随机选取的整数,
Figure BDA0002981551170000085
表示第t个梯度密文,1≤t≤61706。
该步骤中用户使用联合公钥将梯度向量△w(i_d)进行同态加密,并上传到参数服务器,即使在不安全的信道传输,敌手也无法得到梯度向量的明文,所以不会泄露用户的隐私数据。
步骤9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure BDA0002981551170000086
Figure BDA0002981551170000087
其中,
Figure BDA0002981551170000088
表示第t个聚合梯度密文,∑表示求和操作。
该步骤中参数服务器利用同态加法特性,在不解密用户上传的梯度向量的情况下,完成对所有用户的梯度向量的聚合操作。由于参数服务器无法得到辅助服务器的私钥skb,所以聚合过程中无法对用户上传的梯度向量密文进行解密,参数服务器无法获得用户的隐私信息。
步骤10)参数服务器和辅助服务器对聚合梯度向量密文
Figure BDA0002981551170000089
进行同态重加密:
步骤10a)参数服务器通过
Figure BDA0002981551170000091
Figure BDA0002981551170000092
分别表示第t个聚合梯度密文
Figure BDA0002981551170000093
的第一梯度密文
Figure BDA0002981551170000094
和第二梯度密文
Figure BDA0002981551170000095
Figure BDA0002981551170000096
其中
Figure BDA0002981551170000097
表示第t个聚合梯度明文,
Figure BDA0002981551170000098
Figure BDA0002981551170000099
步骤10b)参数服务器在剩余类环
Figure BDA00029815511700000910
中随机选取一个整数s作为盲化因子, 并通过s对聚合梯度密文
Figure BDA00029815511700000911
进行盲化,得到盲化聚合梯度密文
Figure BDA00029815511700000912
后,将
Figure BDA00029815511700000913
发送给辅助服务器:
Figure BDA00029815511700000914
Figure BDA00029815511700000915
该步骤中参数服务器传输
Figure BDA00029815511700000916
方便辅助服务器进行下一步的解密。
步骤10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure BDA00029815511700000917
同态解密,得到中间明文
Figure BDA00029815511700000918
Figure BDA00029815511700000919
并通过每个用户Pi的公钥pki
Figure BDA00029815511700000920
进行同态加密,得到Pi的一级密文
Figure BDA00029815511700000921
并将
Figure BDA00029815511700000922
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure BDA00029815511700000923
中随机选择的整数。
该步骤中辅助服务器使用自己的私钥skb解密得到的是有盲化因子s的中间密文,所以辅助服务器无法获得聚合梯度向量的明文,辅助服务器再使用每个用户Pi的公钥pki将中间明文进行同态加密,保证了在不安全信道中将Pi的一级密文传输给参数服务器时,敌手无法获得聚合梯度的明文,保障了聚合梯度向量的隐私安全。
步骤10d)参数服务器对
Figure BDA00029815511700000924
进行去除盲化因子,得到Pi的二级密文
Figure BDA00029815511700000925
Figure BDA00029815511700000926
Figure BDA0002981551170000101
该步骤中由于参数服务器知道盲化因子s可以通过计算去除Pi的一级密文,得到Pi的二级密文。
步骤10e)参数服务器在剩余类环
Figure BDA0002981551170000102
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure BDA0002981551170000103
后,将
Figure BDA0002981551170000104
发送给对应的用户Pi
Figure BDA0002981551170000105
Figure BDA0002981551170000106
该步骤中由于二级密文中的随机数zit是由辅助服务器选取的,为了防止在不安全信道传输时,辅助服务器截获密文进行解密,获取用户的隐私信息,所以参数服务器再选择一个随机数eit对二级密文进行混淆,同时不破坏密文结构,使得用户依然可以解密。保证了用户的隐私安全。
步骤11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure BDA0002981551170000107
进行同态解密,得到第t个聚合梯度明文
Figure BDA0002981551170000108
并将61706个三级密文的同态解密结果组合成聚合梯度明文向量
Figure BDA0002981551170000109
并通过
Figure BDA00029815511700001010
对权重参数wd进行更新,更新公式为
Figure BDA00029815511700001011
然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1,并执行步骤(8):
Figure BDA00029815511700001012
其中
Figure BDA00029815511700001013
其中α为学习率。
步骤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 FDA0002981551160000011
作为安全参数k,
Figure FDA0002981551160000012
再根据p构建剩余类环
Figure FDA0002981551160000013
然后在
Figure FDA0002981551160000014
中随机选取p的原根g,其中,
Figure FDA0002981551160000015
(3)每个用户生成自己的公钥和私钥:
每个用户Pi在剩余类环
Figure FDA0002981551160000016
中随机选取一个整数xi作为自己的私钥ski=xi,并计算自己的公钥参数
Figure FDA0002981551160000017
将p、g和yi作为自己的公钥pki=(p,g,yi),其中,mod表示取模操作,≡表示同余;
(4)参数服务器生成自己的公钥和私钥:
参数服务器在剩余类环
Figure FDA0002981551160000018
中随机选取一个整数a作为自己的私钥ska=a,并计算自己的公钥参数ya≡gamod p,将ya发送给辅助服务器,且将p、g和ya作为自己的公钥pka=(p,g,ya);
(5)辅助服务器生成自己的公钥和私钥,以及联合公钥:
辅助服务器在剩余类环
Figure FDA0002981551160000019
中随机选取一个整数b作为自己的私钥skb=b,并计算自己的公钥参数yb≡gbmod p,将p、g和yb作为自己的公钥pkb=(p,g,yb),再通过自己的私钥skb和参数服务器的公钥参数ya计算联合公钥
Figure FDA0002981551160000021
后广播至所有用户;
(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 FDA0002981551160000022
并采用均方误差损失函数,通过
Figure FDA0002981551160000023
计算卷积神经网络模型权重参数的梯度向量△w(i_d),其中,△w(i_d)的梯度数量为T;
(8b)每个用户Pi通过联合公钥PK对梯度向量△w(i_d)进行同态加密,得到梯度密文向量集合Wd,并将Wd上传到参数服务器,其中:
Figure FDA0002981551160000024
Figure FDA0002981551160000025
其中,
Figure FDA0002981551160000026
表示Pi获取的包括T个梯度密文的梯度密文向量,Enc(·)表示同态加密,Exp(·)表示以g为底的指数函数,kit表示用户Pi
Figure FDA0002981551160000027
中随机选取的整数,
Figure FDA0002981551160000028
表示第t个梯度密文,1≤t≤T;
(9)参数服务器对梯度密文向量进行聚合:
参数服务器对梯度密文向量集合Wd中的所有梯度密文向量进行聚合,得到聚合梯度密文向量
Figure FDA0002981551160000031
Figure FDA0002981551160000032
其中,
Figure FDA0002981551160000033
表示第t个聚合梯度密文,∑表示求和操作;
(10)参数服务器和辅助服务器对聚合梯度向量密文
Figure FDA0002981551160000034
进行同态重加密:
(10a)参数服务器通过
Figure FDA0002981551160000035
Figure FDA0002981551160000036
分别表示第t个聚合梯度密文
Figure FDA0002981551160000037
的第一梯度密文
Figure FDA0002981551160000038
和第二梯度密文
Figure FDA0002981551160000039
Figure FDA00029815511600000310
其中
Figure FDA00029815511600000311
表示第t个聚合梯度明文,
Figure FDA00029815511600000312
(10b)参数服务器在剩余类环
Figure FDA00029815511600000313
中随机选取一个整数s作为盲化因子,并通过s对聚合梯度密文
Figure FDA00029815511600000314
进行盲化,得到盲化聚合梯度密文
Figure FDA00029815511600000315
后,将
Figure FDA00029815511600000316
发送给辅助服务器:
Figure FDA00029815511600000317
Figure FDA00029815511600000318
(10c)辅助服务器通过自己的私钥skb对盲化聚合梯度密文
Figure FDA00029815511600000319
同态解密,得到中间明文
Figure FDA00029815511600000320
Figure FDA00029815511600000321
并通过每个用户Pi的公钥pki
Figure FDA00029815511600000322
进行同态加密,得到Pi的一级密文
Figure FDA00029815511600000323
并将
Figure FDA00029815511600000324
发送给参数服务器,其中zit表示辅助服务器在剩余类环
Figure FDA00029815511600000325
中随机选择的整数;
(10d)参数服务器对
Figure FDA0002981551160000041
进行去除盲化因子,得到Pi的二级密文
Figure FDA0002981551160000042
Figure FDA0002981551160000043
Figure FDA0002981551160000044
(10e)参数服务器在剩余类环
Figure FDA0002981551160000045
中随机选取一个整数eit,并按照下式进行计算Pi的三级密文
Figure FDA0002981551160000046
后,将
Figure FDA0002981551160000047
发送给对应的用户Pi
Figure FDA0002981551160000048
Figure FDA0002981551160000049
(11)用户P获取卷积神经网络模型的训练结果:
每个用户Pi通过自己的私钥ski
Figure FDA00029815511600000410
进行同态解密,得到第t个聚合梯度明文
Figure FDA00029815511600000411
并将T个三级密文的同态解密结果组合成聚合梯度明文向量
Figure FDA00029815511600000412
并通过
Figure FDA00029815511600000413
对权重参数wd进行更新,然后判断d≥D是否成立,若是,得到训练好的卷积神经网络模型,否则,令d=d+1,并执行步骤(8):
Figure FDA00029815511600000414
其中
Figure FDA00029815511600000415
(12)每个用户获取图像分类结果:
每个用户Pi将自身的测试图像样本集作为训练好的卷积神经网络模型的输入进行图像分类,得到每一幅测试图像的分类结果。
2.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(7a)中所述的构建由依次层叠的输入层、num个卷积层-ReLU层-池化层、输出层组成的卷积神经网络模型,其中num≥2,输出层依次层叠的多个全连接层,其中包括2个卷积层-ReLU层-池化层、3全连接层,具体结构和参数设置为:
第一卷积层-ReLU层-池化层→第二卷积层-ReLU层-池化层;
第一卷积层和第二卷积层卷积核的大小均为5,步长均为1,第一卷积层的填充为2,卷积核个数设置为6、第二卷积层的填充为0,卷积核个数设置为16。
3.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(8a)中所述的通过
Figure FDA0002981551160000051
计算卷积神经网络模型权重参数的梯度向量△w(i_d),计算公式为:
Figure FDA0002981551160000052
其中
Figure FDA0002981551160000053
表示均方误差损失函数,
Figure FDA0002981551160000054
表示训练图像样本中的真实标签值,
Figure FDA0002981551160000055
表示求偏导。
4.根据权利要求1所述的基于同态加密的卷积神经网络图像分类方法,其特征在于,步骤(11)中所述的通过
Figure FDA0002981551160000056
对权重参数wd进行更新,更新公式为:
Figure FDA0002981551160000057
其中α为学习率。
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 true CN112949741A (zh) 2021-06-11
CN112949741B 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12021986B2 (en) 2021-12-27 2024-06-25 Industrial Technology Research Institute Neural network processing method and server and electrical device therefor

Citations (9)

* 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 广州大学 一种非交互式隐私保护多方机器学习方法
US20200252198A1 (en) * 2019-02-06 2020-08-06 International Business Machines Corporation Secure Multi-Party Learning and Inferring Insights Based on Encrypted Data
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 之江实验室 一种基于同态加密的隐私保护多机构数据分类方法

Patent Citations (9)

* 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 电子科技大学 一种基于隐私保护技术的联合深度学习训练方法
US20200252198A1 (en) * 2019-02-06 2020-08-06 International Business Machines Corporation Secure Multi-Party Learning and Inferring Insights Based on Encrypted Data
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
XU MA ET AL: "Privacy preserving multi-party computation delegation for deep learning in cloud computing", 《INFORMATION SCIENCES》 *
刘俊旭等: "机器学习的隐私保护研究综述", 《计算机研究与发展》 *
蒋瀚等: "隐私保护机器学习的密码学方法", 《电子与信息学报》 *
谢四江等: "基于同态加密的卷积神经网络前向传播方法", 《计算机应用与软件》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12021986B2 (en) 2021-12-27 2024-06-25 Industrial Technology Research Institute Neural network processing method and server and electrical device therefor

Also Published As

Publication number Publication date
CN112949741B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
Lin et al. An image encryption scheme based on Lorenz hyperchaotic system and RSA algorithm
Laiphrakpam et al. A robust image encryption scheme based on chaotic system and elliptic curve over finite field
Li et al. A general quantitative cryptanalysis of permutation-only multimedia ciphers against plaintext attacks
Pareek Design and analysis of a novel digital image encryption scheme
CN112906030B (zh) 基于多方全同态加密的数据共享方法和系统
CN112134688B (zh) 一种基于量子混沌映射与sha-3的非对称图像加密方法
Zheng et al. Lossless data hiding based on homomorphic cryptosystem
CN111049650A (zh) 一种基于sm2算法的协同解密方法及装置、系统、介质
Soleymani et al. A novel public key image encryption based on elliptic curves over prime group field
CN102521785B (zh) 用于图像共享的基于EC-ElGamal算法的同态图像加密和解密方法
CN113972981B (zh) 一种基于sm2密码算法的高效门限签名方法
CN113114870B (zh) 基于三维Zigzag模型的多图像加密方法
Kumar et al. Image cryptography with matrix array symmetric key using chaos based approach
Slimane et al. An efficient nested chaotic image encryption algorithm based on DNA sequence
Saha et al. Encryption and decryption of images using secure linear feedback shift registers
CN113099069B (zh) 基于三维螺旋模型的多图像加密方法
CN112351151B (zh) 基于fcn的图像信息加密方法及装置
Döttling et al. Maliciously circuit-private FHE from information-theoretic principles
CN110460442B (zh) 一种基于格的密钥封装方法
CN112949741B (zh) 基于同态加密的卷积神经网络图像分类方法
Jasra et al. Image encryption using logistic-cosine-sine chaos map and elliptic curve cryptography
Shah et al. Prediction error expansion‐based reversible data hiding in encrypted images with public key cryptosystem
Mondal et al. A multi-stage encryption technique to enhance the secrecy of image
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

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