CN108833120A - 一种crt-rsa选择明文联合攻击新方法及系统 - Google Patents
一种crt-rsa选择明文联合攻击新方法及系统 Download PDFInfo
- Publication number
- CN108833120A CN108833120A CN201810990156.7A CN201810990156A CN108833120A CN 108833120 A CN108833120 A CN 108833120A CN 201810990156 A CN201810990156 A CN 201810990156A CN 108833120 A CN108833120 A CN 108833120A
- Authority
- CN
- China
- Prior art keywords
- power consumption
- rsa
- modular multiplication
- crt
- classification
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3249—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
本发明属于信息安全领域,公开了一种CRT‑RSA选择明文联合攻击新方法及系统,攻击过程中以CRT‑RSA算法的dp和dq为攻击目标,再推导私钥参数p,q;明文碰撞攻击过程中,选择多组明文对,进行叠加出来,并对模乘功耗差值做二次处理作为碰撞分类集;攻击过程中,结合CRT‑RSA模幂运算过程中存取数功耗幂指数汉明重量信息泄露,进行模乘功耗分段,实施分段选择明文碰撞攻击。本发明结合CRT‑RSA模幂运算过程中其他信息泄露(如存取数功耗幂指数汉明重量信息泄露)问题,进行模乘功耗分段,实施分段选择明文碰撞攻击,可以避免局部碰撞攻击出错,从而提高攻击准确率,最终推导私钥参数p,q,恢复私钥d值。
Description
技术领域
本发明属于信息安全领域,尤其涉及一种CRT-RSA选择明文联合攻击新方 法及系统。
背景技术
目前,业内常用的现有技术是这样的:
大多数智能卡使用RSA密码算法实现数字签名认证功能,但RSA加密速度最 快的情况也比DES慢100倍,无论软件还是硬件实现,速度一直是RSA的缺陷。自 1982年,两位比利时学者(Quisquate&Couvreur)基于中国剩余定理(Chinese Remainder Theorem CRT)提出了一种RSA的变型算法,通过CRT的引入,可 以用来减小求模的运算量,缩小算法所需存储表的空间,同时还减小了算法中 乘法的运算执行速度,因此CRT-RSA被广泛应用于智能卡和嵌入式设备。
在标准RSA密码算法中,RSA模数N是两个大素数p和q的乘积,N=pq,通常p和 q的比特位要求相等,一般为512比特或者1024比特,且满足公钥指 数e和d满足:
其中为N的欧拉函数,即
CRT-RSA密码体制是RSA的一个变形,即解密时解密指数d用私钥CRT指数dp和 dq代替,需要预先计算dp、dq和qivn,如算法1。
算法中第3步引入中国剩余定理的操作,虽然CRT-RSA需要两次模幂操作, 但参与指数运算的dp和dq是传统非CRT-RSA算法中私钥d的长度的一半,并且两模 乘可以并行运算,所以CRT-RSA大约比普通RSA的快4倍。
自从差分功耗分析(Differential PowerAnalysis,DPA)攻击技术的问世, 引起人们对侧信道攻击(Side Channel Attack,SCA)技术的极大关注。研究者 提出了针对RSA-CRT算法的侧信道攻击方法。
而选择明文侧信道攻击一直是RSA算法常用的侧信道攻击方法,通过选定 特定的明文对,通过功耗差分值寻找碰撞,而获取幂指数。
综上所述,现有技术存在的问题是:
(1)目前针对CRT-RSA算法的侧信道攻击方法,集中在直接对素数p,q相关 功耗信息泄露进行攻击,已经有针对这些侧信道攻击方法相应的防御方法,因 此目前根据信息泄露直接攻击对素数p,q是无法有效攻击。
另外选择明文侧信道攻击中,采用明文对功耗之间差分作为碰撞分类数据 集,进行分类。但是在真实环境下,由于噪声和对齐等干扰,没法有效选寻找 功耗碰撞问题,从而影响攻击效率。虽然采用机器学习方法可以一定程度提高 分类结果,但是碰撞分类关键是分类数据集的选取,是进行高效分类的基础。
并从查阅文献来看,目前没有针对CRT-RSA通过间接攻击密钥参数dp和dq, 再推导出素数p,q的侧信道攻击方法,并且也没有多点信息泄露相结合,以明文 对功耗差值的二次处理作为分类数据集的选择明文侧信道攻击方法。
基于以上问题考虑,本发明提出一种CRT-RSA选择明文联合攻击方法。
解决上述技术问题的难度和意义:
(1)针对CRT-RSA密码算法,本发明创新提出以CRT-RSA算法的dp和dq为 攻击目标的选择明文碰撞攻击,并对模乘功耗差值做二次处理作为碰撞分类集, 而不是直接使用差值作为碰撞分类集,降低噪声影响,提高模乘碰撞分类的准 确性;(2)结合CRT-RSA模幂运算过程中其他信息泄露(如存取数功耗幂指数 汉明重量信息泄露)问题,进行模乘功耗分段,实施分段选择明文碰撞攻击, 可以避免局部碰撞攻击出错,从而提高攻击准确率。(3)本发明提出的联合攻 击方案,只需要6组明文对M和N-M独立运行的CRT-RSA密码系统,取得12条 功耗波形数据下,获得准确的1024比特密钥信息。在实现简单的基础上,攻击 效应远远高于现有其他方案。(4)从原理分析不难看出,本发明提出的攻击方 案,不仅仅试用于基于蒙哥马利二元模幂算法的CRT-RSA系统,也试用于目前 大部分二元模幂算法的RSA系统。
发明内容
针对现有技术存在的问题,本发明提供了一种CRT-RSA选择明文联合攻击 新方法及系统。
本发明是这样实现的,一种CRT-RSA选择明文联合攻击新方法,包括:
攻击过程中以CRT-RSA算法的dp和dq为攻击目标,再推导私钥参数p,q;
明文碰撞攻击过程中,选择多组明文对,进行叠加出来,并对模乘功耗差 值做二次处理作为碰撞分类集;
攻击过程中,结合CRT-RSA模幂运算过程中存取数功耗幂指数汉明重量信 息泄露,进行模乘功耗分段,实施分段选择明文碰撞攻击。
进一步,所述CRT-RSA选择明文联合攻击新方法具体包括:
步骤一,计算n组特定明文对(M,M′):
根据CRT-RSA公钥参数(e,N),已知公钥N为1024比特或者2048比特,公钥参 数e值取值为216+1或者216-1;随机生成n条1024比特或者2048比特的明文Mi且满足M′i<N,然后计算M′i=N-Mi,其中1≤i≤n;
步骤二,功耗采集:
CRT-RSA算法e,p,q,dp,dq,qinv,N,密钥参数不变,输入每条明文,采集r条 功耗曲线,采集2nr条功耗曲线,其中e和N是RSA算法公钥参数,p,q,dp,dq,qinv, 为CRT-RSA的私钥参数;p和q是512比特或者1024比特大素数;
步骤三,功耗曲线截取重组预处理:
对采集的n组明文对(M,M′),总共2*n*r功耗曲线进行滤波,对齐处理,并 进行模乘,以及模乘与模乘之间功耗进行截取出来,构造新的模乘功耗曲线矩 阵;
步骤四,明文对模乘功耗差值二次处理;
步骤五,模乘功耗分类处理:分类方法采用阈值分类或聚类分类,分类簇 集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
步骤六,存取数功耗分类处理:
分类方法采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗;
步骤七,幂指数字节汉明重量计算:利用步骤六的分类簇集G,统计每字节 幂指数产生的模乘个数,即幂指数每字节汉明重量:
步骤八,分段幂指数攻击,推断dp:
根据步骤五的分类簇集Y,步骤七汉明重量矩阵HW,根据每字节的汉明重量, 以及模乘分类Y,采用碰撞攻击幂指数攻击算法,恢复出dp;
步骤九,计算p和q的值
RSA-CRT算法存在dp≡d(mod p-1),edp-1=k(p-1),dp<p-1,得:
通过公式可知,步骤八可已知dp,而RSA公钥参数e为公开参数,而k值 小于公钥参数e值,通过穷举k值,计算出私钥参数p值,然后计算出私钥参 数q值,即:q=N/p;
步骤十、恢复私钥d值。
进一步,步骤三,功耗曲线截取重组预处理中,具体包括:
1)首先提取模幂功耗特征,由x1个模乘运构成,每个模乘则假设 由l1个功耗点组成;第k组明文M和N-M,r条功耗曲线,提取的模乘功耗特征矩 阵:
其中1≤k≤n,r为每个明文采集功耗曲线条数,表示输入明文M的第i 条曲线的第j个模乘的功耗,
下式子所示;
表示输入明文N-M的第i条曲线的第j个模乘的功耗,
下式子所示;
2)提取模幂运算模乘与模乘之间的功耗特征矩阵
进一步,步骤四,明文对模乘功耗差值二次处理中,对步骤二模乘 矩阵和的差值二次处理,1≤k≤n,二次处理方法选择:差值构造的梯形求 面积、差值求和、差值求方差、差值与某一特定模乘差值求欧式距离;
具体包括:
的行向量相加和矩阵的行向量相加,然后对和做差分;
对差分的每个模乘功耗值进行二次处理,生成新的分类数据集s;
二处处理方法为:差值构造的梯形求面积、差值求和、差值求方差、差值 与某一特定模乘差值求欧式距离;
步骤五具体包括:
对步骤四中数据集s进行分类处理,分类数目为2,一类为碰撞模乘,一类 为非碰撞模乘;分类方法采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
步骤六存取数功耗分类处理中,对步骤三中数据集进行分类,分类数目 为2,一类为存取功耗,一类为字节分段功耗。
进一步,步骤九计算p和q的值中,根据步骤八获得的dp,知k∈[1,e),穷举k值, 得到p值,若p值为模数N的因子,则恢复出p,求解q=N/p;
步骤十,恢复私钥d值中,对步骤九获得的p,q,已知e,N,然后根据RSA 私钥计算公式恢复私钥d。
本发明另一目的在于提供一种计算机程序,所述计算机程序运行所述的 CRT-RSA选择明文联合攻击新方法。
本发明另一目的在于提供一种终端,所述终端至少搭载实现所述CRT-RSA 选择明文联合攻击新方法的控制器。
本发明另一目的在于提供一种计算机可读存储介质,包括指令,当其在计 算机上运行时,使得计算机执行所述的CRT-RSA选择明文联合攻击新方法。
本发明另一目的在于提供一种实现所述的CRT-RSA选择明文联合攻击新方 法的CRT-RSA选择明文联合攻击系统,所述CRT-RSA选择明文联合攻击系统 包括:
特定明文对计算模块,用于计算n组特定明文对(M,M′),根据CRT-RSA公钥 参数(e,N),已知公钥N为1024比特或者2048比特,随机生成n条1024比特或者 2048比特的明文Mi且满足M′i<N,然后计算M′i=N-Mi,其中1≤i≤n;
功耗采集模块,用于CRT-RSA算法p,q,dp,dq,qinv,N,密钥参数不变,输入每 条明文,采集r条功耗曲线,采集2nr条功耗曲线;
功耗曲线截取重组预处理模块,对采集的n组明文对(M,M′),总共2*n*r功 耗曲线进行滤波,对齐处理,并进行模乘,以及模乘与模乘之间功耗进行截取 出来,构造新的模乘功耗曲线矩阵;
明文对模乘功耗差值二次处理模块,明文对模乘功耗差值二次处 理;
模乘功耗分类处理模块,用于采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
存取数功耗分类处理模块,用于采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗;
幂指数字节汉明重量计算模块,利用步骤六的分类簇集G,统计每字节幂指 数产生的模乘个数,即幂指数每字节汉明重量:
HW=[hw1,hw2,…,hwv-1,hwv];
分段幂指数攻击推断模块,根据分类簇集Y,汉明重量矩阵HW,根据每字节 的汉明重量,以及模乘分类Y,采用碰撞攻击幂指数攻击算法,恢复出dp;
计算p和q的值模块,用于对RSA-CRT算法存在的dp≡d(mod p-1), edp-1=k(p-1),dp<p-1,得:
恢复私钥d值模块,用于对获得的p,q,已知e,N,然后根据RSA私钥计 算公式恢复私钥d。
本发明另一目的在于提供一种CRT-RSA选择明文联合攻击平台,所述 CRT-RSA选择明文联合攻击平台至少搭载所述的CRT-RSA选择明文联合攻击 系统
综上所述,本发明的优点及积极效果为:
本发明考虑没有针对CRT-RSA通过间接攻击密钥参数dp和dq,再推导出素数 p,q的侧信道攻击方法,并且也没有多点信息泄露相结合,以明文对功耗差值的 二次处理作为分类数据集的选择明文侧信道攻击方法,提出了一种CRT-RSA选 择明文联合攻击方法,以CRT-RSA算法的dp和dq为攻击目标,选择多组明文对, 进行叠加出来,并对模乘功耗差值做二次处理作为碰撞分类集,而不是直接使 用差值作为碰撞分类集,降低噪声影响,提高模乘碰撞分类的准确性;并结合CRT-RSA模幂运算过程中其他信息泄露(如存取数功耗幂指数汉明重量信息泄 露)问题,进行模乘功耗分段,实施分段选择明文碰撞攻击,可以避免局部碰 撞攻击出错,从而提高攻击准确率,最终推导私钥参数p,q,恢复私钥d值。本 发明提出的联合攻击方案,在智能IC卡真实环境下,只需要6组明文对M和N-M 独立运行的CRT-RSA密码系统,取得12条功耗波形数据下,获得准确的1024 比特密钥信息。在实现简单的基础上,攻击效应远远高于现有其他方案。
附图说明
图1是本发明实施例提供的CRT-RSA选择明文联合攻击新方法流程图。
图2是本发明实施例提供的CRT-RSA选择明文联合攻击系统示意图。
图3是本发明实施例提供的采集CRT-RSA运行功耗曲线图。
图4是本发明实施例提供的实施发明方案的攻击结果示意图。
图中:1、特定明文对计算模块;2、功耗采集模块;3、功耗曲线截取重组 预处理模块;4、明文对模乘功耗差值二次处理模块;5、模乘功耗分类处理模 块;6、存取数功耗分类处理模块;7、幂指数字节汉明重量计算模块;8、分 段幂指数攻击推断模块;9、计算p和q的值模块;10、恢复私钥d值模块。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例, 对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以 解释本发明,并不用于限定本发明。
目前针对CRT-RSA算法的侧信道攻击方法,集中在直接对素数p,q相关功耗信 息泄露进行攻击,已经有针对这些侧信道攻击方法相应的防御方法,因此目前 根据信息泄露直接攻击对素数p,q是无法有效攻击。
下面结合具体实施例对本发明作进一步描述。
如图1,本发明实施例提供的CRT-RSA选择明文联合攻击新方法,包括:
(1)计算n组特定明文对(M,M′)计算:
根据CRT-RSA公钥参数(e,N),已知公钥N为1024比特或者2048比特,随机生 成n条1024比特或者2048比特的明文Mi,且满足M′i<N,然后计算M′i=N-Mi, 其中1≤i≤n
(2)功耗采集
CRT-RSA算法p,q,dp,dq,qinv,N,密钥参数不变,输入每条明文,采集r条功 耗曲线,总共采集2nr条功耗曲线。
(3)功耗曲线截取重组预处理:
对采集的n组明文对(M,M′),总共2*n*r功耗曲线进行滤波,对齐等处理, 并进行模乘,以及模乘与模乘之间功耗进行截取出来,构造新的模乘功耗曲线 矩阵。
1)首先提取模幂功耗特征,由x1个模乘运构成,每个模乘则假设 由l1个功耗点组成。第k组明文M和N-M,r条功耗曲线,提取的模乘功耗特征矩 阵:
其中1≤k≤n,r为每个明文采集功耗曲线条数,表示输入明文M的第i 条曲线的第j个模乘的功耗,,如下式子所示。
表示输入明文N-M的第i条曲线的第j个模乘的功耗,如下式子所示。
2)提取模幂运算模乘与模乘之间的功耗特征矩阵
(4)明文对模乘功耗差值二次处理:
二模乘矩阵和的差值二次处理,1≤k≤n,二次处理方法可以选择: 差值构造的梯形求面积、差值求和、差值求方差、差值与某一特定模乘差值求 欧式距离,即模乘矩阵和1≤k≤n的二次处理;
例如二次处理方法:差分面积处理方法,计算数据集如算 法2。trapz()函数是多边形面积函数,abs()绝对值函数。
(5)模乘功耗分类处理:
对数据集s进行分类处理,分类数目为2,一类为碰撞模乘,一类为非碰撞 模乘。分类方法可以采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞。
(6)存取数功耗分类处理:
对数据集进行分类,分类数目为2,一类为存取功耗,一类为字节分段 功耗。分类方法可以采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗。
(7)幂指数字节汉明重量计算:
对分类簇集G,统计每字节幂指数产生的模乘个数,即幂指数每字节汉明重 量:
HW=[kw1,hw2,…,hwv-1,hwv]
(8)分段幂指数攻击,推断dp
根据分类簇集Y和汉明重量矩阵HW,采用分段碰撞攻击幂指数攻击算法,恢 复出dp
(9)计算p和q的值
已知dp≡d(mod p-1),因此edp-1=k(p-1),可得
然后知k∈[1,e),穷举k值,得到p值,若p值为模数N的因子,则然后恢复 出p,然后求解q=N/p
(10)恢复私钥d值
根据p,q,已知e,N,然后根据RSA私钥计算公式恢复私钥d。
如图2,本发明实施例提供的CRT-RSA选择明文联合攻击系统包括:
特定明文对计算模块1,用于计算n组特定明文对(M,M′),根据CRT-RSA公 钥参数(e,N),已知公钥N为1024比特或者2048比特,随机生成n条1024比特或 者2048比特的明文Mi且满足M′i<N,然后计算M′i=N-Mi,其中1≤i≤n;
功耗采集模块2,用于CRT-RSA算法p,q,dp,dq,qinv,N,密钥参数不变,输入 每条明文,采集r条功耗曲线,采集2nr条功耗曲线;
功耗曲线截取重组预处理模块3,对采集的n组明文对(M,M′),总共2*n*r 功耗曲线进行滤波,对齐处理,并进行模乘,以及模乘与模乘之间功耗进行截 取出来,构造新的模乘功耗曲线矩阵;
明文对模乘功耗差值二次处理模块4,明文对模乘功耗差值二次处 理;
模乘功耗分类处理模块5,用于采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
存取数功耗分类处理模块6,用于采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗;
幂指数字节汉明重量计算模块7,利用步骤六的分类簇集G,统计每字节幂 指数产生的模乘个数,即幂指数每字节汉明重量:
HW=[hw1,hw2,…,hwv-1,hwv];
分段幂指数攻击推断dp模块8,根据分类簇集Y,汉明重量矩阵HW,根据每 字节的汉明重量,以及模乘分类Y,采用碰撞攻击幂指数攻击算法,恢复出dp;
计算p和q的值模块9,用于对RSA-CRT算法存在的dp≡d(mod p-1), edp-1=k(p-1),dp<p-1,得:
恢复私钥d值模块10,用于对获得的p,q,已知e,N,然后根据RSA私钥 计算公式恢复私钥d。
证明部分(具体实施例/实验/仿真/学分析/)
本发明方案,在实验设备:
CRT-RSA智能卡,泰克数字采样示波器(Tektronix PPO4032)、PowerTrace 功耗设备,PC机。
实验CRT-RSA测试参数如下:
表1 CRT-RSA实验参数
根据表1实验参数,智能卡输入参数为p,q,N,dp,dq,dInv不变,随 机生成长度1024比特的100个不同明文M,计算100组M和N-M明文对,采用 示波器采样频率25MHz,每个明文采集1条功耗曲线,总共采集200条功耗曲线。 采集CRT-RSA运行功耗曲线如图3所示,主要分为两部分,模幂和 两部分。实施发明方案的攻击方法,攻击结果如图4所示,6组明文, 12条功耗曲线就可以100%获取正确的密钥参数。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组 合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程 序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指 令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可 以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算 机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向 另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、 计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或 无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据 中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用 介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。 所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、 或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
Claims (10)
1.一种CRT-RSA选择明文联合攻击新方法,其特征在于,所述CRT-RSA选择明文联合攻击新方法包括:
攻击过程中以CRT-RSA算法的dp和dq为攻击目标,再推导私钥参数p,q;
明文碰撞攻击过程中,选择多组明文对,进行叠加出来,并对模乘功耗差值做二次处理作为碰撞分类集;
攻击过程中,结合CRT-RSA模幂运算过程中存取数功耗幂指数汉明重量信息泄露,进行模乘功耗分段,实施分段选择明文碰撞攻击。
2.如权利要求1所述的CRT-RSA选择明文联合攻击新方法,其特征在于,所述CRT-RSA选择明文联合攻击新方法具体包括:
步骤一,计算n组特定明文对(M,M′):
根据CRT-RSA公钥参数(e,N),已知公钥N为1024比特或者2048比特,公钥参数e值取值为216+1或者216-1;随机生成n条1024比特或者2048比特的明文Mi且满足M′i<N,然后计算M′i=N-Mi,其中1≤i≤n;
步骤二,功耗采集:
CRT-RSA算法e,p,q,dp,dq,qinv,N,密钥参数不变,输入每条明文,采集r条功耗曲线,采集2nr条功耗曲线,其中e和N是RSA算法公钥参数,p,q,dp,dq,qinv,为CRT-RSA的私钥参数;p和q是512比特或者1024比特大素数;
步骤三,功耗曲线截取重组预处理:
对采集的n组明文对(M,M′),总共2*n*r功耗曲线进行滤波,对齐处理,并进行模乘,以及模乘与模乘之间功耗进行截取出来,构造新的模乘功耗曲线矩阵;
步骤四,明文对模乘功耗差值二次处理;
步骤五,模乘功耗分类处理:分类方法采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
步骤六,存取数功耗分类处理:
分类方法采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗;
步骤七,幂指数字节汉明重量计算:利用步骤六的分类簇集G,统计每字节幂指数产生的模乘个数,即幂指数每字节汉明重量:
HW=[hw1,hw2,…,hwv-1,hwv];
步骤八,分段幂指数攻击,推断dp:
根据步骤五的分类簇集Y,步骤七汉明重量矩阵HW,根据每字节的汉明重量,以及模乘分类Y,采用碰撞攻击幂指数攻击算法,恢复出dp;
步骤九,计算p和q的值
RSA-CRT算法存在dp≡d(mod p-1),edp-1=k(p-1),dp<p-1,得:
通过公式可知,步骤八可已知dp,而RSA公钥参数e为公开参数,而k值小于公钥参数e值,通过穷举k值,计算出私钥参数p值,然后计算出私钥参数q值,即:q=N/p;
步骤十、恢复私钥d值。
3.如权利要求2所述的CRT-RSA选择明文联合攻击新方法,其特征在于,
步骤三,功耗曲线截取重组预处理中,具体包括:
1)首先提取模幂功耗特征,由x1个模乘运构成,每个模乘则假设由l1个功耗点组成;第k组明文M和N-M,r条功耗曲线,提取的模乘功耗特征矩阵:
其中1≤k≤n,r为每个明文采集功耗曲线条数,表示输入明文M的第i条曲线的第j个模乘的功耗,
下式子所示;
表示输入明文N-M的第i条曲线的第j个模乘的功耗,
下式子所示;
2)提取模幂运算模乘与模乘之间的功耗特征矩阵
4.如权利要求2所述的CRT-RSA选择明文联合攻击新方法,其特征在于,
步骤四,明文对模乘功耗差值二次处理中,对步骤二模乘矩阵和的差值二次处理,1≤k≤n,二次处理方法选择:差值构造的梯形求面积、差值求和、差值求方差、差值与某一特定模乘差值求欧式距离;
具体包括:
的行向量相加和矩阵的行向量相加,然后对和做差分;
对差分的每个模乘功耗值进行二次处理,生成新的分类数据集S;
二处处理方法为:差值构造的梯形求面积、差值求和、差值求方差、差值与某一特定模乘差值求欧式距离;
步骤五具体包括:
对步骤四中数据集S进行分类处理,分类数目为2,一类为碰撞模乘,一类为非碰撞模乘;分类方法采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
步骤六存取数功耗分类处理中,对步骤三中数据集进行分类,分类数目为2,一类为存取功耗,一类为字节分段功耗。
5.如权利要求2所述的CRT-RSA选择明文联合攻击新方法,其特征在于,
步骤九计算p和q的值中,根据步骤八获得的dp,知k∈[1,e),穷举k值,得到p值,若p值为模数N的因子,则恢复出p,求解q=N/p;
步骤十,恢复私钥d值中,对步骤九获得的p,q,已知e,N,然后根据RSA私钥计算公式恢复私钥d。
6.一种计算机程序,其特征在于,所述计算机程序运行权利要求1~5任意一项所述的CRT-RSA选择明文联合攻击新方法。
7.一种终端,其特征在于,所述终端至少搭载实现权利要求1~5任意一项所述CRT-RSA选择明文联合攻击新方法的控制器。
8.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-5任意一项所述的CRT-RSA选择明文联合攻击新方法。
9.一种实现如权利要求1所述的CRT-RSA选择明文联合攻击新方法的CRT-RSA选择明文联合攻击系统,其特征在于,所述CRT-RSA选择明文联合攻击系统包括:
特定明文对计算模块,用于计算n组特定明文对(M,M′),根据CRT-RSA公钥参数(e,N),已知公钥N为1024比特或者2048比特,随机生成n条1024比特或者2048比特的明文Mi且满足M′i<N,然后计算M′i=N-Mi,其中1≤i≤n;
功耗采集模块,用于CRT-RSA算法p,q,dp,dq,qinv,N,密钥参数不变,输入每条明文,采集r条功耗曲线,采集2nr条功耗曲线;
功耗曲线截取重组预处理模块,对采集的n组明文对(M,M′),总共2*n*r功耗曲线进行滤波,对齐处理,并进行模乘,以及模乘与模乘之间功耗进行截取出来,构造新的模乘功耗曲线矩阵;
明文对模乘功耗差值二次处理模块,明文对模乘功耗差值二次处理;
模乘功耗分类处理模块,用于采用阈值分类或聚类分类,分类簇集Y为
yi=1表示模乘功耗碰撞,yi=2表示模乘功耗非碰撞;
存取数功耗分类处理模块,用于采用阈值分类,聚类分类。分类簇集G为
gi=1表示存取功耗,gi=2表示字节分段功耗;
幂指数字节汉明重量计算模块,利用步骤六的分类簇集G,统计每字节幂指数产生的模乘个数,即幂指数每字节汉明重量:
HW=[hw1,hw2,…,hwv-1,hwv];
分段幂指数攻击推断模块,根据分类簇集Y,汉明重量矩阵HW,根据每字节的汉明重量,以及模乘分类Y,采用碰撞攻击幂指数攻击算法,恢复出dp;
计算p和q的值模块,用于对RSA-CRT算法存在的dp=d(mod p-1),edp-1=k(p-1),dp<p-1,得:
恢复私钥d值模块,用于对获得的p,q,已知e,N,然后根据RSA私钥计算公式恢复私钥d。
10.一种CRT-RSA选择明文联合攻击平台,其特征在于,所述CRT-RSA选择明文联合攻击平台至少搭载权利要求9所述的CRT-RSA选择明文联合攻击系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810990156.7A CN108833120B (zh) | 2018-08-28 | 2018-08-28 | 一种crt-rsa选择明文联合攻击方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810990156.7A CN108833120B (zh) | 2018-08-28 | 2018-08-28 | 一种crt-rsa选择明文联合攻击方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108833120A true CN108833120A (zh) | 2018-11-16 |
CN108833120B CN108833120B (zh) | 2021-07-30 |
Family
ID=64151564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810990156.7A Active CN108833120B (zh) | 2018-08-28 | 2018-08-28 | 一种crt-rsa选择明文联合攻击方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108833120B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111351992A (zh) * | 2020-02-20 | 2020-06-30 | 南方电网科学研究院有限责任公司 | 一种基于电磁侧信道分析的芯片安全评估方法和相关装置 |
CN111817842A (zh) * | 2020-07-02 | 2020-10-23 | 中金金融认证中心有限公司 | 一种针对rsa-crt运算的能量分析攻击测试装置和方法 |
CN113965324A (zh) * | 2021-12-07 | 2022-01-21 | 国家信息技术安全研究中心 | 基于模板的rsa-crt实现模约减攻击的私钥恢复方法和系统 |
WO2023141933A1 (en) * | 2022-01-28 | 2023-08-03 | Nvidia Corporation | Techniques, devices, and instruction set architecture for efficient modular division and inversion |
US11985221B2 (en) | 2022-01-28 | 2024-05-14 | Nvidia Corporation | Efficient masking of secure data in ladder-type cryptographic computations |
US12003633B2 (en) | 2022-01-28 | 2024-06-04 | Nvidia Corporation | Techniques, devices, and instruction set architecture for balanced and secure ladder computations |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196964A (zh) * | 2006-12-07 | 2008-06-11 | 上海安创信息科技有限公司 | 一种抗旁路攻击算法及其芯片 |
US20090175441A1 (en) * | 2008-01-03 | 2009-07-09 | Spansion Llc | Method for protecting data against differntial fault analysis involved in rivest, shamir, and adleman cryptography using the chinese remainder theorem |
CN102468956A (zh) * | 2010-11-11 | 2012-05-23 | 上海华虹集成电路有限责任公司 | 适用于rsa模幂计算的方法 |
CN103067164A (zh) * | 2013-01-17 | 2013-04-24 | 北京昆腾微电子有限公司 | 使用rsa公开密钥加密算法的电子部件中的防攻击方法 |
CN103490885A (zh) * | 2013-10-14 | 2014-01-01 | 北京华大信安科技有限公司 | 采用中国剩余定理的rsa的计算方法及计算装置 |
CN103580869A (zh) * | 2013-11-06 | 2014-02-12 | 北京华大信安科技有限公司 | 一种crt-rsa签名方法及装置 |
-
2018
- 2018-08-28 CN CN201810990156.7A patent/CN108833120B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196964A (zh) * | 2006-12-07 | 2008-06-11 | 上海安创信息科技有限公司 | 一种抗旁路攻击算法及其芯片 |
US20090175441A1 (en) * | 2008-01-03 | 2009-07-09 | Spansion Llc | Method for protecting data against differntial fault analysis involved in rivest, shamir, and adleman cryptography using the chinese remainder theorem |
CN102468956A (zh) * | 2010-11-11 | 2012-05-23 | 上海华虹集成电路有限责任公司 | 适用于rsa模幂计算的方法 |
CN103067164A (zh) * | 2013-01-17 | 2013-04-24 | 北京昆腾微电子有限公司 | 使用rsa公开密钥加密算法的电子部件中的防攻击方法 |
CN103490885A (zh) * | 2013-10-14 | 2014-01-01 | 北京华大信安科技有限公司 | 采用中国剩余定理的rsa的计算方法及计算装置 |
CN103580869A (zh) * | 2013-11-06 | 2014-02-12 | 北京华大信安科技有限公司 | 一种crt-rsa签名方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111351992A (zh) * | 2020-02-20 | 2020-06-30 | 南方电网科学研究院有限责任公司 | 一种基于电磁侧信道分析的芯片安全评估方法和相关装置 |
CN111351992B (zh) * | 2020-02-20 | 2022-08-02 | 南方电网科学研究院有限责任公司 | 一种基于电磁侧信道分析的芯片安全评估方法和相关装置 |
CN111817842A (zh) * | 2020-07-02 | 2020-10-23 | 中金金融认证中心有限公司 | 一种针对rsa-crt运算的能量分析攻击测试装置和方法 |
CN111817842B (zh) * | 2020-07-02 | 2024-02-23 | 中金金融认证中心有限公司 | 一种针对rsa-crt运算的能量分析攻击测试装置和方法 |
CN113965324A (zh) * | 2021-12-07 | 2022-01-21 | 国家信息技术安全研究中心 | 基于模板的rsa-crt实现模约减攻击的私钥恢复方法和系统 |
CN113965324B (zh) * | 2021-12-07 | 2022-04-19 | 国家信息技术安全研究中心 | 基于模板的rsa-crt实现模约减攻击的私钥恢复方法和系统 |
WO2023141933A1 (en) * | 2022-01-28 | 2023-08-03 | Nvidia Corporation | Techniques, devices, and instruction set architecture for efficient modular division and inversion |
US11954487B2 (en) | 2022-01-28 | 2024-04-09 | Nvidia Corporation | Techniques, devices, and instruction set architecture for efficient modular division and inversion |
US11985221B2 (en) | 2022-01-28 | 2024-05-14 | Nvidia Corporation | Efficient masking of secure data in ladder-type cryptographic computations |
US12003633B2 (en) | 2022-01-28 | 2024-06-04 | Nvidia Corporation | Techniques, devices, and instruction set architecture for balanced and secure ladder computations |
Also Published As
Publication number | Publication date |
---|---|
CN108833120B (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108833120A (zh) | 一种crt-rsa选择明文联合攻击新方法及系统 | |
Courtois et al. | Speed optimizations in Bitcoin key recovery attacks | |
Duan et al. | Differential power analysis attack and efficient countermeasures on PRESENT | |
CN111817842A (zh) | 一种针对rsa-crt运算的能量分析攻击测试装置和方法 | |
Wang et al. | Enhancing the performance of practical profiling side-channel attacks using conditional generative adversarial networks | |
Guo et al. | A new birthday-type algorithm for attacking the fresh re-keying countermeasure | |
Weissbart et al. | Systematic side-channel analysis of curve25519 with machine learning | |
CN106156615B (zh) | 基于类可分性判距的旁路区分器方法及系统 | |
KR20130086639A (ko) | 서명 생성 장치 및 서명 생성 방법 및, 컴퓨터 판독 가능한 기록 매체 | |
Taouil et al. | Power side channel attacks: Where are we standing? | |
Goudarzi et al. | Lattice attacks against elliptic-curve signatures with blinded scalar multiplication | |
Ghandali et al. | Profiled power-analysis attacks by an efficient architectural extension of a CNN implementation | |
CN116566584B (zh) | 基于Henon混沌系统加密的可编程控制器通信方法 | |
Liu et al. | Machine learning-based similarity attacks for chaos-based cryptosystems | |
Sim et al. | Key bit-dependent attack on protected PKC using a single trace | |
Jap et al. | Overview of machine learning based side-channel analysis methods | |
Mahanta et al. | Using genetic algorithm in inner product to resist modular exponentiation from higher order DPA attacks | |
Karayalcin et al. | It's a Kind of Magic: A Novel Conditional GAN Framework for Efficient Profiling Side-channel Analysis | |
Hu et al. | Software implementation of aes-128: Side channel attacks based on power traces decomposition | |
CN112615714B (zh) | 侧信道分析方法、装置、设备及存储介质 | |
Zhang et al. | A novel template attack on wnaf algorithm of ECC | |
Gao et al. | Leveraging ensemble learning for side channel analysis on masked AES | |
Hoang et al. | Stacked ensemble model for enhancing the DL based SCA | |
CN113965324B (zh) | 基于模板的rsa-crt实现模约减攻击的私钥恢复方法和系统 | |
CN110572251B (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 |