[发明专利]基于机器学习的RSA掩码防御算法的侧信道攻击方法有效
申请号: | 201710951181.X | 申请日: | 2017-10-13 |
公开(公告)号: | CN107508678B | 公开(公告)日: | 2020-08-04 |
发明(设计)人: | 万武南;陈俊;陈运 | 申请(专利权)人: | 成都信息工程大学 |
主分类号: | H04L9/30 | 分类号: | H04L9/30;H04L9/00 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 谈杰 |
地址: | 610225 四川省成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 机器 学习 rsa 掩码 防御 算法 信道 攻击 方法 | ||
1.一种基于机器学习的RSA掩码防御算法的侧信道攻击方法,其特征在于,所述基于机器学习的RSA掩码防御算法的侧信道攻击方法利用滤波方法对功耗曲线进行滤波、对齐预处理;然后分析RSA掩码防护算法的幂指数功耗泄露点,截取泄漏点的模乘;采用模乘之间数据依赖性强的有效点,相关系数方差的欧氏距离存在差异,通过聚类方法进行分类,确定模乘有效点功耗点集,进行降噪;然后对有效点功耗相关系数和再次采用聚类分类方法,分析和猜测密钥值,实现基于机器学习的RSA掩码防御算法的侧信道攻击;
所述的基于机器学习的RSA掩码防御算法的侧信道攻击方法具体包括:
步骤一,采集RSA双重掩码算法N条功耗曲线,进行滤波,对齐处理,并进行模乘截取;
步骤二,然后对截取的各模乘与某一个特定模乘根据泊松相关系数公式求各模乘相关系数;
步骤三,对每个模乘求的相关系数与某一定的模乘相关系数的方差,对方差求欧式距离;
步骤四,对欧式距离,采用机器学习聚类分析方法,进行聚类,分成多类;
步骤五,选择聚类中心点最大值分类作为各模乘相关系数选择位置,将各模乘对应选择位置相关系数相加,求和;
步骤六,对各模乘相关系数和,采用机器学习聚类分析方法,进行聚类,分成多类;
步骤七,每各模乘所属类对应猜测密钥值。
2.如权利要求1所述的基于机器学习的RSA掩码防御算法的侧信道攻击方法,其特征在于,所述步骤一具体包括:
首先输入相同幂底数和幂指数,采集RSA双重掩码算法智能卡密码芯片功耗,进行滤波、对齐,然后截取C=C*T[tisi](mod N)的功耗曲线,组成如下分块矩阵:
(1)式中,每个分块矩阵Mi,j代表第i条功耗曲线第j个模乘;n代表曲线中模乘的数量;r代表曲线条数;而每个分块矩阵Mi,j=[mi,j*p,mi,j*p+1,mi,j*p+2,...,mi,j*p+p-1],其中p代表每个模乘功耗的点数;矩阵Z中的列向量mj*p+k=[m0,j*p+k,m1,j*p+k,m2,j*p+k,…,mi,j*p+k]T,其中0≤j<n-1,0≤k<p。
3.如权利要求2所述的基于机器学习的RSA掩码防御算法的侧信道攻击方法,其特征在于,
由矩阵Z,计算模乘与第s模乘之间功耗相关系数,得到模乘之间相关系数矩阵Cs:
(2)式中,代表第i模乘与固定第s模乘中,第j个功耗点之间的相关系数,其中0≤i<n-1,0≤j<p,0≤s<n-1;即相关系数计算公式(3):
计算Cs每列向量的方差,vi代表矩阵Cs的每列的方差值,得到方差向量值Vs:
Vs=(v0,v1,v2,...,vp-2,vp-1) (4)。
4.如权利要求3所述的基于机器学习的RSA掩码防御算法的侧信道攻击方法,其特征在于,
计算方差向量与向量均值的欧式距离,得到欧式距离向量:
Ds=(d0,d1,d2,…,dp-2,dp-1) (5)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都信息工程大学,未经成都信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710951181.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种中药口服液过滤装置
- 下一篇:户外净水器