[发明专利]基于隐马尔科夫模型的椭圆曲线密码计时攻击方法有效
申请号: | 201210378640.7 | 申请日: | 2012-10-09 |
公开(公告)号: | CN102932147A | 公开(公告)日: | 2013-02-13 |
发明(设计)人: | 王潮;贾徽徽;姜丽莹 | 申请(专利权)人: | 上海大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 上海上大专利事务所(普通合伙) 31205 | 代理人: | 何文欣 |
地址: | 200444*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于隐马尔科夫模型(HMM)的ECC计时攻击方法。对美国NIST公布的二进制域上的5条Koblitz安全曲线进行了攻击仿真实验,成功地攻击了除K-571以外的其它4条Koblitz安全曲线,对于每一条安全曲线仅采集一次时间数据、耗时几十分钟就能恢复出几乎全部密钥比特,实验结果表明,该方法实施简单,成功率高,是对当前安全曲线有较大威胁的一种侧信道攻击手段。 | ||
搜索关键词: | 基于 隐马尔科夫 模型 椭圆 曲线 密码 计时 攻击 方法 | ||
【主权项】:
1.一种基于隐马尔科夫模型的针对椭圆曲线密码计时攻击方法,具体操作步骤如下:(1)选取一条NIST推荐的二进制域上的Koblitz安全曲线,确定要签名的参数组
,其中
表示二进制域的扩展次数,
表示次数
的约减多项式,
为椭圆曲线
的系数,
为基点,
基点
的阶,
为余因子,以及私钥d,消息m;(2)预计算,计算所选曲线进行“点加”和“倍点”运算所需要的时间,确定阈值;(3)随机选择
,k称为临时密钥;(4)利用Double-and-Add算法计算
并将
转换为整数
,其中
为基点P的横坐标,
表示基点P的纵坐标,
表示将
取整后的值,kP的计算过程如图1建立隐马尔科夫模型,输入临时密钥k为一个二进制bit序列,
表示位置的两种状态,取值为0或1,
表示获取的时间数据,最后由采集到的时间序列来猜测未知密钥比特序列,将采集到的计时数据与之前确定的阈值进行比较,猜测临时密钥k’;(5)计算
,r表示
取模后的值;(6)计算e=H(m),e表示消息m的哈希值,H表示一个哈希函数,本发明采用的是SHA1算法;(7)计算
,s表示输出签名中的一个关键参数;(8)输出签名
;(9)私钥d的求解公式为
,由于H(m)、签名(r,s)已知,根据计时数据猜测的临时密钥k’,就可以就得猜测密钥d’;(10)与原始密钥d进行比对,如果d=d’,说明攻击成功,否则用Grover搜索算法搜索临时密钥中错误密钥,直到找出所有的错误密钥。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学,未经上海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210378640.7/,转载请声明来源钻瓜专利网。
- 上一篇:一种有空气层建筑的连结构造
- 下一篇:一种具有良好防水防腐蚀性能的轨枕