-
公开(公告)号:CN106161005B
公开(公告)日:2019-05-07
申请号:CN201510149151.8
申请日:2015-03-31
Applicant: 北京南瑞智芯微电子科技有限公司 , 国家电网公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种分组加密算法防攻击的掩码方法和装置,其中该方法包括:将引入第一掩码M1的明文作为第1轮运算的输入值,并执行第1轮运算;在执行第i轮运算之前,将获取的第i‑1轮的运算结果与掩码Mi进行异或运算,再与抵消掩码Mi‑1’进行异或运算,将两次异或运算后的结果作为第i轮运算的输入值;在执行完第n轮运算之后,将第n轮的运算结果与抵消掩码Mn’进行异或运算,并将异或运算结果作为分组加密算法的密文输出;抵消掩码Mn’用于抵消第n轮的运算结果中引入的所有掩码。该方法采用了多值掩码的方法,每轮运算中有互相不同的掩码参与运算,每个运算位置保证了不同掩码,可以避免对相同掩码的高阶攻击,使加密算法更安全可靠。
-
公开(公告)号:CN106156614B
公开(公告)日:2018-12-28
申请号:CN201510133390.4
申请日:2015-03-25
Applicant: 北京南瑞智芯微电子科技有限公司 , 国家电网公司 , 国家密码管理局商用密码检测中心
IPC: G06F21/55
Abstract: 本发明公开了一种抵抗故障攻击的防护方法和装置,其中,该方法包括:将第一运算结果存储于第一存储器,将第二运算结果存储于第二存储器;读取第一存储器中的第一运算结果,并将第一运算结果存储于第三存储器;读取第二存储器中的第二运算结果,并将第二运算结果存储于第四存储器;判断存储有第一运算结果的存储器中的第一运算结果与存储有第二运算结果的存储器中的第二运算结果是否相同,当判断结果为第一运算结果与第二运算结果均相同时,输出运算结果。该方法采用多级存储的方式存储运算结果,并分别进行多次比较判断,可以有效抵抗多点的故障攻击,提高算法的安全性。
-
公开(公告)号:CN106161005A
公开(公告)日:2016-11-23
申请号:CN201510149151.8
申请日:2015-03-31
Applicant: 北京南瑞智芯微电子科技有限公司 , 国家电网公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种分组加密算法防攻击的掩码方法和装置,其中该方法包括:将引入第一掩码M1的明文作为第1轮运算的输入值,并执行第1轮运算;在执行第i轮运算之前,将获取的第i-1轮的运算结果与掩码Mi进行异或运算,再与抵消掩码Mi-1’进行异或运算,将两次异或运算后的结果作为第i轮运算的输入值;在执行完第n轮运算之后,将第n轮的运算结果与抵消掩码Mn’进行异或运算,并将异或运算结果作为分组加密算法的密文输出;抵消掩码Mn’用于抵消第n轮的运算结果中引入的所有掩码。该方法采用了多值掩码的方法,每轮运算中有互相不同的掩码参与运算,每个运算位置保证了不同掩码,可以避免对相同掩码的高阶攻击,使加密算法更安全可靠。
-
公开(公告)号:CN106156614A
公开(公告)日:2016-11-23
申请号:CN201510133390.4
申请日:2015-03-25
Applicant: 北京南瑞智芯微电子科技有限公司 , 国家电网公司 , 国家密码管理局商用密码检测中心
IPC: G06F21/55
Abstract: 本发明公开了一种抵抗故障攻击的防护方法和装置,其中,该方法包括:将第一运算结果存储于第一寄存器,将第二运算结果存储于第二寄存器;读取第一存储器中的第一运算结果,并将第一运算结果存储于第三存储器;读取第二存储器中的第二运算结果,并将第二运算结果存储于第四存储器;判断存储有第一运算结果的存储器中的第一运算结果与存储有第二运算结果的存储器中的第二运算结果是否相同,当判断结果为第一运算结果与第二运算结果均相同时,输出运算结果。该方法采用多级存储的方式存储运算结果,并分别进行多次比较判断,可以有效抵抗多点的故障攻击,提高算法的安全性。
-
公开(公告)号:CN105376046B
公开(公告)日:2018-08-17
申请号:CN201410384592.1
申请日:2014-08-06
Applicant: 国家电网公司 , 北京南瑞智芯微电子科技有限公司
CPC classification number: H04L9/00
Abstract: 本发明公开了一种分组密码防攻击的加解密的方法和装置,其中,该加密方法包括:接收需加密的明文P,对明文P进行两次正常加密运算,输出正确加密结果;在进行正常加密运算时,正常加密运算过程被一次或两次注入故障,输出错误加密结果;正确加密结果和错误加密结果输入F函数后,输出攻击者无法利用的无效结果。本发明实施例在进行第一次和/或第二次正常加密运算时被注入故障,并两次输出的加密结果输入到F函数中,减少了将两次正常加密运算结果进行比较的步骤,最后由F函数输出攻击者无法利用的无效结果,有效的抵抗了对分组密码算法的双点攻击,提高了分组密码算法加密过程的安全性。
-
公开(公告)号:CN104639312B
公开(公告)日:2017-12-29
申请号:CN201310552788.2
申请日:2013-11-08
Applicant: 国家电网公司 , 北京南瑞智芯微电子科技有限公司
IPC: H04L9/06
Abstract: 本发明公开了一种DES算法抗能量攻击的方法及装置,其中,该方法包括:将第1轮子密钥与第一掩码进行异或运算;在原第1轮S盒基础上、根据第一掩码确定第1轮修正S盒,且取代原第1轮S盒;第1轮输入数据的后半部分与第二掩码进行异或运算,异或运算结果为第1轮输出数据的前半部分;第2至16轮以相同或不同的修正S盒取代原S盒,每轮根据轮密钥带的掩码和轮输入数据的后半部分带的掩码确定修正S盒,其余算法流程与第1轮算法流程相同;将第16轮的输出执行逆初始置换后的结果与修正掩码进行异或运算,异或运算的结果为输出的密文。通过本发明提供的DES算法抗能量攻击的方法,可以有效抵抗能量攻击。
-
公开(公告)号:CN103634102B
公开(公告)日:2017-11-07
申请号:CN201310690055.5
申请日:2013-12-16
Applicant: 国家电网公司 , 中国电力科学研究院 , 国网电力科学研究院 , 北京南瑞智芯微电子科技有限公司 , 国网浙江省电力公司
Abstract: 本发明提供一种侧信道攻击和故障攻击的防护方法,该方法包括以下步骤:I、将分组密码算法的运算划分为若干级流水线;II、随机选择两级流水线输入真实的明文,其他各级的输入为随机数;III、进行运算,当运算结束,将两个真实数据比较运算结果是否一致。该方法既能抵抗侧信道攻击,又能抵抗故障攻击,安全性强,而且执行效率高。
-
公开(公告)号:CN104639502A
公开(公告)日:2015-05-20
申请号:CN201310552684.1
申请日:2013-11-08
Applicant: 国家电网公司 , 北京南瑞智芯微电子科技有限公司
CPC classification number: H04L9/0656 , H04L9/28 , H04L63/08
Abstract: 本发明公开了一种SM4算法抗能量攻击的掩码方法和装置,其中,该方法包括:获取第一随机掩码,且第一随机掩码与第1轮密钥进行异或运算;在原第1轮S盒基础上、根据第一随机掩码确定第1轮修正S盒,第1轮修正S盒取代原第1轮S盒;根据第一随机掩码确定第一修正掩码,第一修正掩码与L线性移位的输出进行异或运算;第2至32轮的算法流程与第1轮算法流程相同,每轮引入相同或不同的随机掩码,且确定相应的修正S盒与修正掩码。通过每轮引入相同或不同的掩码,使易受攻击的轮运算中间结果所带的掩码值不同,能够有效抵抗能量攻击。
-
公开(公告)号:CN104639502B
公开(公告)日:2017-12-05
申请号:CN201310552684.1
申请日:2013-11-08
Applicant: 国家电网公司 , 北京南瑞智芯微电子科技有限公司
Abstract: 本发明公开了一种SM4算法抗能量攻击的掩码方法和装置,其中,该方法包括:获取第一随机掩码,且第一随机掩码与第1轮密钥进行异或运算;在原第1轮S盒基础上、根据第一随机掩码确定第1轮修正S盒,第1轮修正S盒取代原第1轮S盒;根据第一随机掩码确定第一修正掩码,第一修正掩码与L线性移位的输出进行异或运算;第2至32轮的算法流程与第1轮算法流程相同,每轮引入相同或不同的随机掩码,且确定相应的修正S盒与修正掩码。通过每轮引入相同或不同的掩码,使易受攻击的轮运算中间结果所带的掩码值不同,能够有效抵抗能量攻击。
-
公开(公告)号:CN105376046A
公开(公告)日:2016-03-02
申请号:CN201410384592.1
申请日:2014-08-06
Applicant: 国家电网公司 , 北京南瑞智芯微电子科技有限公司
CPC classification number: H04L9/00
Abstract: 本发明公开了一种分组密码防攻击的加解密的方法和装置,其中,该加密方法包括:接收需加密的明文P,对明文P进行两次正常加密运算,输出正确加密结果;在进行正常加密运算时,正常加密运算过程被一次或两次注入故障,输出错误加密结果;正确加密结果和错误加密结果输入F函数后,输出攻击者无法利用的无效结果。本发明实施例在进行第一次和/或第二次正常加密运算时被注入故障,并两次输出的加密结果输入到F函数中,减少了将两次正常加密运算结果进行比较的步骤,最后由F函数输出攻击者无法利用的无效结果,有效的抵抗了对分组密码算法的双点攻击,提高了分组密码算法加密过程的安全性。
-
-
-
-
-
-
-
-
-