由加密算法处理的数据的保护制造技术

技术编号:36180069 阅读:15 留言:0更新日期:2022-12-31 20:36
本公开的实施例涉及由加密算法处理的数据的保护。本公开涉及一种由处理器执行的用于保护应用于加密算法的第一数据项的方法,其中所述算法是每轮次算法,每个轮次处理第一,第二和第三寄存器的内容,第二寄存器的内容在第一奇偶校验轮次期间由第四寄存器的内容掩蔽,并且第三寄存器的内容在第二奇偶校验轮次期间由第五寄存器的内容掩蔽。间由第五寄存器的内容掩蔽。间由第五寄存器的内容掩蔽。

【技术实现步骤摘要】
由加密算法处理的数据的保护


[0001]本公开一般涉及数据保护,更具体地,涉及通过块加密算法的数据加密处理。

技术介绍

[0002]以连续的轮次执行块加密算法。在每个轮次中,对要加密的数据块执行密码操作。密码操作还取决于加密密钥,加密密钥本身取决于其在轮次中的位置。
[0003]然而,块加密算法对侧信道攻击敏感。这些攻击包括利用诸如处理器的算法计算或执行时间,其中执行算法的电子装置的功耗的信息。然后攻击者推导出算法所使用的至少部分数据的值(例如加密密钥)。这种类型的攻击的对策包括掩蔽由算法处理的输入数据。

技术实现思路

[0004]在一个实施例中,一种方法包括:使用密码电路装置执行密码操作;以及使用所述密码电路装置来保护在所述执行期间应用于所述密码操作的第一数据项。执行和保护包括:执行多个轮次中的密码操作,每个轮次处理第一、第二和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用第四寄存器的内容掩蔽所述第二寄存器的内容;以及在所述多个轮次的第二奇偶校验轮次期间使用第五寄存器的内容来掩蔽所述第三寄存器的内容。
[0005]在一个实施例中,一种装置包括:多个寄存器;以及密码电路装置,耦合到所述多个寄存器,其中所述密码电路装置在操作中:执行密码操作;以及在执行密码操作期间保护第一数据项。执行和保护包括:在多个轮次中执行所述密码操作,每个轮次处理所述多个寄存器中的第一寄存器、第二寄存器和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用所述多个寄存器的第四寄存器的内容掩蔽所述第二寄存器的内容;以及在所述多个轮次的第二奇偶校验轮次期间使用所述多个寄存器的第五寄存器的内容来掩蔽所述第三寄存器的内容。
[0006]在一个实施例中,一种系统包括:存储器;以及密码电路装置,耦合到所述存储器并且包括多个寄存器,其中所述密码电路装置在操作中:执行密码操作;以及在执行密码操作期间保护第一数据项。执行和保护包括:在多个轮次中执行所述密码操作,每个轮次处理所述多个寄存器中的第一、第二和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用所述多个寄存器的第四寄存器的内容掩蔽所述第二寄存器的内容;以及在所述多个轮次的第二奇偶校验轮次期间使用所述多个寄存器的第五寄存器的内容来掩蔽所述第三寄存器的内容。
[0007]在一个实施例中,一种非暂态计算机可读介质具有使密码电路装置执行方法的内容,该方法包括:执行密码操作;以及在所述密码操作的执行期间保护第一数据项,其中执行和保护包括:执行多个轮次中的密码操作,每个轮次处理第一、第二和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用第四寄存器的内容掩蔽所述第二寄存器
的内容;以及在所述多个轮次的第二奇偶校验轮次期间使用第五寄存器的内容来掩蔽所述第三寄存器的内容。
附图说明
[0008]前述特征和优点以及其他特征和优点将在以下具体实施例的描述中参考附图以说明而非限制的方式给出,在附图中:
[0009]图1示出了所述实施例可以应用的类型的电子装置的示例;
[0010]图2A示出了示意性地并以框图形式示出所述方法的一个实施例的示例;
[0011]图2B以框图形式示出了示意性描述的方法的一个实施例的另一示例;
[0012]图3是示出所述方法的一个实施例的步骤的流程图;
[0013]图4是示出所描述的实施例可以应用的类型的加密算法的一个示例的框图;以及
[0014]图5是示出通过图4所示的算法应用所述实施例的一个示例的框图。
具体实施方式
[0015]在各个附图中相同的特征由相同的附图标记表示。特别地,在各个实施例中共同的结构和/或功能特征可以具有相同的附图标记并且可以设置相同的结构,尺寸和材料特性。
[0016]为了清楚起见,仅对可用于理解本文所述实施例的操作和元件进行了详细说明和描述。具体地,没有详细描述适用于该实施例的电子电路(处理器,存储器或状态机)。所描述的实施例与通常的电子电路的使用兼容。
[0017]除非另有说明,当提及连接在一起的两个元件时,这表示除了导体之外没有任何中间元件的直接连接,并且当提及耦合在一起的两个元件时,这表示这两个元件可以被连接或者它们可以经由一个或多个其它元件被耦合。
[0018]在以下公开中,除非另有说明,当提及绝对位置限定词时,例如术语“前”,“后”,“顶”,“底”,“左”,“右”等,或提及相对位置限定词时,例如术语“上”,“下”,“较高”,“较低”等,或提及取向限定词时,例如“水平”,“垂直”等,是指图中所示的取向。
[0019]除非另有说明,否则表述“约”,“大约”,“基本上”和“以

量级”表示在10%以内和在5%以内。
[0020]图1示出了所述实施例可以应用的类型的示例电子装置10。
[0021]电子装置10包括集成电路11。
[0022]电路11包括处理器12(CPU),其例如经由一个或多个地址、数据和/或命令总线18耦合到一个或多个易失性或非易失性存储器、例如易失性存储器14(RAM)和非易失性存储器13(NVM)、例如闪存。处理器12还操作其它存储部件,特别是寄存器(块17,REGISTERS)。在预期的应用中,总线18还将电路11的内部电路连接到输入/输出接口15(I/O INTERFACE)和一个或多个随机数生成器16(RN GENERATOR)。由电路11可以实现其它功能(未示出)。
[0023]处理器12被配置成执行例如由存储在非易失性存储器13中的指令代码描述的加密算法。
[0024]随机数生成器16是伪随机数生成器,例如线性同余生成器,其使用具有无序行为并且具有足够长的周期以表现为随机的递归算术序列。这种生成器的质量尤其取决于所使
用的算术参数。根据另一实施例,生成器16是使用随机物理源的随机数生成器,该随机物理源例如基于其上实现该生成器的材料的固有性质。
[0025]根据所描述的实施例,存储在易失性存储器14中的数据例如旨在由加密算法来加密。该算法是块对称加密算法,诸如高级加密标准(AES)类型的算法,或从SMS4算法导出的SM4类型的算法(来自中文shangy
è
Mima的首字母SM,用英语含义为“商业密码”)。
[0026]当使用块算法加密时,要加密的数据被划分为相同大小的比特块,用于AES或SM4的128比特块。然后,该算法使用置换盒(SBOX)执行一系列轮次,每个轮次应用所谓的混淆步骤。置换盒由一个求逆操作和至少一个线性操作组成。然后该算法执行由线性操作组成的扩散步骤。在每个算法轮次中,使用例如存储在电路11的非易失性存储器13中的从单个加密密钥导出的子密钥。由于算法是对称的,所以单个加密密钥使得加密和解密数据成为可能。
[0027]块加密对侧信道攻击敏感。侧信道攻击通过接口15从电路11提取数据,例如通过解释诸如功耗、计算时间或电磁辐射的信息。作为示例,这种攻击可以包括将本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:使用密码电路装置执行密码操作;以及使用所述密码电路装置来保护在所述执行期间应用于所述密码操作的第一数据项,其中所述执行和所述保护包括:执行多个轮次中的所述密码操作,每个轮次处理第一寄存器、第二寄存器和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用第四寄存器的内容来掩蔽所述第二寄存器的内容;以及在多个轮次的第二奇偶校验轮次期间使用第五寄存器的内容来掩蔽所述第三寄存器的内容。2.根据权利要求1所述的方法,其中针对第一轮次的所述第一寄存器、所述第二寄存器和所述第三寄存器的内容分别为:所述第一数据,由第一掩码掩蔽;第二掩码;以及所述第一掩码,由第三掩码掩蔽。3.根据权利要求1所述的方法,其中在最后轮次的执行之后,所述第一寄存器的内容提供对所述第一数据项应用所述密码操作的结果。4.根据权利要求2所述的方法,其中,对于每个第一奇偶校验轮次,随机第四掩码被生成并且被存储在所述第四寄存器中;以及对于每个第二奇偶校验轮次,随机第五掩码被生成并且被存储在所述第五寄存器中。5.根据权利要求1所述的方法,其中对于每个轮次,a)对所述第一寄存器内容求逆模素数多项式,并且求逆的内容被存储在所述第一寄存器中;然后b)所述第一寄存器的内容由所述第二寄存器和所述第三寄存器的内容掩蔽。6.根据权利要求5所述的方法,其中对于每个轮次,在步骤a)和b)之后,对所述第一寄存器的内容执行密码操作。7.根据权利要求5所述的方法,其中对于每个轮次,阈值S盒实现方式被使用来执行所述第一寄存器的内容的所述求逆。8.根据权利要求5所述的方法,其中所述素数多项式模取决于要被执行的所述密码操作。9.根据权利要求1所述的方法,其中所述第一奇偶校验轮次是排序为奇数的轮次,而所述第二奇偶校验轮次是排序为偶数的轮次。10.根据权利要求1所述的方法,其中所述第一奇偶校验轮次是排序为偶数的轮次,而所述第二奇偶校验轮次是排序为奇数的轮次。11.根据权利要求1所述的方法,其中在最后轮次的输出处,所述第一寄存器包含由第六掩码所掩蔽的第二数据项。12.根据权利要求11所述的方法,其中所述第二数据项对应于所述第一加密数据。13.根据权利要求4所述的方法,其中,
在最后轮次的输出处,所述第一寄存器包含由第六掩码掩蔽的第二数据项;以及取决于所述最后轮次是否是所述第一奇偶校验或是所述第二奇偶校验,所述第六掩码是与所述第二寄存器的内容相乘的所述第三掩码的组合,或者是与所述第三寄存器的内容相乘的所述第三掩码的逆的组合。14.根据权利要求1所述的方法,其中所述密码操作采用AES加密。15.根据权利要求1所述的方法,其中所述密码操作采用SM4加密。16.一种装置,包括:多个寄存器;以及密码电路装置,耦合到所述多个寄存器,其中所述密码电路装置在操作中:执行密码操作;以及在所述密码操作的所述执行期间保护第一数据项,其中所述执行和所述保护包括:在多个轮次中执行所述密码操作,每个轮次处理所述多个寄存器中的第一寄存器、第二寄存器和第三寄存器的内容;在所述多个轮次的第一奇偶校验轮次期间使用所述多个寄存器中的第四寄存器的内容掩蔽所述第二寄存器的内容;以及在所述多个轮次的第二奇偶校验轮次期间使用所述多个寄存器中的第五寄存器的内容掩蔽所述第三寄存器的内容。17.根据权利要求16所述的装置,其中针对所述多个轮次中的第一轮次的所述第一寄存器、所述第二寄存器和所述第三寄存器的内容分别为:所述第一数据,由第一掩码掩蔽;第二掩码;以及所述第一掩码,由第三掩码掩蔽。18.根据权利要求1...

【专利技术属性】
技术研发人员:S
申请(专利权)人:意法半导体鲁塞公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1