CN114048472B - 基于线性码掩码和位切片技术的抗旁路攻击的防御方法 - Google Patents
基于线性码掩码和位切片技术的抗旁路攻击的防御方法 Download PDFInfo
- Publication number
- CN114048472B CN114048472B CN202210047078.3A CN202210047078A CN114048472B CN 114048472 B CN114048472 B CN 114048472B CN 202210047078 A CN202210047078 A CN 202210047078A CN 114048472 B CN114048472 B CN 114048472B
- Authority
- CN
- China
- Prior art keywords
- bit
- vector
- matrix
- domain
- dimensional
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000005516 engineering process Methods 0.000 title claims abstract description 12
- 230000007123 defense Effects 0.000 title claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 239000013598 vector Substances 0.000 claims description 228
- 239000011159 matrix material Substances 0.000 claims description 131
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000009825 accumulation Methods 0.000 claims description 13
- 230000000873 masking effect Effects 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 11
- 239000002904 solvent Substances 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000012886 linear function Methods 0.000 claims description 6
- 239000002131 composite material Substances 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 239000007788 liquid Substances 0.000 description 3
- OWZREIFADZCYQD-NSHGMRRFSA-N deltamethrin Chemical compound CC1(C)[C@@H](C=C(Br)Br)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 OWZREIFADZCYQD-NSHGMRRFSA-N 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法。线性码掩码是一类具有复杂代数计算的掩码。相对于布尔掩码,线性码掩码具有更高的安全性,可以更加有效地抵御旁路攻击,但是其实现起来更复杂,需要的开销和计算成本也更高,因此不利于应用到各类小型嵌入式设备。基于此,本发明将线性码掩码和位切片技术相结合,提出了一种可以灵活适配于各类嵌入式设备,通用的基于线性码掩码的抗旁路攻击的防御方法。该方法可以灵活地与各类分组密码相结合,且开销较低,实现简便,可以有效满足加密电子设备的抗旁路攻击的安全需要。
Description
技术领域
本发明属于旁路安全领域,尤其涉及一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法。
背景技术
传统旁路攻击对现有的加密设备来说是一个潜在的重大威胁,尤其是对于那些基本没有保护措施的小型嵌入式设备。电子设备在运行过程中的各种被动泄露都会让具有旁路攻击技术的攻击者有机可乘,这些泄露包括时间、功耗、电磁辐射和温度等。为了抵御此类威胁,各类保护策略在过去十几年间被相继提出,其中影响力比较大且被认为比较有效的一类策略被称作“掩码”。“掩码”是指将算法运行过程中的敏感变量x拆分为n个“分摊”变量,使得通过任意其中d(d<n)个“分摊”变量无法得知敏感变量x的信息。我们将敏感变量x到n个分摊变量的映射称为编码函数。此外,掩码方案还需给出分摊变量在掩码域内的计算,保证最终得到的结果是正确的,分摊变量在掩码域内的计算称为私有计算。应该说,一个完整的掩码方案由一个安全的编码函数和一个执行私有计算的策略组成。
布尔掩码是最简单也最易实现的掩码方案,因为它的编码函数仅由异或运算组成。除了异或运算,编码函数还可由更复杂的代数运算组成,比如乘法掩码、仿射掩码和多项式掩码。更复杂的代数运算意味着相较于布尔掩码更小的泄露,因此也更加安全。近年来,线性代码也被引入掩码领域。由此,直接求和掩码方案将编码函数的形式一般化为z=xG+yH,其中z,x,y分别表示掩码变量、敏感变量和掩码,G和H分别为线性码的生成矩阵。直接求和掩码方案已被证明是布尔掩码和内积掩码的泛化形式。比直接求和掩码更加泛化的形式是基于线性码的掩码方案,该掩码方案可以转化为特定的主流掩码方案,比如布尔掩码、内积掩码等,且具有一个有效的计算框架对掩码域内的分摊变量进行私有计算。基于线性码的掩码方案不仅具有更强的抗旁路攻击的防御能力,由于其线性码特性还具有抗故障注入攻击的潜力,因此具有无限潜力。但是,基于线性码的掩码方案成本开销过大,需要较高的计算资源,对小型嵌入式设备并不适用;另一方面,目前基于线性码的掩码方案仅基于理论推导,缺少具体的实现方法,离实践和工程应用还有一定的距离。
发明内容
本发明的目的在于针对现有技术的不足,提供一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法。
本发明的目的是通过以下技术方案来实现的:一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法,包括以下步骤:
步骤三:将步骤二得到的位切片形式的掩码向量群,作为掩码域内的分组加密算法的输入,得到掩码域内的加密结果;掩码域内的分组加密算法由三个模块按一定规则组成,分别为:位切片形式的掩码域内哈达玛乘法模块、位切片形式的掩码域内等量线性转换模块、位切片形式的掩码域内非等量线性转换模块;位切片形式的掩码域内乘法模块用于实现分组加密算法中两个域内向量的哈达玛乘法;位切片形式的掩码域内等量线性转换模块用于实现分组加密算法域内向量满足映射f BSL:Fk→Fk的线性转换;位切片形式的掩码域内非等量线性转换模块用于实现分组加密算法中域内向量满足映射的线性转换;F表示伽罗华域,Fk、、表示元素数为k、kl 1、kl 2的域内向量;
其中,r i 为随机生成的m维域内向量;A为n×n的生成矩阵,n=k+m为目标电子加密设备的寄存器位数;生成矩阵A=[G1,G2;H1,H2];G1为k×k的单位矩阵,G2为k×m的零矩阵;H1为m×k的自定义矩阵;H2为m×m的单位矩阵。
进一步地,域内向量q转换为域内位切片形式向量q p ,具体为:n维向量q包括n个元素,每个元素包括8个位值,将所有位值存入8个寄存器,得到向量q p ;其中,8个寄存器对应存储8个位值,每个寄存器存储特定位的值;n位寄存器的最高位至最低位依次对应存储向量q中排序1~n的元素的位值。
进一步地,位切片形式的掩码域内哈达玛乘法模块,包括以下子步骤:
(1.3)计算向量中第iBSMuL个元素,与向量中每个元素的乘积,得到一个位切片形式的n维域内向量;具体地,取出存储的8个寄存器的第iBSMuL位,并将其复制到对应寄存器的每一位得到,将和作为位切片形式的哈达玛乘法的输入,得到向量;
(1.5)计算与位切片形式的n×k矩阵的乘积,得到位切片形式的n维向量;与每一列的乘积涉及位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位后与最后一次左移前的值异或;此时得到的左移异或结果的每个位值位于对应8个寄存器的最高位;对应的寄存器的第1高位至第k高位,依次存储中第1~k列对应的左移异或结果;
进一步地,位切片形式的掩码域内等量线性转换模块,包括以下子步骤:
(2.3)计算的第iBSL个变量与([1k,0m]A)p中每个变量的乘积,最终得到一个位切片形式的n维向量;具体地,取出存储的8个寄存器的第iBSL位,并将其复制到对应寄存器的每一位得到,将和([1k,0m]A)p作为位切片形式的哈达玛乘法的输入,得到向量;其中,1k表示元素全为1的k维行向量;0m表示m维零向量,右上角标p表示矩阵的行向量为位切片形式的向量;
(2.4)计算与位切片形式的矩阵n×k矩阵的乘积,得到非位切片形式的k维向量t2BSL;与每一列的乘积涉及到位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位与最后一次左移前的值异或;此时得到的左移异或结果的每一个位值位于对应8个寄存器的最高位;
(2.5)将t2BSL作为线性转换函数f BSL的输入,得到k维向量t3BSL,给t3BSL串联一个m维的零向量得到n维向量t4BSL,并转换为位切片形式;若此时iBSL=1,则在转换前更新;其中,c是线性函数f BSL的k维常向量,0m表示m维零向量;
进一步地,位切片形式的掩码域内非等量线性转换模块,包括以下子步骤:
(3.3)分别计算的第iBSLs个变量与([1k,0m]A)p中每个变量的乘积,最终得到位切片形式的n维向量群,1≤ii≤l 1;具体地,取出存储的8个寄存器的第iBSLs位,并将其复制到对应寄存器的每一位得到,将和([1k,0m]A)p作为位切片形式的哈达玛乘法的输入,得到向量;其中,1k表示元素全为1的k维行向量;0m表示m维零向量,右上角标p表示矩阵的行向量为位切片形式的向量;
(3.4)分别计算与位切片形式的矩阵n×k矩阵的乘积,得到非位切片形式的k维向量群t2 ii ,1≤ii≤l 1;与每一列的乘积涉及到位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位与最后一次左移前的值异或;此时得到的左移异或结果的每一个位值位于对应8个寄存器的最高位;
(3.5)将l 1个t2 ii 串联作为线性映射f BSLs的输入,得到非位切片形式的掩码域内kl 2维向量t3BSLs;将t3BSLs分割为l 2个k维向量,并分别串联一个维零向量,得到l 2个n维向量t4 jj ;再转换为位切片形式得到;
进一步地,位切片形式的哈达玛乘法,包括以下子步骤:
(b)选取8个寄存器RJ H,将其值清0;
(c)设定IH=0;
(d)设定JH=0;
(f)更新JH=JH+1;如果JH<8,则跳转至步骤(e),否则继续步骤(g);
其中,A-1[,1:k]表示矩阵A-1的第1列到第k列,表示n×m的零矩阵;表示矩阵的第i m行;E为n2×n的域内矩阵,由n个n2维的特殊列向量串联而成,表示第ie个元素的值为1其余元素均为0的向量,i e=nj e+j e+1,0≤je≤n;表示矩阵的第1列到第k列。
式中,R1表示n×m的域内随机矩阵;
式中,R2表示n×m的域内随机矩阵。
本发明的有益效果是:本发明将具有较强抗旁路攻击防御能力的线性码掩码和位切片技术相结合,设计了一套开销较小、针对分组密码的通用掩码防御方案。本发明可以灵活适配于各类电子加密设备。本发明易于实现、开销较小且非常灵活,大大提高了高复杂度的掩码方案应用于小型嵌入式设备的可能性,提高了小型嵌入式设备的抗旁路攻击能力。
附图说明
图1是线性码的生成矩阵A示意图;
具体实施方式
下面根据附图详细说明本发明。
本发明是一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法,适用于任何分组加密算法,且可灵活适配各类电子加密设备;包括以下步骤:
步骤一:输入长度为l的待加密的明文信息。将明文信息分组,得到l/k个长度为k的明文向量x i ,输入编码函数f Enc,得到掩码向量群。k为l的因数,具体数值由用户根据安全需要自定义;1≤i≤l/k。
其中,r i 为长度为m的伽罗华域内(以下简称域内)向量,向量元素随机生成。A为行数为n列数为n的生成矩阵,n=k+m=2x为目标电子加密设备的寄存器位数。如图1所示,A=[G1,G2;H1,H2]由4个子矩阵构成,分别为:行数为k列数为k的单位矩阵G1;行数为k列数为m的零矩阵G2;行数为m列数为k的矩阵H1;行数为m列数为m的单位矩阵H2。H1矩阵的值由用户根据安全需要自定义。
如图2所示,一个n维向量的位切片形式由8个寄存器组成,向量包括n个元素,每个元素包括8个位值,每个寄存器存储向量内n个元素中某一特定位的值,按照元素在向量中1~n的排序,将元素的8个位值从寄存器的最高位依次存至最低位。具体地,向量第1个元素的值的8个位的位值,分别存入这8个寄存器的最高位,再依次存入各元素的位值,直至第个元素8个位的位值分别存入这8个寄存器的最低位;R7存储每个元素的最高位,R6存储每个元素的第二高位,依次类推直至R0存储每个元素的最低位。
掩码域内的分组加密算法由掩码域内的三个模块按一定规则组成。这三个模块分别为位切片形式的掩码域内哈达玛乘法BSMuL模块、位切片形式的掩码域内等量线性转换BSL模块、位切片形式的掩码域内非等量线性转换BSLs模块。每个模块为一种运算,根据分组加密算法的具体算法,每个模块可以多次调用,并进行特定顺序的组合,最后按照组合顺序执行。
(a)BSMuL模块主要实现分组加密算法中两个域内向量的哈达玛乘法。
包括以下子步骤:
其中,矩阵A-1表示生成矩阵A的一般逆矩阵,A-1[,1:k]表示矩阵A-1的第1列到第k列,表示行数为n列数为m的零矩阵。×表示矩阵的外积;表示矩阵的第im行;E为一个行数为n2列数为n的域内矩阵,它是由n个维度为n2的特殊列向量串联而成,表示该向量在第ie个元素处的值为1,其余元素均为0,ie=nje+je+1,0≤je≤n。表示矩阵的第1列到第k列。
a.1.2)将步骤a.1.1)构造的矩阵的每一行向量,根据步骤二转换为对应的位切片形式。
其中,位切片形式的哈达玛乘法为本发明的核心之一,包括以下步骤:
a.3.2)选取8个寄存器RJ H,将其值清0。
a.3.3)设定IH=0。
a.3.4)设定JH=0。
a.3.6)更新JH=JH+1。如果JH<8,则跳转至步骤a.3.5),否则继续执行步骤a.3.7)。
表示位切片形式的向量中n个元素的8位变量都向左移1位;存储最低位的寄存器清零。例如,的8个寄存器为Rx0~Rx7,将Rx6的值赋给Rx7,Rx5的值赋给Rx6,继续直至Rx0的值赋给Rx1,最后清零Rx0。
表示位切片形式的向量中n个元素的8位变量都向右移1位;存储最高位的寄存器清零。例如,的8个寄存器为Ry0~Ry7,将Ry1的值赋给Ry0,Ry2的值赋给Ry1,继续直至Ry7的值赋给Ry6,最后清零Ry7。
a.3.10)更新IH=IH+1。如果IH<8,则跳转至步骤a.3.4),否则哈达玛乘法运算结束,输出为位切片形式的n维向量,的值存储于步骤a.3.2)选取的8个寄存器RJ H中,且满足。、和分别为非位切片形式的向量、和。此处对应。
与每一列的位切片形式的哈达玛乘法的结果,存储在8个位寄存器里,将8个寄存器分别向左移n/21位,并与其左移前的值异或,异或得到的值再向左移n/22位后与这次左移前的值异或,以此类推,直至向左移n/2x=1位再与这次左移前的值异或,这样累加操作便完成,且累加结果的每一个位值位于对应8个寄存器的最高位。
然后将累加结果按照对应中第1~k列同步移到对应的寄存器的第1高位至第k高位。例如,与第1列的乘积结果移到最高位,与第2列的乘积结果移到第2高位,以此类推,与第列的乘积结果移到第k高位;8个寄存器剩余的位置清零。
(b)BSL模块主要实现分组加密算法中域内向量满足映射Fk→Fk的线性转换。F表示伽罗华域,Fk表示元素数为k的域内向量。
BSL模块为本发明的核心之一,包括以下子步骤。
b.3)计算的第iBSL个变量,与([1k,0m]A)p中每个变量的乘积,最终得到一个由位切片形式表示的维度为的域内向量。其中,1k表示维度为k,元素全为1的行向量;0m表示维度为的零向量,右上角标p表示矩阵的行向量为位切片形式的向量。
哈达玛乘法的结果存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,异或得到的值再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位后再与这次左移前的值异或,这样累加操作便完成,且累加结果的每一个位值位于对应8个寄存器的最高位。
将8个寄存器最高位的位值分别存储于另一个寄存器的低8位的相应位置。本实施例中,8个寄存器中存储向量元素的最高位至最低位按照顺序存入另一个寄存器中低8位的最高位至最低位;具体地,将8个寄存器中存储向量元素最高位的R7的最高位存入寄存器低8位的最高位,将8个寄存器中存储向量元素第二最高位的R6的最高位存入寄存器低8位的第二高位,依此类推直至将8个寄存器中存储向量元素最低位的R0的最高位存入寄存器低8位的最低位。
BSLs模块为本发明的核心之一,其输入为l 1个位切片形式的维度均为的掩码域内向量,满足,1≤ii≤l 1;其输出为l 2个位切片形式的维度均为n的,1≤jj≤l 2,满足,1≤jj≤l 2且,f BSLs是满足映射的域内线性函数。
BSLs模块为本发明的核心之一,包括以下子步骤:
具体地,分别计算的第iBSLs个变量与([1k,0m]A)p中每个变量的乘积,最终得到位切片形式的n维向量群,1≤ii≤l 1;具体地,取出存储的8个寄存器的第iBSLs位,并将其复制到对应寄存器的每一位得到,将和([1k,0m]A)p作为位切片形式的哈达玛乘法的输入,得到向量;其中,1k表示元素全为1的k维行向量;0m表示m维零向量,右上角标p表示矩阵的行向量为位切片形式的向量。
分别计算与位切片形式的矩阵n×k矩阵的乘积,得到非位切片形式的k维向量群t2 ii ,1≤ii≤l 1;与每一列的乘积涉及到位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位与最后一次左移前的值异或;此时得到的左移异或结果的每一个位值位于对应8个寄存器的最高位。
将8个寄存器最高位的位值分别存储于另一个寄存器的低8位。
c.5)将l 1个t2 ii 串联,作为线性函数的输入,得到非位切片形式的掩码域内维度为kl 2的向量t3BSLs。将t3BSLs分割为l 2个k维向量,分别给这l 2个向量串联一个m维零向量,得到l 2个n维向量t4 jj 。再将其转换为对应的位切片形式得到,1≤jj≤l 2。
译码函数f Dec的输入为位切片形式的长度为n的掩码域内向量。译码函数f Dec首先将其转换为非位切片形式的长度为n的掩码域内向量;然后计算得到最终的译码结果,A-1[*,1:k]表示矩阵A-1的第1到k列,A-1为矩阵A的逆矩阵。
其中,位切片形式的n维掩码域内向量转换为非位切片形式为:将位切片形式的向量的8个寄存器中同一位置的8个位值组成一个元素,且位值在寄存器中的排位对应元素在向量中的排位。具体地,8个寄存器的最高位存储了n个元素中的第1个元素,8个寄存器的最低位存储了n个元素中的第n个元素;将这8个寄存器同一位置的位值分别存储到另一个寄存器低8位的相应位置。如图2所示,8个寄存器中R7存储了元素的最高位,R0存储了元素的最低位,则将R7中的位值存储到另一个寄存器R中的低8位的最高位,而R0中的位值存储到寄存器R中的低8位的最低位;n个元素总共需要n个寄存器来存储,这样便转换为了非位切片形式。
Claims (6)
1.一种基于线性码掩码和位切片技术的抗旁路攻击的防御方法,其特征在于,包括以下步骤:
步骤三:将步骤二得到的位切片形式的掩码向量群作为掩码域内的分组加密算法的输入,得到掩码域内的加密结果掩码域内的分组加密算法由三个模块按一定规则组成,分别为:位切片形式的掩码域内哈达玛乘法模块、位切片形式的掩码域内等量线性转换模块、位切片形式的掩码域内非等量线性转换模块;
位切片形式的掩码域内乘法模块,用于实现分组加密算法中两个域内向量的哈达玛乘法;包括以下子步骤:
(1.3)计算向量中第iBSMuL个元素,与向量中每个元素的乘积,得到一个位切片形式的n维域内向量具体地,取出存储的8个寄存器的第iBSMuL位,并将其复制到对应寄存器的每一位得到将和作为位切片形式的哈达玛乘法的输入,得到向量
(1.5)计算与位切片形式的n×k矩阵的乘积,得到位切片形式的n维向量 与每一列的乘积涉及位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位后与最后一次左移前的值异或;此时得到的左移异或结果的每个位值位于对应8个寄存器的最高位;对应的寄存器的第1高位至第k高位,依次存储中第1~k列对应的左移异或结果;
位切片形式的掩码域内等量线性转换模块,用于实现分组加密算法域内向量满足映射fBSL:Fk→Fk的线性转换;包括以下子步骤:
(2.3)计算的第iBSL个变量与([1k,0m]A)p中每个变量的乘积,最终得到一个位切片形式的n维向量具体地,取出存储的8个寄存器的第iBSL位,并将其复制到对应寄存器的每一位得到将和([1k,0m]A)p作为位切片形式的哈达玛乘法的输入,得到向量其中,1k表示元素全为1的k维行向量;0m表示m维零向量,右上角标p表示矩阵的行向量为位切片形式的向量;
(2.4)计算与位切片形式的矩阵n×k矩阵的乘积,得到非位切片形式的k维向量t2BSL;与每一列的乘积涉及到位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位与最后一次左移前的值异或;此时得到的左移异或结果的每一个位值位于对应8个寄存器的最高位;
(2.5)将t2BSL作为线性转换函数fBSL的输入,得到k维向量t3BSL,给t3BSL串联一个m维的零向量得到n维向量t4BSL,并转换为位切片形式若此时iBSL=1,则在转换前更新其中,c是线性函数fBSL的k维常向量,0m表示m维零向量;
(3.3)分别计算的第iBSLs个变量与([1k,0m]A)p中每个变量的乘积,最终得到位切片形式的n维向量群1≤ii≤l1;具体地,取出存储的8个寄存器的第iBSLs位,并将其复制到对应寄存器的每一位得到将和([1k,0m]A)p作为位切片形式的哈达玛乘法的输入,得到向量其中,1k表示元素全为1的k维行向量;0m表示m维零向量,右上角标p表示矩阵的行向量为位切片形式的向量;
(3.4)分别计算与位切片形式的矩阵n×k矩阵的乘积,得到非位切片形式的k维向量群t2ii,1≤ii≤l1;与每一列的乘积涉及到位切片形式的哈达玛乘法以及对应的累加操作;具体地,与每一列的位切片形式的哈达玛乘法的结果,存储在8个n位寄存器里,将8个寄存器分别向左移n/2位并与其左移前的值异或,再向左移n/4位后与这次左移前的值异或,以此类推,直至向左移1位与最后一次左移前的值异或;此时得到的左移异或结果的每一个位值位于对应8个寄存器的最高位;
(3.5)将l1个t2ii串联作为线性映射fBSLs的输入,得到非位切片形式的掩码域内kl2维向量t3BSLs;将t3BSLs分割为l2个k维向量,并分别串联一个m维零向量,得到l2个n维向量t4jj;再转换为位切片形式得到
其中,位切片形式的哈达玛乘法,包括以下子步骤:
(b)选取8个寄存器RJH,将其值清0;
(c)设定IH=0;
(d)设定JH=0;
(f)更新JH=JH+1;如果JH<8,则跳转至步骤(e),否则继续步骤(g);
3.根据权利要求2所述基于线性码掩码和位切片技术的抗旁路攻击的防御方法,其特征在于,域内向量q转换为域内位切片形式向量qp,具体为:n维向量q包括n个元素,每个元素包括8个位值,将所有位值存入8个寄存器,得到向量qp;其中,8个寄存器对应存储8个位值,每个寄存器存储特定位的值;n位寄存器的最高位至最低位依次对应存储向量q中排序1~n的元素的位值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210047078.3A CN114048472B (zh) | 2022-01-17 | 2022-01-17 | 基于线性码掩码和位切片技术的抗旁路攻击的防御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210047078.3A CN114048472B (zh) | 2022-01-17 | 2022-01-17 | 基于线性码掩码和位切片技术的抗旁路攻击的防御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114048472A CN114048472A (zh) | 2022-02-15 |
CN114048472B true CN114048472B (zh) | 2022-06-24 |
Family
ID=80196603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210047078.3A Expired - Fee Related CN114048472B (zh) | 2022-01-17 | 2022-01-17 | 基于线性码掩码和位切片技术的抗旁路攻击的防御方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114048472B (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9423820B2 (en) * | 2013-07-31 | 2016-08-23 | Fairchild Semiconductor Corporation | Complimentary bit slicing side channel attack defense |
CN106059746B (zh) * | 2016-07-22 | 2019-04-12 | 武汉大学 | 一种抗任意阶侧信道攻击的掩码防护方法及系统 |
CN106452789B (zh) * | 2016-11-02 | 2019-06-18 | 北京宏思电子技术有限责任公司 | 一种多方位防侧信道攻击的签名方法 |
EP3422176A1 (en) * | 2017-06-28 | 2019-01-02 | Gemalto Sa | Method for securing a cryptographic process with sbox against high-order side-channel attacks |
CN107294700B (zh) * | 2017-08-22 | 2019-11-08 | 兆讯恒达微电子技术(北京)有限公司 | 防御旁路攻击的与逻辑电路装置及处理方法 |
US11216594B2 (en) * | 2019-06-28 | 2022-01-04 | Intel Corporation | Countermeasures against hardware side-channel attacks on cryptographic operations |
US11507699B2 (en) * | 2019-09-27 | 2022-11-22 | Intel Corporation | Processor with private pipeline |
CN111931176B (zh) * | 2020-09-29 | 2021-01-22 | 网御安全技术(深圳)有限公司 | 防御侧信道攻击的方法、装置及可读存储介质 |
CN112929161B (zh) * | 2021-01-22 | 2022-01-07 | 西安电子科技大学 | 即插即用型参考系无关的双场量子密钥分发协议实现方法 |
-
2022
- 2022-01-17 CN CN202210047078.3A patent/CN114048472B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN114048472A (zh) | 2022-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dubrova et al. | Breaking a fifth-order masked implementation of crystals-kyber by copy-paste | |
Golić et al. | Multiplicative masking and power analysis of AES | |
CN109791517B (zh) | 保护并行乘法运算免受外部监测攻击 | |
KR100610367B1 (ko) | 정보 누출 공격을 방지하기 위한 갈로아 필드 상의 곱셈방법 및 장치, 역변환 장치 그리고 aes 바이트 치환연산장치 | |
EP2195761B1 (en) | Substitution table masking for cryptographic processes | |
CN104094553B (zh) | 防侧信道攻击的加密方法和装置 | |
KR20180002069A (ko) | 부채널 분석에 대응한 보호 방법 및 장치 | |
CN110071794B (zh) | 一种基于aes算法的信息加密方法、系统及相关组件 | |
CN1989726A (zh) | 用于执行加密计算的方法和装置 | |
JP2015191106A (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
US20110170685A1 (en) | Countermeasure method and devices for asymmetric encryption with signature scheme | |
CN101674180A (zh) | 一种伪随机序列产生方法及加密方法 | |
CN106330424A (zh) | 基于sm3算法的密码模块的防攻击方法及装置 | |
CN114048472B (zh) | 基于线性码掩码和位切片技术的抗旁路攻击的防御方法 | |
CN109936437B (zh) | 一种基于d+1阶掩码的抗功耗攻击方法 | |
CN109543467A (zh) | 一种具有多个硬件ip核的芯片防护方法 | |
Fukushima et al. | Fault injection attack on Salsa20 and ChaCha and a lightweight countermeasure | |
Song et al. | Secure and fast implementation of ARX-Based block ciphers using ASIMD instructions in ARMv8 platforms | |
CN107231229B (zh) | 一种用于保护sm4密码芯片的低熵掩码泄露防护方法及其实现系统 | |
US10341089B2 (en) | High-speed AES with transformed keys | |
Matsumoto et al. | CryptMT stream cipher version 3 | |
CN109714152B (zh) | 基于大型仿射编码的白盒aes加密方法 | |
RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки | |
KR100350207B1 (ko) | 디지털 데이터의 엘-비트 입력 블록들을 엘-비트 출력비트들로 암호 변환하는 방법 | |
Krömer et al. | An acceleration of quasigroup operations by residue arithmetic |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220624 |