基于低通滤波的旁路攻击曲线预处理方法与流程

文档序号:16006854发布日期:2018-11-20 20:10阅读:210来源:国知局

本发明涉及的是一种计算机安全领域的技术,具体是一种基于低通滤波的旁路攻击曲线预处理方法。



背景技术:

在密码系统的实现环境中,攻击者可以观察和测量密码变换的能量消耗、电磁辐射等信息,利用这些额外的信息有可能实现比传统的数学分析更有效地密码破译,即旁路攻击(Side Channel Attack),其包括简单功耗分析(SPA)和差分功耗分析(DPA),其中DPA攻击是通过记录密码设备对大量不同数据加密或解密操作时的功耗曲线,利用统计方法从功耗曲线中恢复出密码设备中的密钥。



技术实现要素:

本发明针对现有技术在功耗曲线中存在大量噪声时无法实现精确对准,导致无法获得精确功耗曲线的缺陷,提出一种基于低通滤波的旁路攻击曲线预处理方法,能够有效的克服噪声导致的对齐效果不好的问题。

本发明是通过以下技术方案实现的:

本发明通过对待对功耗曲线进行快速低通处理,再通过对齐算法利用低通后的功耗曲线计算出每一条曲线的最优位移值,并以该最优位移值对待对功耗曲线进行位移后实现优化对齐。

所述的快速低通处理是指:根据低通参数w对曲线进行低通滤波处理,滤波后的曲线上的功耗点为:t′i,j=(w*t′i,j-1+ti,j)/(w+1),其中:ti,j代表待对准的第i条功耗曲线上的第j个功耗点,曲线集共有n条曲线,*表示乘法运算,w为预选参数。

所述的最优位移值,通过选取参照功耗点后对所有低通后的功耗曲线上的功耗点进行左右平移并计算平移后曲线与参照功耗点的相关性,以相关性最大时的曲线为最优位移。

所述的参照功耗点,选择滤波后的任意一条曲线的一段区域的功耗点(t′1,j)j=a…b,其中a为参照功耗点的下标下限,b为上限。

所述的左右平移是指:对所有的功耗点t′i,j,i∈(2…n),都左右平移k次个点,其中k∈(-l…l),k为正数时为右移,为负数为左移,并分别计算每次平移后(t′1,j)j=a…b和(t′i,j)j=a…b的相关性ci,k=corr((t′1,j)j=a,…,b,(t′i,j)j=a+k,…,b+k),取ci,k为最大时的k:ki=argmaxkci,k作为最优位移值。

优选地,所述的左右平移进一步设有位移阈值,当相关性最大时的位移值大于位移阈值时再进行优化位移。

所述的位移是指:利用产生最大相关性时的位移值对每一条原始功耗曲线(未低通的)进行位移,得到对齐后的功耗曲线。

附图说明

图1为本发明流程图

技术效果

与现有技术相比,本发明通过低通滤波处理,使得ci,k可以更好的反映对齐的程度,令对齐的效果更好。本专利使用的低通为快速低通算法,实际执行速度只占整体运算速度的很小一部分。

具体实施方式

实施例1

本实施例包括以下步骤:

①选择低通的参数w=100,选择对齐上下限为l=n,另外选择一个抛弃参数th=0.9,对曲线进行低通,低通后的功耗点为:t′i,j=(100*t′i,j-1+ti,j)/(100+1)

②首先选择任意一条曲线的一段区域的功耗点作为参照功耗点:(t′1,j)j=a…b,其中a为参照功耗点的下标下限,b为上限;然后对于所有的i∈(2…n),都左右平移k个点,其中k∈(-n…n),k为正数时为右移,为负数为左移,然后计算(t′1,j)j=a…b和(t′i,j)j=a…b的相关性ci,k=corr((t′1,j)j=a,…,b,(t′i,j)j=a+k,…,b+k),取ci,k为最大时的k:ki=argmaxkci,k。

③利用ki对未低通的第i条曲线进行位移:若则抛弃第i条曲线。

实施例2

本实施例包括以下步骤:

①选择低通的参数w=100,选择对齐上下限为l=n,另外选择一个抛弃参数th=0.8,对曲线中a-l到b+l的点进行低通,低通后的功耗点为:t′i,j=(100*t′i,j-1+ti,j)/(100+1)。

②首先选择任意一条曲线的一段区域的功耗点作为参照功耗点:(t′1,j)j=a…b,其中a为参照功耗点的下标下限,b为上限;然后对于所有的i∈(2…n),都左右平移k个点,其中k∈(-n…n),k为正数时为右移,为负数为左移,然后计算(t′1,j)j=a…b和(t′i,j)j=a…b的相关性ci,k=corr((t′1,j)j=a,…,b,(t′i,j)j=a+k,…,b+k),取ci,k为最大时的k:ki=argmaxkci,k。

③利用ki对未低通的第i条曲线进行位移:若则抛弃第i条曲线。

上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1