CN111600873B - 防侧信道攻击方法及相关装置 - Google Patents
防侧信道攻击方法及相关装置 Download PDFInfo
- Publication number
- CN111600873B CN111600873B CN202010403962.7A CN202010403962A CN111600873B CN 111600873 B CN111600873 B CN 111600873B CN 202010403962 A CN202010403962 A CN 202010403962A CN 111600873 B CN111600873 B CN 111600873B
- Authority
- CN
- China
- Prior art keywords
- encryption
- decryption
- decryption module
- module
- delay time
- 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
Links
Images
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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及信息安全技术领域,提供一种防侧信道攻击方法及相关装置,所述方法包括:接收待加密的明文或者待解密的密文;利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。本发明实施例通过按照随机确定的启动时间启动多路加解密模块进行加解密处理,使得多路加解密模块加解密处理产生的电磁辐射信号可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
Description
技术领域
本发明涉及信息安全技术领域,具体而言,涉及一种防侧信道攻击方法及相关装置。
背景技术
为了保护固态硬盘数据不被窃取,会增加一个加解密模块,此类硬盘也叫自我加密SED(Self-Encrypting Drive,SED)硬盘明文数据在经过加解密模块加解密引擎时,会被加解密模块利用密钥进行数据加密,形成密文数据。同理,当密文数据经过加解密模块时,被会密钥解密回原来的明文数据。
加解密模块硬件模块在进行加解密模块加解密过程中,是会产生电磁辐射的。若是第三方从主机侧发送不同模式的明文数据、密钥给固态硬盘,然后抓取固态硬盘控制芯片的电磁辐射信号,找到明文数据、密钥、电磁辐射信号、密文四者间的规律。则其就可通过对SED盘工作中的电磁辐射信号搜集,再利用SED盘中的密文数据,结合之前利用模式数据测出来的信号规律,破译出SED盘密文数据的密钥,从而窃取SED盘上的数据信息,这种攻击方式称为侧信道攻击。
发明内容
本发明的目的在于提供了一种防侧信道攻击方法及相关装置,其通过按照随机确定的启动时间启动多路加解密模块进行加密处理,使得多路加解密模块加密处理产生的电磁辐射信号可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本实施例提供一种防侧信道攻击方法,应用于包含多个加解密模块的电子设备,所述方法包括:接收待加密的明文或者待解密的密文;利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,其中,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。
第二方面,本实施例提供一种防侧信道攻击装置,应用于包含多个加解密模块的电子设备,所述装置包括接收模块和处理模块。其中,接收模块用于接收待加密的明文或者待解密的密文;处理模块,用于利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,其中,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。
第三方面,本实施例提供一种电子设备,所述电子设备包括:一个或多个控制器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个控制器执行时,使得所述一个或多个控制器实现如前述实施方式中任一项所述的防侧信道攻击方法。
第四方面,本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被控制器执行时实现如前述实施方式中任一项所述的防侧信道攻击方法。
相对于现有技术,本发明实施例提供一种防侧信道攻击方法及相关装置,电子设备的控制器包含多个加解密模块,控制器接收待加密的明文或者待解密的密文,然后利用每一加解密模块对待加密的明文进行加密,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠,本发明实施例通过按照随机确定的启动时间启动多路加解密模块进行加密或者解密处理,使得多路加解密模块加密处理产生的电磁辐射信号可以随机叠加或者解密处理产生的电磁辐射信息可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例所提供的现有技术中固态硬盘数据处理过程示意图。
图2示出了本发明实施例所提供的加解密模块加解密过程示意图。
图3示出了本发明实施例所提供的改进后的固态硬盘数据处理过程示意图。
图4示出了本发明实施例所提供的一种防侧信道攻击方法的流程图。
图5示出了本发明实施例提供的两个加解密模块加密处理时间示例图。
图6示出了本发明实施例所提供的另一种防侧信道攻击方法的流程图。
图7示出了本发明实施例所提供的另一种防侧信道攻击方法的流程图。
图8示出了本发明实施例所提供的防侧信道攻击装置的方框示意图。
图9示出了本发明实施例所提供的电子设备的方框示意图。
图标:10-固态硬盘;11-控制芯片;110-前端模块;111-加解密模块;112-缓存;113-后端模块;12-存储芯片;121-闪存颗粒;20-主机;30-电子设备;31-控制器;32-存储器;300-防侧信道攻击装置;310-接收模块;320-处理模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
为了便于说明,本发明实施例以电子设备为固态硬盘为例进行说明,但是并不代表本发明实施例只能用于固态硬盘这一种电子设备的场景,其他包含多个加解密模块且包含数据处理功能部件的电子设备也可以适用本方案。
请参考图1,图1示出了本发明实施例所提供的固态硬盘数据处理过程示意图,图1中,固态硬盘10与主机20电连接,固态硬盘10包括控制芯片11和存储芯片12,控制芯片11包括前端模块110、加解密模块111、缓存112及后端模块113,存储芯片12包括至少一个闪存颗粒121。
当主机20向固态硬盘10写数据时,固态硬盘10的控制芯片11控制前端模块110接收主机20的待写数据,然后将待写数据发送至加解密模块111进行加密处理,再将加密后的密文数据暂存至缓存112中,控制芯片11根据预存的映射关系确定待写数据对应的闪存颗粒121,然后通过后端模块113将加密后的数据存储至对应的闪存颗粒121。
当主机20向固态硬盘10读数据时,固态硬盘10的控制芯片11控制前端模块110接收主机20的读数据请求,控制芯片11根据预存的映射关系确定待读数据对应的闪存颗粒121,然后通过后端模块113读取闪存颗粒121上存储的待读数据对应的密文数据,并送入缓存112,加解密模块111从缓存112中读取密文数据后对该密文数据进行解密,得到待读数据,再通过前端模块110将待读数据返回至主机20。
在本实施例中,缓存112可以是、但不限于静态随机存取存储器SRAM(StaticRandom-Access Memory)、动态随机存取存储器DRAM(Dynamic Random-Access Memory)等。
闪存颗粒121可以是、但不限于单层次存储单元SLC(Single-Level Cell,SLC)、双层存储单元MLC(Multi-Level Cell,MLC)、三层存储单元TLC(Trinary-Level Cell,TLC)等。
在本实施例中,加解密模块111是国密加解密算法如SM4,还可以是国际加解密算法如RSA。
基于图1的固态硬盘,请参照图2,图2示出了本发明实施例所提供的加解密模块加解密过程示意图,由于加解密模块的加密方式可以是对称加密方式,即加密和解密时使用密钥是同一个,密钥预先存储于控制芯片11中,加密时,将待加密的明文数据输入加解密模块,加解密模块利用密钥对明文数据进行加密,形成对应的密文数据。解密时,将待解密的密文数据输入加解密模块,加解密模块利用密钥对明文数据进行解密,形成对应的明文数据。
需要说明的是,若加解密模块的加密方式也可以非对称加密方式,即加密和解密时使用密钥是不同的,此时可以将加密密钥和解密密钥均存储于控制芯片11中,以便加解密时使用。
针对图1和图2的加解密方法,攻击者很容易对固态硬盘10进行侧信道攻击,从而获取固态硬盘10上的数据,造成固态硬盘10上数据安全性的隐患,针对这一问题,本发明实施例提供一种防侧信道攻击方法,进而提高如固态硬盘10之类的电子设备中数据的安全性,下面将对此进行详细描述。
本发明实施例以对图1所示的现有技术中固态硬盘的数据处理过程加以改进为例进行说明,请参照图3,图3示出了本发明实施例所提供的改进后的固态硬盘数据处理过程示意图,图3中,采用了多个加解密模块对同一数据进行加解密,且多个加解密模块加解密的处理过程在处理时间上随机重叠,使得多个加解密模块在加解密时产生的电磁辐射信号也会随机叠加,导致攻击者无法根据电磁辐射信号,找到明文数据、密钥、电磁辐射信号、密文四者间的规律,最终实现防范侧信道攻击的目的。
同时,在图3中,加密时,多个加解密模块对同一明文数据进行加密,得到多个对应的加密密文,当多个加密密文均相同时,将任一加密密文作为该明文数据对应的密文数据,当多个加密密文中任意两个加密密文的结果不相同时,认为此时的加密密文是不可靠的,丢弃本次加密结果,并报出异常。解密时,多个加解密模块对同一密文数据进行解密,得到多个对应的解密明文,当多个解密明文均相同时,将任一解密明文作为该密文数据对应的明文数据,当多个解密明文中任意两个解密明文的结果不相同时,认为此时的解密明文是不可靠的,丢弃本次解密结果,并报出异常。由此,进一步保证了固态硬盘的数据的安全性。
请参照图4,图4示出了本发明实施例所提供的一种防侧信道攻击方法的流程图,该方法包括以下步骤:
步骤S101,接收待加密的明文或者待解密的密文。
步骤S102,利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。
本发明实施例提供的上述防侧信道攻击方法,利用多个加解密模块进行加密或者解密处理,并使任意两个加解密模块的加密处理时间重叠,或者使任意两个加解密模块的解密处理时间重叠,使得多个加解密模块加密处理产生的电磁辐射信号可以随机叠加,或者多个加解密模块解密处理产生的电磁辐射信号可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
在图4的基础上,本发明实施例给出了一种加密过程中防侧信道攻击方法,请参照图5,图5示出了本发明实施例所提供的另一种防侧信道攻击方法的流程图,步骤S102包括以下子步骤:
子步骤S1021,按照预设规则随机确定每一加解密模块的加密启动延时时间。
在本实施例中,加密启动延时时间为加解密模块启动加密之前的等待时长,该等待时长小于预设加密处理时间,例如,预设加密处理时间为32个时钟周期,则加密启动延时时间的取值为大于0个时钟周期且小于32个时钟周期。
在本实施例中,每一加解密模块对应一个加密启动延时时间,所有加解密模块的加密启动延时时间均按照相同的预设规则随机确定的,由于加密启动延时时间是随机确定的,因此,任意两个加解密模块的加密启动延时时间可以相同,也可以不同,当两者相同时,两者的加密处理时间存在全部重叠,当两者不同时,两者的加密处理时间存在部分重叠。
请参照图6,图6示出了本发明实施例提供的两个加解密模块加密处理时间示例图。图6中,横轴代表时间轴,纵轴为加解密模块,根据1#加解密模块的加密启动延时时间,得到1#加解密模块的启动时刻为Ts1,根据2#加解密模块的加密启动延时时间,得到2#加解密模块的启动时刻为Ts2,1#加解密模块的加密结束时刻Te1,2#加解密模块的加密结束时刻Te2,其中,Te1-Ts1=Te2-Ts2=预设加密处理时间。
作为一种具体实施方式,加密启动延时时间的确定至少可以通过以下两种方式中的任意一种实现。
方法1:
首先,利用随机数生成器为每一加解密模块生成对应的随机数,其中,每一随机数的值均小于预设加密处理时间。
在本实施例中,随机数生成器RNG(Random Numeral Generator,RNG)是用于生成随机数的程序或硬件,RNG可以是真随机数生成器TRNG(True Random Number Generator,TRNG),也可以是伪随机数生成器PRNG(Pseudo-Random Number Generator,PRNG)。
在本实施例中,每一加解密模块对应一个随机数,每次对待加密的明文进行加密时,都会利用随机数生成器为每一加解密模块生成对应的随机数。
其次,将每一加解密模块对应的随机数作为该加解密模块的加密启动延时时间。
方法1在每一加解密模块对待加密的明文进行加密时,利用随机数生成器为每一加解密模块生成小于预设加密处理时间的随机数,实现了多个加解密模块进行加密处理时的处理时间的叠加,可以极大地提高加密启动延时时间的随机性,进而提高了多个加解密模块处理时间的叠加的随机性,最终打乱了加解密模块在进行加密处理时产生的电磁辐射的规律性,达到了防范侧信道攻击,提高电子设备盘上数据的安全性的目的。
方法2:
首先,从随机数生成器获取每一加解密模块对应的随机种子。
在本实施例中,电子设备30的控制器31预先通过随机数生成器为每一加解密模块生成对应的随机种子,生成随机种子的时机可以是电子设备30初始化时,也可以是电子设备30自检时,还可以是首次需要进行数据加密时,本实施例对于生成随机种子的时机不予限定。
其次,根据随机数生成算法及每一加解密模块对应的随机种子,为每一加解密模块生成对应的随机数。
在本实施例中,随机数生成算法可以是、但不限于Random算法、Shuffle算法等。对于每一加解密模块,以其随机种子作为输入,通过随机数生成算法为该加解密模块生成对应的随机数,该随机数小于预设加密处理时间。
作为一种具体实施方式,可以将随机种子作为伪随机函数FUNCR的输入,通过FUNCR获得与该随机种子对应的随机数。
需要说明的是,不同的加解密模块可以使用相同的随机数生成算法,也可以使用不同的随机数生成算法,本发明对此不予限定,但是,不管采用哪种随机数生成算法,生成的随机数均满足小于预设加密处理时间这一条件。
最后,依据每一加解密模块对应的随机数,得到每一加解密模块的加密启动延时时间,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间。
在本实施例中,每一加解密模块对应一个随机数,根据该随机数得到该加解密模块的加密启动延时时间。作为一种具体实施方式,根据预设加密处理时间的不同,可以取通过FUNCR获得的随机数的不同的低若干个bit对应的值作为加密启动延时时间,例如,若预设加密处理时间为36个时钟周期,此处可以取随机数的低5个bit对应的值作为加密启动延时时间,低5个bit的最大值为32,当然,也可以去随机数的低4个bit对应的值作为加密启动延时时间,低4个bit的最大值为16。也可以通过取通过FUNCR获得的随机数的不同的高若干个bit对应的值作为加密启动延时时间,或者中间若干个bit对应的值作为加密启动延时时间,本发明实施例对于根据随机数得到加密启动延时时间的具体方式不予限定。
需要说明的是,方法1和方法2分别对应两种确定加解密模块的加密启动延时时间的方法,方法1由于每次加密时都需要利用随机数生成器生成随机数,而随机数生成器生成随机数的效率较低,因而会大大降低数据加密的效率,方法2针对方法1做了改进,利用随机数生成器为每一加解密模块生成对应的随机种子,后续再对数据进行加密时,只需要根据每一加解密模块对应的随机种子,利用随机数生成算法,即可得到本次进行加密运算时每一加解密模块的加密启动延时时间,而通过随机数生成算法获取随机数的效率远大于利用随机生成器获取随机数的效率,因而可以提高数据加密的效率。
步骤S1022,将明文及第一密钥输入每一加解密模块,并控制每一加解密模块按照对应的加密启动延时时间启动对明文的加密处理,得到经过每一加解密模块加密处理后的加密密文。
在本实施例中,第一密钥为用于对明文进行加密时使用的密钥,第一密钥可以预先设置,也可以按照预先设置的加解密算法随机生成。
在本实施例中,每一加解密模块输入相同的明文及第一密钥,且每一加解密模块均输出一个加密密文。
需要说明的是,每次加解密模块进行加密处理前都会重新按照预设规则随机确定每一加解密模块的加密启动延时时间,例如,对于任意一个加解密模块而言,本次加密时确定的加密启动延时时间为t1,下次加密时确定的加密启动延时时间为t2,t1可以和t2相同,也可以和t2不同,t1和t2都是根据预设规则随机确定的,具有随机性,由此保证了每次加解密时多个加解密模块的加密处理时间叠加的随机性。
还需要说明的是,由于多个加解密模块的输入均相同,因此,当得到的多个加密密文均相同时,认为此次加密成功,得到的加密密文是正确的,可以将任意一个加密密文作为明文的密文,若任意两个加密密文不相同,则判定加密结果为加密失败,加密失败时,可以将加密结果丢弃,可以发出异常提示等,进一步保证了加密结果的准确性。
本发明实施例提供的上述防侧信道攻击方法,通过按照随机确定的启动时间启动多路加解密模块进行加密处理,使得多路加解密模块加密处理产生的电磁辐射信号可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
在图4的基础上,本发明实施例给出了一种解密过程中防侧信道攻击方法,请参照图7,图7示出了本发明实施例所提供的另一种防侧信道攻击方法的流程图,步骤S102还包括以下子步骤:
步骤S1023,按照预设规则随机确定每一加解密模块的解密启动延时时间,其中,每一加解密模块的解密启动延时时间均小于预设解密处理时间。
在本实施例中,在本实施例中,解密启动延时时间为加解密模块启动解密之前的等待时长,该等待时长小于预设解密处理时间,例如,预设解密处理时间为32个时钟周期,则解密启动延时时间的取值为大于0个时钟周期且小于32个时钟周期。
步骤S1024,将密文及第二密钥输入每一加解密模块,并控制每一加解密模块按照对应的解密启动延时时间启动对密文的解密处理,得到经过每一加解密模块解密处理后的解密明文。
在本实施例中,第二密钥为对密文进行解密时的密钥,第二密钥可以预先设置,也可以按照预先设置的加解密算法随机生成。若加解密模块采用的是对称加解密算法,则解密用的第二密钥与加密用的第一密钥相同,若加解密模块采用的是非对称加解密算法,则解密用的第二密钥与加密用的第一密钥不同。
在本实施例中,若多个解密明文均相同时,将任意一个解密明文作为密文的明文,进一步保证解密的正确性。
在本实施例中,解密过程中的防侧信道攻击方法与加密过程中的防侧信道攻击方法类似,本领域技术人员可以通过上述加密过程中的防侧信道攻击方法,不付出创造性的劳动即可推导出解密过程中的防侧信道攻击方法。
本发明实施例提供的上述防侧信道攻击方法,通过按照随机确定的启动时间启动多路加解密模块进行解密处理,使得多路加解密模块解密处理产生的电磁辐射信号可以随机叠加,从而可以防范解密过程中的侧信道攻击,提高电子设备中数据的安全性。
为了执行上述实施例及各个可能的实施方式中的相应步骤,下面给出一种防侧信道攻击装置的方框示意图的实现方式,请参看图8,图8示出了本发明实施例提供的防侧信道攻击装置300的方框示意图。需要说明的是,本实施例所提供的防侧信道攻击装置300,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及指出,可参考上述实施例中的相应内容。
防侧信道攻击装置300包括接收模块310、处理模块320。
接收模块310,用于接收待加密的明文或者待解密的密文。
处理模块320,用于利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。
作为一种实施方式,处理模块320具体用于按照预设规则随机确定每一加解密模块的加密启动延时时间;将所述明文及第一密钥输入每一所述加解密模块,并控制每一所述加解密模块按照对应的加密启动延时时间启动对所述明文的加密处理,得到经过每一所述加解密模块加密处理后的加密密文。
作为一种实施方式,处理模块320在执行按照预设规则随机确定每一所述加解密模块的加密启动延时时间时具体用于:利用随机数生成器为每一加解密模块生成对应的随机数,其中,每一随机数的值均小于预设加密处理时间;将每一加解密模块对应的随机数作为该加解密模块的加密启动延时时间。
作为一种实施方式,处理模块320在按照预设规则随机确定每一所述加解密模块的加密启动延时时间时具体还用于:从随机数生成器获取每一加解密模块对应的随机种子;根据随机数生成算法及每一加解密模块对应的随机种子,为每一加解密模块生成对应的随机数;依据每一加解密模块对应的随机数,得到每一加解密模块的加密启动延时时间,其中,每一加密启动延时时间均小于预设加密处理时间。
作为一种实施方式,处理模块320具体还用于:按照预设规则随机确定每一加解密模块的解密启动延时时间;将密文及第二密钥输入每一加解密模块,并控制每一加解密模块按照对应的解密启动延时时间启动对密文的解密处理,得到经过每一加解密模块解密处理后的解密明文。
请参照图9,图9示出了本发明实施例所提供的电子设备30的方框示意图,电子设备30包括控制器31、存储器32,控制器31包括加解密模块111。
在本实施例中,控制器31可以是一种集成电路芯片,具有信号的处理能力,例如图1和图3中的控制芯片11。在实现过程中,上述方法的各步骤可以通过控制器31中的硬件的集成逻辑电路或者软件形式的指令完成。
存储器32可以是包括高速随机存取存储器(RAM:Random Access Memory),也可能还包括非易失存储器(non-volatile memory)。存储器32可以集成在控制器31内部,也可以独立于控制器31,例如图1和图3中的存储芯片12。存储器32用于存储软件程序模块,例如图8所示的防侧信道攻击装置300,控制器31执行存储器32中的程序模块,以实现图4、图5、图7对应的防侧信道攻击方法。
需要说明的是,加解密模块也可以独立于控制器且与控制器电连接,图9只是其中的一种实现方式的实例,并不限定于加解密模块111一定要置于控制器内,或者和控制器集成在一起。
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被控制器31执行时实现如前述实施方式中任一项所述的防侧信道攻击方法。
综上所述,本发明实施例提供了一种防侧信道攻击方法及相关装置,应用于包含多个加解密模块的电子设备,所述方法包括:接收待加密的明文或者待解密的密文;利用每一加解密模块对待加密的明文进行加密,其中,每一加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个加解密模块的加密处理时间存在重叠、或者利用每一加解密模块对待解密的密文进行解密,每一加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个加解密模块的解密处理时间存在重叠。与现有技术相比,本发明实施例通过按照随机确定的启动时间启动多路加解密模块进行加密或者解密处理,使得多路加解密模块加密处理产生的电磁辐射信号可以随机叠加或者解密处理产生的电磁辐射信息可以随机叠加,从而可以防范侧信道攻击,提高电子设备中数据的安全性。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种防侧信道攻击方法,其特征在于,应用于包含多个加解密模块的电子设备,所述方法包括:
接收待加密的明文或者待解密的密文;
按照预设规则随机确定每一所述加解密模块的加密启动延时时间,并利用每一所述加解密模块对所述待加密的明文进行加密,其中,每一所述加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个所述加解密模块的加密处理时间存在随机重叠;
或者,按照所述预设规则随机确定每一所述加解密模块的解密启动延时时间,并利用每一所述加解密模块对所述待解密的密文进行解密,其中,每一所述加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个所述加解密模块的解密处理时间存在随机重叠。
2.如权利要求1所述的防侧信道攻击方法,其特征在于,所述利用每一所述加解密模块对所述待加密的明文进行加密的步骤包括:
将所述明文及第一密钥输入每一所述加解密模块,并控制每一所述加解密模块按照对应的加密启动延时时间启动对所述明文的加密处理,得到经过每一所述加解密模块加密处理后的加密密文。
3.如权利要求2所述的防侧信道攻击方法,其特征在于,所述电子设备还包括随机数生成器,所述按照预设规则随机确定每一所述加解密模块的加密启动延时时间的步骤包括:
利用所述随机数生成器为每一所述加解密模块生成对应的随机数,其中,每一随机数的值均小于所述预设加密处理时间;
将每一所述加解密模块对应的随机数作为该加解密模块的加密启动延时时间。
4.如权利要求2所述的防侧信道攻击方法,其特征在于,所述电子设备还包括随机数生成器,所述按照预设规则随机确定每一所述加解密模块的加密启动延时时间的步骤包括:
从所述随机数生成器获取每一所述加解密模块对应的随机种子;
根据随机数生成算法及每一所述加解密模块对应的随机种子,为每一所述加解密模块生成对应的随机数;
依据每一所述加解密模块对应的随机数,得到每一所述加解密模块的加密启动延时时间,其中,每一所述加解密模块的加密启动延时时间均小于所述预设加密处理时间。
5.如权利要求1所述的防侧信道攻击方法,所述利用每一所述加解密模块对所述待解密的密文进行解密的步骤包括:
将所述密文及第二密钥输入每一所述加解密模块,并控制每一所述加解密模块按照对应的解密启动延时时间启动对所述密文的解密处理,得到经过每一所述加解密模块解密处理后的解密明文。
6.一种防侧信道攻击装置,其特征在于,应用于包含多个加解密模块的电子设备,所述装置包括:
接收模块,用于接收待加密的明文或者待解密的密文;
处理模块,用于按照预设规则随机确定每一所述加解密模块的加密启动延时时间,并利用每一所述加解密模块对所述待加密的明文进行加密,其中,每一所述加解密模块的加密启动延时时间均小于预设加密处理时间,任意两个所述加解密模块的加密处理时间存在随机重叠;
或者,按照所述预设规则随机确定每一所述加解密模块的解密启动延时时间,并利用每一所述加解密模块对所述待解密的密文进行解密,其中,每一所述加解密模块的解密启动延时时间均小于预设解密处理时间,任意两个所述加解密模块的解密处理时间存在随机重叠。
7.如权利要求6所述的防侧信道攻击装置,其特征在于,所述处理模块具体用于;
将所述明文及第一密钥输入每一所述加解密模块,并控制每一所述加解密模块按照对应的加密启动延时时间启动对所述明文的加密处理,得到经过每一所述加解密模块加密处理后的加密密文。
8.如权利要求6所述的防侧信道攻击装置,其特征在于,所述处理模块具体还用于:
将所述密文及第二密钥输入每一所述加解密模块,并控制每一所述加解密模块按照对应的解密启动延时时间启动对所述密文的解密处理,得到经过每一所述加解密模块解密处理后的解密明文。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个控制器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个控制器执行时,使得所述一个或多个控制器实现如权利要求1-5中任一项所述的防侧信道攻击方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被控制芯片执行时实现如权利要求1-5中任一项所述的防侧信道攻击方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010403962.7A CN111600873B (zh) | 2020-05-13 | 2020-05-13 | 防侧信道攻击方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010403962.7A CN111600873B (zh) | 2020-05-13 | 2020-05-13 | 防侧信道攻击方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111600873A CN111600873A (zh) | 2020-08-28 |
CN111600873B true CN111600873B (zh) | 2023-03-10 |
Family
ID=72190769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010403962.7A Active CN111600873B (zh) | 2020-05-13 | 2020-05-13 | 防侧信道攻击方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111600873B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601578A (zh) * | 2003-07-07 | 2005-03-30 | 索尼株式会社 | 密码处理装置、密码处理方法以及计算机程序 |
CN101542969A (zh) * | 2006-10-30 | 2009-09-23 | 夏普株式会社 | 加密装置 |
CN101729241A (zh) * | 2008-10-23 | 2010-06-09 | 国民技术股份有限公司 | 抵御差分能量攻击的aes加密方法 |
CN102710413A (zh) * | 2012-04-25 | 2012-10-03 | 杭州晟元芯片技术有限公司 | 一种抗dpa/spa攻击的系统和方法 |
CN103324467A (zh) * | 2013-05-28 | 2013-09-25 | 戴葵 | 一种基于随机指令延迟的抗旁路攻击处理器架构 |
CN103634102A (zh) * | 2013-12-16 | 2014-03-12 | 国家电网公司 | 一种侧信道攻击和故障攻击的防护方法 |
CN103903043A (zh) * | 2012-12-24 | 2014-07-02 | 北京握奇数据系统有限公司 | 一种智能卡三位一体抗侧信道攻击防护方法和系统 |
CN107979574A (zh) * | 2016-10-25 | 2018-05-01 | 华为技术有限公司 | 一种用于加解密引擎的防止攻击的方法和装置以及芯片 |
CN108616348A (zh) * | 2018-04-19 | 2018-10-02 | 清华大学无锡应用技术研究院 | 使用可重构处理器实现安全算法、解密算法的方法及系统 |
CN109101829A (zh) * | 2018-08-28 | 2018-12-28 | 北京计算机技术及应用研究所 | 基于可重构密码处理器的安全固态盘数据传输系统 |
CN111082918A (zh) * | 2019-11-19 | 2020-04-28 | 东南大学 | 一种二维随机加扰的aes抗功耗攻击系统和方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012033580A1 (en) * | 2010-09-08 | 2012-03-15 | Xilinx, Inc. | Protecting against differential power analysis attacks on sensitive data |
US10102390B2 (en) * | 2012-06-28 | 2018-10-16 | Honeywell International Inc. | Memory authentication with redundant encryption |
CN103023634A (zh) * | 2012-12-05 | 2013-04-03 | 无锡华大国奇科技有限公司 | 一种防止差分功耗分析的des装置 |
US20160352508A1 (en) * | 2014-06-16 | 2016-12-01 | Texas Instruments Deutschland Gmbh | Methods and Apparatus for Plaintext Analysis as Countermeasures Against Side Channel Attacks |
CN104378196A (zh) * | 2014-11-07 | 2015-02-25 | 昆腾微电子股份有限公司 | 加解密算法的安全执行方法和装置 |
AT517983B1 (de) * | 2015-11-18 | 2018-11-15 | Siemens Ag Oesterreich | Schutz eines Computersystems vor Seitenkanalattacken |
CN105897400A (zh) * | 2016-06-20 | 2016-08-24 | 北京华大信安科技有限公司 | 一种sm4算法的掩码方法及装置 |
US10270586B2 (en) * | 2017-04-25 | 2019-04-23 | Seagate Technology Llc | Random time generated interrupts in a cryptographic hardware pipeline circuit |
CN109361507B (zh) * | 2018-10-11 | 2021-11-02 | 杭州华澜微电子股份有限公司 | 一种数据加密方法及加密设备 |
-
2020
- 2020-05-13 CN CN202010403962.7A patent/CN111600873B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601578A (zh) * | 2003-07-07 | 2005-03-30 | 索尼株式会社 | 密码处理装置、密码处理方法以及计算机程序 |
CN101542969A (zh) * | 2006-10-30 | 2009-09-23 | 夏普株式会社 | 加密装置 |
CN101729241A (zh) * | 2008-10-23 | 2010-06-09 | 国民技术股份有限公司 | 抵御差分能量攻击的aes加密方法 |
CN102710413A (zh) * | 2012-04-25 | 2012-10-03 | 杭州晟元芯片技术有限公司 | 一种抗dpa/spa攻击的系统和方法 |
CN103903043A (zh) * | 2012-12-24 | 2014-07-02 | 北京握奇数据系统有限公司 | 一种智能卡三位一体抗侧信道攻击防护方法和系统 |
CN103324467A (zh) * | 2013-05-28 | 2013-09-25 | 戴葵 | 一种基于随机指令延迟的抗旁路攻击处理器架构 |
CN103634102A (zh) * | 2013-12-16 | 2014-03-12 | 国家电网公司 | 一种侧信道攻击和故障攻击的防护方法 |
CN107979574A (zh) * | 2016-10-25 | 2018-05-01 | 华为技术有限公司 | 一种用于加解密引擎的防止攻击的方法和装置以及芯片 |
CN108616348A (zh) * | 2018-04-19 | 2018-10-02 | 清华大学无锡应用技术研究院 | 使用可重构处理器实现安全算法、解密算法的方法及系统 |
CN109101829A (zh) * | 2018-08-28 | 2018-12-28 | 北京计算机技术及应用研究所 | 基于可重构密码处理器的安全固态盘数据传输系统 |
CN111082918A (zh) * | 2019-11-19 | 2020-04-28 | 东南大学 | 一种二维随机加扰的aes抗功耗攻击系统和方法 |
Non-Patent Citations (2)
Title |
---|
对称加密系统差分功率谱分析攻击;褚杰等;《计算机工程》;20080520(第10期);全文 * |
针对随机时间片对抗的PA分析方法研究;唐明等;《武汉大学学报(理学版)》;20131024(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111600873A (zh) | 2020-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9483664B2 (en) | Address dependent data encryption | |
JP7225220B2 (ja) | 記憶データ暗号化/復号化装置及び方法 | |
JP5306465B2 (ja) | セキュアなメモリに応用するメッセージ認証コードの事前計算 | |
CN106599735B (zh) | 数据保护装置、方法以及存储控制器 | |
EP2465069B1 (en) | Physically unclonable function with tamper prevention and anti-aging system | |
Helfmeier et al. | Physical vulnerabilities of physically unclonable functions | |
EP3512157B1 (en) | Random code generator | |
US11115181B2 (en) | Memory device, host device, and memory system | |
JP2001514834A (ja) | 安全決定性暗号鍵発生システムおよび方法 | |
US10146701B2 (en) | Address-dependent key generation with a substitution-permutation network | |
US10511433B2 (en) | Timing attack protection in a cryptographic processing system | |
EP2990953B1 (en) | Periodic memory refresh in a secure computing system | |
CN112887077B (zh) | 一种ssd主控芯片随机缓存保密方法和电路 | |
US20200356285A1 (en) | Password protected data storage device and control method for non-volatile memory | |
CN213876729U (zh) | 一种ssd主控芯片随机缓存保密电路 | |
CN111600873B (zh) | 防侧信道攻击方法及相关装置 | |
US9531535B2 (en) | Secure memories using unique identification elements | |
JP2019121955A (ja) | 半導体装置及び暗号鍵の生成方法 | |
EP4307155A1 (en) | Method and circuit for protecting an electronic device from a side-channel attack | |
CN114297626A (zh) | 一种用于工控系统的密钥生成及加密方法 | |
CN115618372A (zh) | 实现芯片中数据的保护方法、装置和芯片 | |
CN115842628A (zh) | 实现密钥处理的方法、装置、计算机存储介质及固态硬盘 | |
CN114761957A (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 |