-
公开(公告)号:CN104836670A
公开(公告)日:2015-08-12
申请号:CN201510239377.7
申请日:2015-05-12
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
CPC classification number: H04L9/002 , H04L9/0825 , H04L9/3247
Abstract: 本发明公开了一种基于随机数未知的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误,使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;2)以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果s分别与其进行相减,得到一方程组,即格攻击模型;3)对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入计算对应签名结果s的等式,得到一私钥dA,如果该私钥dA为正确私钥,则判断该SM2签名算法不安全。本发明能够更有效、全面分析SM2签名算法抵抗攻击的安全能力。
-
公开(公告)号:CN104852805B
公开(公告)日:2019-03-22
申请号:CN201510236365.9
申请日:2015-05-11
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种抵抗基于格的错误攻击的SM2签名算法防护方法。本方法为:1)签名者A对输入的待签名消息M进行哈希运算,并将运算结果ZA与消息M联合得到;2)对进行杂凑压缩,得到一预处理结果e;3)产生两随机数k,w;分别计算随机数k和基点G的标量乘kG,随机数w与公钥PA的标量乘wPA,然后相加得到一椭圆曲线点Q;4)计算e与点Q的坐标x1模n加得到一r值,5)代入私钥dA、k、w、r,得到签名结果s。使用本发明提出的新方法能够更有效、全面抵抗对SM2签名算法的格攻击。
-
公开(公告)号:CN104836808A
公开(公告)日:2015-08-12
申请号:CN201510239497.7
申请日:2015-05-12
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
CPC classification number: H04L9/3252 , H04L63/08
Abstract: 本发明公开了一种基于改进差分错误攻击的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法对消息M进行签名,当生成的随机数k和SM2签名算法的椭圆曲线基点G的标量乘迭代进行到第i轮时注入错误,使第i轮中间值y坐标的部分比特值改变;2)利用步骤1)得到的签名结果,以及验签公钥PA和消息M杂凑值e恢复出随机数k的连续比特值;3)利用所述连续比特值和错误签名结果构造HNP问题,采用格攻击分析出私钥,然后根据该私钥判定当前SM2签名算法是否安全。本发明能够更简便的注入错误,更全面分析SM2签名算法抵抗攻击的安全能力。
-
公开(公告)号:CN104836808B
公开(公告)日:2017-12-15
申请号:CN201510239497.7
申请日:2015-05-12
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种基于改进差分错误攻击的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法对消息M进行签名,当生成的随机数k和SM2签名算法的椭圆曲线基点G的标量乘迭代进行到第i轮时注入错误,使第i轮中间值y坐标的部分比特值改变;2)利用步骤1)得到的签名结果,以及验签公钥PA和消息M杂凑值e恢复出随机数k的连续比特值;3)利用所述连续比特值和错误签名结果构造HNP问题,采用格攻击分析出私钥,然后根据该私钥判定当前SM2签名算法是否安全。本发明能够更简便的注入错误,更全面分析SM2签名算法抵抗攻击的安全能力。
-
公开(公告)号:CN104852805A
公开(公告)日:2015-08-19
申请号:CN201510236365.9
申请日:2015-05-11
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种抵抗基于格的错误攻击的SM2签名算法防护方法。本方法为:1)签名者A对输入的待签名消息M进行哈希运算,并将运算结果ZA与消息M联合得到;2)对进行杂凑压缩,得到一预处理结果e;3)产生两随机数k,w;分别计算随机数k和基点G的标量乘kG,随机数w与公钥PA的标量乘wPA,然后相加得到一椭圆曲线点Q;4)计算e与点Q的坐标x1模n加得到一r值,5)代入私钥dA、k、w、r,得到签名结果s。使用本发明提出的新方法能够更有效、全面抵抗对SM2签名算法的格攻击。
-
公开(公告)号:CN104836670B
公开(公告)日:2017-12-08
申请号:CN201510239377.7
申请日:2015-05-12
Applicant: 中国科学院软件研究所 , 北京中电华大电子设计有限责任公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种基于随机数未知的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误,使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;2)以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果s分别与其进行相减,得到一方程组,即格攻击模型;3)对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入计算对应签名结果s的等式,得到一私钥dA,如果该私钥dA为正确私钥,则判断该SM2签名算法不安全。本发明能够更有效、全面分析SM2签名算法抵抗攻击的安全能力。
-
公开(公告)号:CN104796250B
公开(公告)日:2018-05-25
申请号:CN201510168212.5
申请日:2015-04-11
Applicant: 成都信息工程学院 , 成都芯安尤里卡信息科技有限公司 , 国家密码管理局商用密码检测中心 , 北京中电华大电子设计有限责任公司
IPC: H04L9/06
Abstract: 本发明公开了一种针对RSA密码算法中幂剩余计算M‑ary实现时乘法输出的侧信道能量分析攻击的方法,其核心在于幂剩余计算用M‑ary实现时,以乘法输出作为攻击对象实施CPA攻击。包括以下步骤:(1)采集信号,建立采样矩阵;(2)选择乘法输出作为攻击对象;(3)确定相关性模型;(4)猜测轮指数值,计算出中间值矩阵;(5)计算仿真能量消耗矩阵;(6)计算(1)和(5)所确定矩阵之间的线性相关系数,攻击出正确的轮指数。(7)重复(4)至(6),攻击得到所有正确的轮指数,串接后得到完整指数。本发明的方法给出了一种新的M‑ary侧信道攻击方法,增强了RSA密码算法分析攻击的灵活性、有效性和成功率。
-
公开(公告)号:CN104796250A
公开(公告)日:2015-07-22
申请号:CN201510168212.5
申请日:2015-04-11
Applicant: 成都信息工程学院 , 成都芯安尤里卡信息科技有限公司 , 国家密码管理局商用密码检测中心 , 北京中电华大电子设计有限责任公司
IPC: H04L9/06
Abstract: 本发明公开了一种针对RSA密码算法中幂剩余计算M-ary实现时乘法输出的侧信道能量分析攻击的方法,其核心在于幂剩余计算用M-ary实现时,以乘法输出作为攻击对象实施CPA攻击。包括以下步骤:(1)采集信号,建立采样矩阵;(2)选择乘法输出作为攻击对象;(3)确定相关性模型;(4)猜测轮指数值,计算出中间值矩阵;(5)计算仿真能量消耗矩阵;(6)计算(1)和(5)所确定矩阵之间的线性相关系数,攻击出正确的轮指数。(7)重复(4)至(6),攻击得到所有正确的轮指数,串接后得到完整指数。本发明的方法给出了一种新的M-ary侧信道攻击方法,增强了RSA密码算法分析攻击的灵活性、有效性和成功率。
-
公开(公告)号:CN104836666B
公开(公告)日:2019-04-12
申请号:CN201510186060.1
申请日:2015-04-20
Applicant: 成都信息工程学院 , 成都芯安尤里卡信息科技有限公司 , 国家密码管理局商用密码检测中心
Abstract: 本发明公开了一种针对SM2算法中解密算法进行能量分析的方法。该方法以SM2算法中的解密算法运用私钥d进行标量乘法为攻击点,根据不同的密文C输入,得到不同的中间结果,采用侧信道能量攻击方法逐次攻击出私钥的单个bit,一直到恢复出整个私钥,恢复出私钥的所有bit后,可以通过解密算法进行验证,验证其攻击的正确性,通过这种方法攻击提高了攻击的灵活性、有效性、正确性。
-
公开(公告)号:CN106161001B
公开(公告)日:2019-03-26
申请号:CN201510149096.2
申请日:2015-03-31
Applicant: 上海复旦微电子集团股份有限公司 , 国家密码管理局商用密码检测中心
IPC: H04L9/06
Abstract: 本发明提供了一种HMAC‑SM3密码算法的侧信道能量分析方法及装置。所述方法包括:分析获得第一密钥数据Kin的值;分析获得第二密钥数据Kout的值;根据所获得的第一密钥数据Kin的值以及第二密钥数据Kout的值,生成消息摘要。其中,分析获得第一密钥数据Kin的值包括:向所述密码模块输入消息组M;采集所述密码模块对所输入的每条消息进行处理的过程中所产生的能量消耗信息;在j=1时,先分别选择和作为分析对象,分别获得变量B1、F1的值;再分别选择和作为分析对象,分别获得变量C1、G1的值。应用所述方法获得第一密钥数据,可以有效提高破解的成功率。
-
-
-
-
-
-
-
-
-