基于多模态转换的数据加密方法、装置、电子设备及存储介质
文献发布时间:2023-06-19 12:07:15
技术领域
本发明涉及数据安全领域,尤其涉及一种基于多模态转换的数据加密方法、装置、电子设备及存储介质。
背景技术
随着计算机技术发展,网络各种模态信息逐渐增加,其中,比如图像、语音和文本等模态的信息增加速度极快,而这些信息中,部分为可公开信息,部分为需要保密的信息。对于需要保密的信息,可以使用密码学对编制密码来进行加密,加密过程中,待加密的信息被称为明文,已加密信息称为密文,只有收、发双方知道的信息则是密钥,加密就是利用密码学将明文转换成密文的过程。而在现如今计算机技术的发展情况下,破译密钥的技术也在发展,比如利用侧信道对密钥进行破译,从而通过破译得到的密钥信息对密文进行解密。因此,现有加密方式存在加密安全性不高的问题。
发明内容
本发明实施例提供一种基于多模态转换的数据加密方法,能够将一种数据模态的待加密数据转换为另一种数据模态来进行多重加密,由于加密过程是通过模态加密算子来进行,模态加密算子是根据训练好的对抗网络得到,具有更高的灵敏性,使得模态转换过程中的加密效果更好,提高加密的安全性。
第一方面,本发明实施例提供一种基于多模态转换的数据加密方法,所述方法包括:
获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;
根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;
根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;
将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。
可选的,所述待加密数据的功耗图谱为侧信道功耗图谱,所述根据所述待加密数据确定所述待加密数据的功耗图谱,包括:
根据侧信道分析方法,计算所述待加密数据在传输过程中的侧信道图谱。
可选的,所述通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,包括:
将所述待加密数据编码到矢量空间,得到所述待加密数据的第一矢量特征;
将所述第一矢量特征进行线性变换,得到与所述第一模态加密算子维度相同的第二矢量特征;
通过所述第一模态加密算子对所述第二矢量特征进行模态转换,得到第一加密数据。
可选的,所述通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,包括:
将所述功耗图谱进行线性变换,得到与所述第一加密数据维度相同的功耗特征图;
以所述第一加密数据为第一通道,以所述功耗特征图为第二通道,将所述第一加密数据与所述功耗特征图在通道维度上进行叠加,得到通道特征图;
通过所述第二模态加密算子对所述通道特征图进行加密,得到第二加密数据。
可选的,所述第一模态加密算子的获取步骤,包括:
构建生成式对抗网络,所述生成式对抗网络包括第一生成网络以及第一判别网络;
将第一数据模态的样本数据输入到所述第一生成网络中,生成第二数据模态的第一目标生成数据;
将所述目标生成数据输入到所述第一判别网络中进行判别,并根据所述第一判别网络的判别结果,对所述第一生成网络和所述第一判别网络进行参数调整;
在所述生成式对抗网络收敛后,得到训练好的生成式对抗网络,提取所述训练好的生成式对抗网络中对应第一生成网络的参数作为第一模态加密算子。
可选的,所述第二模态加密算子的获取步骤,包括:
构建循环对抗网络,所述循环对抗网络包括第二生成网络、第三生成网络、第二判别网络以及第三判别网络;
将第二数据模态的样本数据输入到所述第二生成网络中,生成第二数据模态的第二目标生成数据;
将所述第二目标生成数据输入到所述第二判别网络中进行判别,并根据所述第二判别网络的判别结果,对所述第二生成网络和所述第二判别网络进行参数调整;
将所述第二目标生成数据输入到所述第三生成网络中,生成第二数据模态的第三目标生成数据;
将所述第三目标生成数据输入到所述第三判别网络中与所述第二数据模态的样本数据进行判别,并根据所述第二判别网络的判别结果,对所述第三生成网络、所述第三判别网络进行参数调整;
在所述循环对抗网络收敛后,得到训练好的循环对抗网络,提取所述训练好的循环对抗网络中对应第二生成网络的参数作为第二模态加密算子。
可选的,所述方法还包括:
根据所述第一模态加密算子,计算第一模态解密算子;以及
根据所述第二模态加密算子,计算第二模态解密算子;
其中,所述第一模态解密算子以及所述第二模态解密算子作为公钥,所述功耗图谱作为私钥。
第二方面,本发明实施例提供一种基于多模态转换的数据加密装置,所述装置包括:
获取模块,用于获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;
第一加密模块,用于根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;
第二加密模块,用于根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;
第三加密模块,用于将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。
第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例提供的基于多模态转换的数据加密方法中的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现发明实施例提供的基于多模态转换的数据加密方法中的步骤。
本发明实施例中,获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。本发明能够将一种数据模态的待加密数据转换为另一种数据模态来进行多重加密,由于加密过程是通过模态加密算子来进行,模态加密算子是根据训练好的对抗网络得到,具有更高的灵敏性,使得模态转换过程中的加密效果更好,提高加密的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于多模态转换的数据加密方法的流程图;
图2是本发明实施例提供的一种基于多模态转换的数据加密装置的结构示意图;
图3是本发明实施例提供的一种第一加密模块的结构示意图;
图4是本发明实施例提供的一种第二加密模块的结构示意图;
图5是本发明实施例提供的另一种基于多模态转换的数据加密装置的结构示意图;
图6是本发明实施例提供的另一种基于多模态转换的数据加密装置的结构示意图;
图7是本发明实施例提供的另一种基于多模态转换的数据加密装置的结构示意图。
图8是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1是本发明实施例提供的一种基于多模态转换的数据加密方法的流程图,如图1所示,包括以下步骤:
101、获取待加密数据,并根据待加密数据确定待加密数据的第一数据模态和功耗图谱。
在本发明实施例中,上述待加密数据可以通过用户上传进行获取,上述第一数据模态的待加密数据可以是任意模态的数据,比如可以是文本、图像、语音等模态的数据。具体来说,上述待加密数据可以是文本数据、图像数据、语音数据中的任意一种。
上述功耗图谱指的是上述待加密数据在通信过程中产生的功率消耗信息,具体的,可以根据侧信道分析方法,计算上述待加密数据在传输过程中的侧信道图谱。需要说明的是,侧信道分析方法是指加密设备在工作时泄露的电磁信号等信号,通过对侧信道的信号的分析,可以获取加密设备的密钥或相关秘密信息。不同的数据信息对应于不同的功耗图谱,上述功耗图谱也可以称为功耗曲线。
102、根据第一数据模态确定用于第一加密的第一模态加密算子,并通过第一模态加密算子将待加密字段加密为第二数据模态的第一加密数据。
在本发明实施例中,上述第一数据模态不同于上述第二数据模态,上述第一模态加密算子通过训练好的生成式对抗网络来获取。上述第二数据模态可以是文本、图像、语音等模态,需要说明的是,上述第一数据模态不同于上述第二数据模态,比如,上述第一数据模态为文本,上述第二数据模态可以是图像或语音,上述第一数据模态为图像,上述第二数据模态可以是文本或语音,上述第一数据模态为语音,则上述第二数据模态可以是文本或图像。
通过转换待加密数据的模态,可以将待加密数据以其他的模态形式进行存在,比如,待加密数据为文本,则可以将文本数据转换为图像或语音数据,从而实现对文本数据的加密,举例来说,存在一段文本数据,通过第一模态加密算子,将该段文本数据转换为热力图,从而实现对文本数据的加密。
进一步的,可以将待加密数据编码到矢量空间,得到待加密数据的第一矢量特征;将第一矢量特征进行线性变换,得到与第一模态加密算子维度相同的第二矢量特征;通过第一模态加密算子对第二矢量特征进行模态转换,得到第一加密数据。具体来说,可以根据待加密数据的第一数据模态,确定对应的矢量空间,比如,若待加密数据的第一数据模态为文本,则上述矢量空间为文本矢量空间,比如词向量编码空间;若待加密数据的第一数据模态为语音,则上述矢量空间为语音矢量空间,比如频域向量空间;若待加密数据的第一数据模态为图像,则上述矢量空间为图像矢量空间,比如图像特征向量空间。
由于待加密数据的第一数据模态可能存在多种,因此,第一模态加密算子的类型也对应存在多种,具体的,上述第一模态加密算子的类型包括:文本转语音、文本转图像、图像转文本、图像转语音、语音转文本、语音转图像等。具体的,不同第一模态加密算子根据不同的生成式对抗网络进行得到。
在本发明实施例中,可以构建生成式对抗网络,上述生成式对抗网络包括第一生成网络以及第一判别网络;将第一数据模态的样本数据输入到上述第一生成网络中,生成第二数据模态的第一目标生成数据;将上述第一目标生成数据输入到上述第一判别网络中进行判别,并根据上述第一判别网络的判别结果,对上述第一生成网络和上述第一判别网络进行参数调整;在上述生成式对抗网络收敛后,得到训练好的生成式对抗网络,提取上述训练好的生成式对抗网络中对应第一生成网络的参数作为第一模态加密算子。
具体的,当第一模态加密算子的类型为文本转语音时,则上述样本数据的第一数据模态为文本,上述第一目标生成数据的第二数据模态为语音,上述第一生成网络可以包括输入网络和深度神经网络,上述输入网络为文本矢量空间,上述文本矢量空间将样本数据由文本转换为第一矢量特征,由于不同文本的长度不一致,使得第一矢量特征的维度也不一致,因此,还需要通过线性变换,将上述第一矢量特征的维度变换为与第一模态加密算子维度相同的第二矢量特征。上述第一模态加密算子的维度为预先设定好的。将第二矢量特征输入深度神经网络中进行计算,使得第二矢量特征的数据分布向第二模态的数据分布靠近,从而得到第一目标生成数据,上述第一目标生成数据接近第二模态的数据分布,即上述第一目标生成数据接近语音的数据分布。将第一目标生成数据输入到判别网络,判别网络判断上述第一目标生成数据是否为第二模态,若判别网络判断上述第一目标生成数据不是第二模态数据,则计算上述第一目标生成数据与第二模态之间的误差,通过该误差来反向传播,调整第一生成网络中的参数,若第一判别网络判断上述第一目标生成数据是第二模态数据,则对第一判别网络的参数进行惩罚性调整。迭代上述第一生成网络与第一判别网络的训练过程,直到上述生成网络与判别网络收敛,则可以结束生成式对抗网络的训练,得到训练好的生成式对抗网络,从生成网络中取出网络参数作为第一模态加密算子,该第一模态加密算子则可以将待加密数据进行模态转换。在一种可能的实施例中,还可以是从第一生成网络中取出输入网络参数和深度神经参数作为第一模态加密算子。
同样的,不同类型的第一模态加密算子则是根据的生成式对抗网络和不同的样本数据来得到,比如,第一模态加密算子的类型为文本转图像时,则第一生成网络中的输入网络为文本矢量空间,第一目标生成数据接近图像的数据分布;第一模态加密算子的类型为图像转文本时,则第一生成网络中的输入网络为图像矢量空间,第一目标生成数据接近文本的数据分布;第一模态加密算子的类型为图像转语音时,则第一生成网络中的输入网络为图像矢量空间,第一目标生成数据接近语音的数据分布;第一模态加密算子的类型为语音转文本时,则第一生成网络中的输入网络为语音矢量空间,第一目标生成数据接近文本的数据分布;第一模态加密算子的类型为语音转图像时,则第一生成网络中的输入网络为语音矢量空间,第一目标生成数据接近图像的数据分布。
通过第一模态加密算子,使得待加密数据的分布发生变化,使得第一数据模态的数据分布转换为第二数据模态的数据分布。由于加密过程是通过模态加密算子来进行,模态加密算子是根据训练好的对抗网络得到,具有更高的灵敏性,使得模态转换过程中的加密效果更好,提高加密的安全性。
103、根据功耗图谱确定用于第二加密的第二模态加密算子,并通过功耗图谱与第二模态加密算子将第一加密数据加密为第二数据模态的第二加密数据。
在本发明实施例中,上述第二模态加密算子通过训练好的循环对抗网络来获取。上述第二数据模态可以是文本、图像、语音等模态。
上述第二模态加密算子不转换第一加密数据的模态,但第二模态加密算子可以改变第一加密数据的数据分布,比如,若第一加密数据的第二数据模态为文字,则第二模态加密算子则可以在第二数据模态下,将文本进行改变,包括排序改变、字体改变、颜色改变等;若第一加密数据的第二数据模态为语音,则第二模态加密算子则可以在第二数据模态下,将语音进行改变,包括改变为动物音频、增加噪声等;若第一加密数据的第二数据模态为图像,则第二模态加密算子则可以在第二数据模态下,将图像的纹理或颜色进行改变。通过转换第一加密数据的数据分布,可以进一步提高待加密数据的安全性。
进一步的,将上述功耗图谱进行线性变换,得到与上述第一加密数据维度相同的功耗特征图;以上述第一加密数据为第一通道,以上述功耗特征图为第二通道,将上述第一加密数据与上述功耗特征图在通道维度上进行叠加,得到通道特征图;通过上述第二模态加密算子对上述通道特征图进行加密,得到第二加密数据。
由于第一加密数据的第二数据模态可能存在多种,因此,第二模态加密算子的类型也对应存在多种,具体的,上述第二模态加密算子的类型包括:文本、图像、语音等类型。具体的,不同第二模态加密算子根据不同的循环对抗网络进行得到。
在本发明实施例中,可以构建循环对抗网络,上述循环对抗网络包括第二生成网络、第三生成网络、第二判别网络以及第三判别网络;将第二数据模态的样本数据输入到上述第二生成网络中,生成第二数据模态的第二目标生成数据;将上述第二目标生成数据输入到上述第二判别网络中进行判别,并根据上述第二判别网络的判别结果,对上述第二生成网络和上述第二判别网络进行参数调整;将上述第二目标生成数据输入到上述第三生成网络中,生成第二数据模态的第三目标生成数据;将上述第三目标生成数据输入到上述第三判别网络中与上述第二数据模态的样本数据进行判别,并根据上述第二判别网络的判别结果,对上述第三生成网络、上述第三判别网络进行参数调整。在上述循环对抗网络收敛后,得到训练好的循环对抗网络,提取上述训练好的循环对抗网络中对应第二生成网络的参数作为第二模态加密算子。需要说明的是,上述第二模态算子的维度与上述第一加密数据的维度相同。
具体的,当第二模态加密算子的类型为文本来说,则上述样本数据的数据分布为楷体文本,上述第二目标生成数据的数据分布为手写文本,上述第三目标生成数据的数据分布为楷体文本,上述第二生成网络可以包括输入网络和深度神经网络,上述输入网络为图像矢量空间,上述图像矢量空间将样本数据由功耗图谱转换为功耗特征图并在线性变换后与样本数据进行通道叠加,得到通道特征图后输入深度神经网络,由于不同样本数据的长度不一致,使得功耗特征图的维度也不一致,因此,还需要通过线性变换,将上述功耗特征图的维度变换为与第二模态加密算子维度相同的功耗特征图。上述第二模态加密算子的维度为与第一加密数据的维度相同。将通道特征图输入深度神经网络中进行计算,使得通道特征图的数据分布向目标数据分布(第二目标生成数据的数据分布)靠近,从而得到第二目标生成数据,上述第二目标生成数据接近目标数据分布,即上述第二目标生成数据接近手写文本的数据分布。将第二目标生成数据输入到第二判别网络,第二判别网络判断上述第二目标生成数据是否为手写文本,若第二判别网络判断上述第二目标生成数据不是手写文本,则计算上述第二目标生成数据与手写文本之间的第一误差;若第三判别网络判断上述第三目标生成数据是手写文本,则对第三判别网络的参数进行惩罚性调整。同时,将第二目标生成数据输入到第三生成网络,通过第三生成网络生成与样本数据的数据分布相同的第三目标生成数据,上述第三目标生成数据接近楷体文本的数据分布,将第三目标生成数据输入到第三判别网络,第三判别网络判断上述第三目标生成数据是否为楷体文本,若第三判别网络判断上述第三目标生成数据不是楷体文本,则计算上述第三目标生成数据与样本数据之间的第二误差,通过第一误差和第二误差来反向传播,调整第二生成网络与第三生成网络中的参数,若第三判别网络判断上述第三目标生成数据是楷体文本,则对第三判别网络的参数进行惩罚性调整。
迭代上述训练过程,直到上述循环对抗网络收敛,则可以结束训练,得到训练好的循环对抗网络,从第二生成网络中取出网络参数作为第二模态加密算子,该第二模态加密算子则可以将第一加密数据的数据分布进行改变。在一种可能的实施例中,还可以是从第二生成网络中取出输入网络参数和深度神经网络参数作为第二模态加密算子。
同样的,不同类型的第二模态加密算子则是根据的循环对抗网络和不同的样本数据来得到,具体可以根据用户的需要进行确定,采用不同的样本数据进行训练,指导不同目标生成数据的生成即可实现。
通过第二模态加密算子,使得第一加密数据的分布发生变化,可以进一步提高加密的安全性。
104、将第二加密数据通过RSA加密算法进行加密,得到目标加密数据。
在本发明实施例中,可以根据上述第一模态加密算子,计算第一模态解密算子;以及根据上述第二模态加密算子,计算第二模态解密算子;以上述第一模态解密算子以及上述第二模态解密算子作为公钥,上述功耗图谱作为私钥。
具体的,上述第一加密过程可以如下述式子所示:
f(x)=g(x)·A=x·C
在式中,f(x)为第一加密数据,x为待加密数据,g()为线性变换函数,A为第一模态加密算子,C为第一模态解密算子。
上述第二加密过程可以如下述式子所示:
h(x)=(f(x)+l(a))·B=f(x)·D
在式中,h(x)为第二加密数据,a为功耗图谱,l()为线性变换函数,B为第二模态加密算子,D为第二模态解密算子。在一种可能的实施例中,上述第二模态解密算子D为训练好的循环对抗网络中的第三生成网络中的网络参数。可以看出,由第二加密数据h(x)与第二模态解密算子D,可以计算出第一加密数据f(x),再由第一加密数据f(x)与第一模态解密算子C,可以计算出待加密数据x。
通过第二加密数据通过RSA加密算法进行加密,可以进一步提高数据加密的安全性。上述RSA加密算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密,安全性随着密钥长度而不断提高。
本发明实施例中,获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。本发明能够将一种数据模态的待加密数据转换为另一种数据模态来进行多重加密,由于加密过程是通过模态加密算子来进行,模态加密算子是根据训练好的对抗网络得到,具有更高的灵敏性,使得模态转换过程中的加密效果更好,提高加密的安全性。
需要说明的是,本发明实施例提供的基于多模态转换的数据加密方法可以应用于可以进行基于多模态转换的数据加密的手机、监控器、门禁机、计算机、服务器等设备。
第二方面,请参数图2,图2是本发明实施例提供的一种基于多模态转换的数据加密装置,所述装置包括:
获取模块201,用于获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;
第一加密模块202,用于根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;
第二加密模块203,用于根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;
第三加密模块204,用于将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。
可选的,所述待加密数据的功耗图谱为侧信道功耗图谱,所述获取模块201还用于根据侧信道分析方法,计算所述待加密数据在传输过程中的侧信道图谱。
可选的,如图3所示,所述第一加密模块202,包括:
编码单元2021,用于将所述待加密数据编码到矢量空间,得到所述待加密数据的第一矢量特征;
第一线性单元2022,用于将所述第一矢量特征进行线性变换,得到与所述第一模态加密算子维度相同的第二矢量特征;
第一加密单元2023,用于通过所述第一模态加密算子对所述第二矢量特征进行模态转换,得到第一加密数据。
可选的,如图4所示,所述第二加密模块203,包括:
第二线性单元2031,用于将所述功耗图谱进行线性变换,得到与所述第一加密数据维度相同的功耗特征图;
叠加单元2032,用于以所述第一加密数据为第一通道,以所述功耗特征图为第二通道,将所述第一加密数据与所述功耗特征图在通道维度上进行叠加,得到通道特征图;
第二加密单元2033,用于通过所述第二模态加密算子对所述通道特征图进行加密,得到第二加密数据。
可选的,如图5所示,所述装置还包括:
第一构建模块205,用于构建生成式对抗网络,所述生成式对抗网络包括第一生成网络以及第一判别网络;
第一生成模块206,用于将第一数据模态的样本数据输入到所述第一生成网络中,生成第二数据模态的第一目标生成数据;
第一判别模块207,用于将所述目标生成数据输入到所述第一判别网络中进行判别,并根据所述第一判别网络的判别结果,对所述第一生成网络和所述第一判别网络进行参数调整;
第一提取模块208,用于在所述生成式对抗网络收敛后,得到训练好的生成式对抗网络,提取所述训练好的生成式对抗网络中对应第一生成网络的参数作为第一模态加密算子。
可选的,如图6所示,所述第二模态加密算子的获取步骤,包括:
第二构建模块209,用于构建循环对抗网络,所述循环对抗网络包括第二生成网络、第三生成网络、第二判别网络以及第三判别网络;
第二生成模块210,用于将第二数据模态的样本数据输入到所述第二生成网络中,生成第二数据模态的第二目标生成数据;
第二判别模块211,用于将所述第二目标生成数据输入到所述第二判别网络中进行判别,并根据所述第二判别网络的判别结果,对所述第二生成网络和所述第二判别网络进行参数调整;
第三生成模块212,用于将所述第二目标生成数据输入到所述第三生成网络中,生成第二数据模态的第三目标生成数据;
第三判别模块213,用于将所述第三目标生成数据输入到所述第三判别网络中与所述第二数据模态的样本数据进行判别,并根据所述第二判别网络的判别结果,对所述第三生成网络、所述第三判别网络进行参数调整。
第二提取模块214,用于在所述循环对抗网络收敛后,得到训练好的循环对抗网络,提取所述训练好的循环对抗网络中对应第二生成网络的参数作为第二模态加密算子。
可选的,如图7所示,所述装置还包括:
第一计算模块215,用于根据所述第一模态加密算子,计算第一模态解密算子;以及
第二计算模块216,用于根据所述第二模态加密算子,计算第二模态解密算子;
其中,所述第一模态解密算子以及所述第二模态解密算子作为公钥,所述功耗图谱作为私钥。
需要说明的是,本发明实施例提供的基于多模态转换的数据加密装置可以应用于可以进行基于多模态转换的数据加密的手机、监控器、门禁机、计算机、服务器等设备。
本发明实施例提供的基于多模态转换的数据加密装置能够实现上述方法实施例中基于多模态转换的数据加密方法实现的各个过程,且可以达到相同的有益效果。为避免重复,这里不再赘述。
参见图8,图8是本发明实施例提供的一种电子设备的结构示意图,如图8所示,包括:存储器802、处理器801及存储在所述存储器802上并可在所述处理器801上运行的计算机程序,其中:
处理器801用于调用存储器802存储的计算机程序,执行如下步骤:
获取待加密数据,并根据所述待加密数据确定所述待加密数据的第一数据模态和功耗图谱;
根据所述第一数据模态确定用于第一加密的第一模态加密算子,并通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,所述第一数据模态不同于所述第二数据模态,所述第一模态加密算子通过训练好的生成式对抗网络来获取;
根据所述功耗图谱确定用于第二加密的第二模态加密算子,并通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,其中,所述第二模态加密算子通过训练好的循环对抗网络来获取;
将所述第二加密数据通过RSA加密算法进行加密,得到目标加密数据。
可选的,所述待加密数据的功耗图谱为侧信道功耗图谱,所述处理器801执行的根据所述待加密数据确定所述待加密数据的功耗图谱,包括:
根据侧信道分析方法,计算所述待加密数据在传输过程中的侧信道图谱。
可选的,所述处理器801执行的通过所述第一模态加密算子将所述待加密字段加密为第二数据模态的第一加密数据,包括:
将所述待加密数据编码到矢量空间,得到所述待加密数据的第一矢量特征;
将所述第一矢量特征进行线性变换,得到与所述第一模态加密算子维度相同的第二矢量特征;
通过所述第一模态加密算子对所述第二矢量特征进行模态转换,得到第一加密数据。
可选的,所述处理器801执行的通过所述功耗图谱与所述第二模态加密算子将所述第一加密数据加密为第二数据模态的第二加密数据,包括:
将所述功耗图谱进行线性变换,得到与所述第一加密数据维度相同的功耗特征图;
以所述第一加密数据为第一通道,以所述功耗特征图为第二通道,将所述第一加密数据与所述功耗特征图在通道维度上进行叠加,得到通道特征图;
通过所述第二模态加密算子对所述通道特征图进行加密,得到第二加密数据。
可选的,所述处理器801执行的第一模态加密算子的获取步骤,包括:
构建生成式对抗网络,所述生成式对抗网络包括第一生成网络以及第一判别网络;
将第一数据模态的样本数据输入到所述第一生成网络中,生成第二数据模态的第一目标生成数据;
将所述目标生成数据输入到所述第一判别网络中进行判别,并根据所述第一判别网络的判别结果,对所述第一生成网络和所述第一判别网络进行参数调整;
在所述生成式对抗网络收敛后,得到训练好的生成式对抗网络,提取所述训练好的生成式对抗网络中对应第一生成网络的参数作为第一模态加密算子。
可选的,所述处理器801执行的第二模态加密算子的获取步骤,包括:
构建循环对抗网络,所述循环对抗网络包括第二生成网络、第三生成网络、第二判别网络以及第三判别网络;
将第二数据模态的样本数据输入到所述第二生成网络中,生成第二数据模态的第二目标生成数据;
将所述第二目标生成数据输入到所述第二判别网络中进行判别,并根据所述第二判别网络的判别结果,对所述第二生成网络和所述第二判别网络进行参数调整;
将所述第二目标生成数据输入到所述第三生成网络中,生成第二数据模态的第三目标生成数据;
将所述第三目标生成数据输入到所述第三判别网络中与所述第二数据模态的样本数据进行判别,并根据所述第二判别网络的判别结果,对所述第三生成网络、所述第三判别网络进行参数调整。
在所述循环对抗网络收敛后,得到训练好的循环对抗网络,提取所述训练好的循环对抗网络中对应第二生成网络的参数作为第二模态加密算子。
可选的,所述处理器801还执行包括:
根据所述第一模态加密算子,计算第一模态解密算子;以及
根据所述第二模态加密算子,计算第二模态解密算子;
其中,所述第一模态解密算子以及所述第二模态解密算子作为公钥,所述功耗图谱作为私钥。
需要说明的是,上述电子设备可以是可以应用于可以进行基于多模态转换的数据加密的手机、监控器、门禁机、计算机、服务器等设备。
本发明实施例提供的电子设备能够实现上述方法实施例中基于多模态转换的数据加密方法实现的各个过程,且可以达到相同的有益效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的基于多模态转换的数据加密方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
- 基于多模态转换的数据加密方法、装置、电子设备及存储介质
- 基于区块链的数据加密方法、装置、电子设备和存储介质