[发明专利]SHA‑256散列算法抵御差分故障攻击的检测方法在审
申请号: | 201710011796.4 | 申请日: | 2017-01-06 |
公开(公告)号: | CN106850186A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 李玮;廖林峰;郭筝;葛晨雨;高志勇;曹奇英;李悦;李锋;石秀金 | 申请(专利权)人: | 东华大学 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/00 |
代理公司: | 上海申汇专利代理有限公司31001 | 代理人: | 翁若莹,吴小丽 |
地址: | 200050 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种SHA‑256散列算法抵御差分故障攻击的检测方法,首先输入某一消息并利用SHA‑256对其进行处理;在处理过程中施行两种环境控制,一种控制处理过程准确无误地运行,并记录其输出结果为Y,另一种则是在处理同一消息的过程中人为地导入故障,诱导其得到错误的输出结果,并记为Y*;通过计算Y与Y*的差分值,来测评SHA‑256对差分故障攻击的抵御能力。如果检测到有故障发生,能够推导出故障发生的位置,并进一步判断故障位置的有效性。本发明提供的方法具有简单、快速、准确且易于实现等特点,为检测SHA‑256算法抵御差分故障攻击的能力提供了良好的分析依据。 | ||
搜索关键词: | sha 256 算法 抵御 故障 攻击 检测 方法 | ||
【主权项】:
一种SHA‑256散列算法抵御差分故障攻击的检测方法,其特征在于,包括以下步骤:步骤1:随机生成要处理的明文消息,记为X;步骤2:利用SHA‑256算法处理消息X,得到正确输出和错误输出,分别记为Y和Y*;步骤3:计算Y和Y*的差分值,结果记为ΔY;步骤4:分析ΔY,判断SHA‑256算法是否受到差分故障攻击的影响,并推导出故障导入的位置,分析其有效性;具体方法如下:计算正确输出Y和错误输出Y*的差分其中代表异或运算;ΔY为256比特,令ΔY=(ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7),保存于256比特的缓存区中,缓存区用8个32比特长的寄存器(A,B,C,D,E,F,G,H)表示;ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6和ΔY7均为32比特,分别代表缓存区中最后一轮输出结果的差分;记Ai、Bi、Ci、Di、Ei、Fi、Gi、Hi为第i步缓存区相应寄存器中的值,其中i∈[0,64];(1)有效故障:I)当ΔY0×ΔY1×ΔY2×ΔY4×ΔY5×ΔY6×ΔY7≠0时,故障导入的位置为E61;II)当ΔY0×ΔY1×ΔY2×ΔY4×ΔY5×ΔY6≠0时,故障导入的位置为F61;III)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中均不为0时,故障导入的位置为D60以及在其之前的任何位置;(2)无效故障:I)当ΔY=0时,说明导入的故障值等于当前位置上的原值,相当于没有导入故障,故障无效;II)当ΔY≠0时:(i)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中有且仅有一个不为0时,a)当ΔY0≠0时,故障导入的位置为A64;b)当ΔY1≠0时,故障导入的位置为B64;c)当ΔY2≠0时,故障导入的位置为C64;d)当ΔY3≠0时,故障导入的位置为D64;e)当ΔY4≠0时,故障导入的位置为E64或者D63;f)当ΔY5≠0时,故障导入的位置为F64;g)当ΔY6≠0时,故障导入的位置为G64;h)当ΔY7≠0时,故障导入的位置为H64;(ii)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中只有两个同时不为0时,a)当ΔY0×ΔY1≠0时,故障导入的位置为A63;b)当ΔY0×ΔY2≠0时,故障导入的位置为B63;c)当ΔY0×ΔY3≠0时,故障导入的位置为C63;d)当ΔY0×ΔY4≠0时,故障导入的位置为H63;(iii)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中只有三个同时不为0时,a)当ΔY0×ΔY1×ΔY2≠0时,故障导入的位置为A62;b)当ΔY0×ΔY1×ΔY3≠0时,故障导入的位置为B62;c)当ΔY0×ΔY1×ΔY4≠0时,故障导入的位置为C62或者G62;d)当ΔY0×ΔY4×ΔY5≠0时,故障导入的位置为D62或者E63;f)当ΔY0×ΔY4×ΔY6≠0时,故障导入的位置为F63;g)当ΔY0×ΔY4×ΔY7≠0时,故障导入的位置为G63;(iv)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中只有四个同时不为0时,a)当ΔY0×ΔY1×ΔY2×ΔY3≠0时,故障导入的位置为A61;b)当ΔY0×ΔY1×ΔY4×ΔY5≠0时,故障导入的位置为H62;c)当ΔY0×ΔY1×ΔY3×ΔY4≠0时,故障导入的位置为B61;(v)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中只有五个同时不为0时,a)当ΔY0×ΔY1×ΔY4×ΔY5×ΔY6≠0时,故障导入的位置为E62;b)当ΔY0×ΔY1×ΔY4×ΔY5×ΔY7≠0时,故障导入的位置为F62;c)当ΔY0×ΔY1×ΔY2×ΔY4×ΔY6≠0时,故障导入的位置为D61;d)当ΔY0×ΔY1×ΔY2×ΔY4×ΔY5≠0时,故障导入的位置为C61;(vi)当ΔY0,ΔY1,ΔY2,ΔY3,ΔY4,ΔY5,ΔY6,ΔY7中只有六个同时不为0时,a)当ΔY0×ΔY1×ΔY2×ΔY4×ΔY5×ΔY6≠0时,故障导入的位置为G61或者H61。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东华大学,未经东华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710011796.4/,转载请声明来源钻瓜专利网。