CN108833120A - 一种crt-rsa选择明文联合攻击新方法及系统 - Google Patents

一种crt-rsa选择明文联合攻击新方法及系统 Download PDF

Info

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
Application number
CN201810990156.7A
Other languages
English (en)
Other versions
CN108833120B (zh
Inventor
万武南
陈俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu University of Information Technology
Original Assignee
Chengdu University of Information Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu University of Information Technology filed Critical Chengdu University of Information Technology
Priority to CN201810990156.7A priority Critical patent/CN108833120B/zh
Publication of CN108833120A publication Critical patent/CN108833120A/zh
Application granted granted Critical
Publication of CN108833120B publication Critical patent/CN108833120B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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/3249Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public 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/302Public 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选择明文联合攻击新方法及系统
技术领域
本发明属于信息安全领域,尤其涉及一种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选择明文联合攻击系统。
CN201810990156.7A 2018-08-28 2018-08-28 一种crt-rsa选择明文联合攻击方法及系统 Active CN108833120B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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签名方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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