一种侧信道信号的处理系统、方法及装置与流程

文档序号:14304958阅读:274来源:国知局
一种侧信道信号的处理系统、方法及装置与流程

本发明涉及抵抗侧信道攻击技术领域,具体地,涉及一种侧信道信号的处理系统、方法及装置。



背景技术:

在抵抗侧信道攻击领域,一般有四类抵抗侧信道攻击的方法,一类是屏蔽,二类是加模,三类是分解,四类是加扰。屏蔽就是尽量减少外界能侦测的侧信道信号;加模就是在密码学运算流程的某个关键模块中,引入一个随机数参与运算,运算后又去除该随机数的影响得到正确的结果;分解就是将密码学运算流程中的某一关键模块,按照某种随机原则,分解为两个或者多个运算,通过这种方式,避免内部局部关键变量的整体存在;加扰就在运算过程中加入各种增益衰减或者时间干扰片段,降低内部局部变量和外界侦测的侧信道信号之间的相关性。

而加扰抵抗侧信道攻击领域,也有三类方法,一类是补偿,二类是幅度上加扰,三类是时间上加扰。补偿就是增加补偿电路;幅度上加扰就是增加加扰电路;时间上的加扰是指在运算中随机增加时间片段,打乱外界采样到的侧信道信号时间上的一一对应性。对于时间上加扰主要有软实现算法的加扰和硬件实现算法的加扰。软实现算法的加扰一般是在算法运行当中,随机执行干扰指令的方法。硬实现的算法加扰一般是增加干扰电路,在硬模块的调用执行环节之间,随机调用干扰电路进行加扰。

在现有的采用单一抗攻击干扰模块进行干扰中,在发现干扰波形插入点的时候,则对应的另一条波形的相同位置,两者中有一个必然是正常波形,所以可以计算第一条波形的插入点后续波形和第二条波形往后跳一个干扰波形长度来计算相关性值,和第一条波形的插入点后往后跳一个干扰波形长度和第二条波形干扰插入点后续波形进行相关性计算得到的值进行比较,就可以从较大的值中,发现哪条中有干扰波形,并据此进一步精确地找到后续的最佳对齐点,从而得到正常波形,无法达到抵抗侧信道攻击的目的。



技术实现要素:

本发明的实施例提供一种侧信道信号的处理系统、方法及装置,解决了单一干扰模块无法达到抵抗侧信道攻击的问题。

为了实现上述目的,本发明实施例采用如下技术方案:

本发明实施例提供一种侧信道信号的处理系统,包括主控芯片和与所述主控芯片连接的被保护模块,其特征在于,所述系统还包括:与所述主控芯片连接的第一干扰模块、第二干扰模块和随机数发生器,其中,所述第一干扰模块和第二干扰模块执行的运算类型相同,且二者中的任意一个模块的输出频率为第一频率,另一个模块的输出频率为第二频率,所述第一频率为低于所述被保护模块的输出频率,所述第二频率为高于所述被保护模块的输出频率;所述主控芯片,用于当所述被保护模块执行运算时,根据所述随机数发生器输出的随机信号,调用所述第一干扰模块或所述第二干扰模块,以使得所述第一干扰模块或所述第二干扰模块的输出信号干扰所述被保护模块输出的侧信道信号。

进一步地,所述第一干扰模块和第二干扰模块执行的运算类型均为加法模块或乘法模块。

进一步地,所述第一干扰模块和第二干扰模块执行的运算类型与所述被保护模块的运算类型相同。

进一步地,所述第一频率为所述被保护模块的输出频率的90%~95%,所述第二频率为所述被保护模块的输出频率105~110%。

进一步地,所述随机数发生器的输出频率与所述主控芯片的频率一致。

本发明实施例还提供利用上述侧信道信号的处理系统的处理方法,所述方法包括:

当所述被保护模块执行运算时,间隔预定时间读取所述随机数发生器输出的随机信号;

当所述随机信号为第一信号时,调用所述第一干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰;

当所述随机信号为第二信号时,调用所述第二干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰。

进一步地,所述方法还包括:

当所述随机信号为第三信号时,调用所述被保护模块执行运算。

本发明实施例还提供一种侧信道信号的处理装置,包括:

读取单元,用于当所述被保护模块执行运算时,间隔预定时间读取所述随机数发生器输出的随机信号;

处理单元,用于当所述随机信号为第一信号时,调用所述第一干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰;

所述处理单元,还用于当所述随机信号为第二信号时,调用所述第二干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰。

进一步地,所述处理单元,还用于当所述随机信号为第三信号时,调用所述被保护模块执行运算。

通过上述技术方案,当所述被保护模块执行运算时,主控芯片根据随机数发生器输出的随机信号,调用第一干扰模块或第二干扰模块,以使得所述第一干扰模块或所述第二干扰模块的输出信号干扰所述被保护模块输出的侧信道信号。本发明实施例解决了单一干扰模块无法达到抵抗侧信道攻击的问题,增加干扰波形的干扰效果,提高了增加侧信道攻击者的信号对齐处理难度。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是现有技术中采用单一干扰模块的一种输出波形图;

图2是图1中正常波形与干扰波形进行求差异绝对值得到的波形图;

图3是图1中正常波形与干扰波形进行类似dtw的求差异图;

图4是现有技术中采用单一干扰模块的另一种输出波形图;

图5是图4中正常波形与干扰波形进行类似dtw的求差异图;

图6是现有技术中采用单一干扰模块的又一种输出波形图;

图7是图6中正常波形与干扰波形进行类似dtw的求差异图;

图8是现有技术中采用单一干扰模块的再一种输出波形图;

图9是图8中正常波形与干扰波形进行类似dtw的求差异图;

图10是现有技术中采用单一干扰模块的再又一种输出波形图;

图11是图10中正常波形与干扰波形进行类似dtw的求差异图;

图12是本发明实施例提供的一种侧信道信号的处理系统的架构图;

图13是本发明实施例提供的一种侧信道信号的处理方法的流程图;

图14是本发明实施例提供的一种侧信道信号的处理装置的示意图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

现有技术中加入单一干扰模块的一种情况是,如果干扰模块的输出频率和被保护模块的输出频率完全一致,也就是在被保护模块当中随机执行伪操作时,由于干扰波形和正常波形都是同一模块的运算侧信道侦测结果,所以其时钟频率完全一致,而且干扰波形的后一个波形和另一条中对应的波形很容易对齐上,所以很容易通过求差异的方式发现并进行对齐,而去掉干扰波形。比如图1中干扰波形频率和原波形一样,直接进行求差异绝对值,就可以得到图2所示波形,图2中很容易通过阈值p发现潜在的干扰波形插入位置,图3中进行类似dtw的求差异图,得到在a点发现有干扰波形,然后顺着图像矢量找到b点进行重新对齐。

同样,如图4所示,如果干扰波形在第一条侧信道曲线当中,在图5的dtw图中也可以发现干扰波形是在第一条而不是第二条当中。

现有技术中加入单一干扰模块的另一种情况是,如果干扰波形的频率和被保护模块的频率的差异较为明显时,也就是额外增加一个干扰模块,在被保护模块执行的间隙,随机执行,以进行干扰。比如图6中,干扰模块频率比被保护模块频率高,对两条曲线进行相关性计算得到图7所示dtw图,在图7中可以在a处或者a再往后一点的地方发现干扰波的插入点,而通过往后寻找对齐点b,跳过干扰波形把后续的波形数据对齐上。比如图8中,干扰波形的频率比被保护模块的频率低,也可以在两条曲线的相关性计算中,如图9所示,发现干扰波形插入点a,而通过往后寻找对齐点b,跳过干扰波形,而把后续的波形数据对齐上。

图10是实际的芯片侧信道功耗采样,芯片采用单一抗攻击干扰模块来进行干扰,由于误差差异,造成干扰模块和需保护模块之间的频率差异明显,在波形上有明显时间差异。对图10所示的实际芯片侧信道信号进行相关性计算分析,如图11可以明显看出,由于波形上的时间差异性,造成可以明显得在a点附近找到错位位置,而往后第一次对齐(实线)后,还会在b点发现另一个干扰波形的存在,从而再次对齐(实线),就达到了完全对齐的目标。

上述现有抵抗侧信道攻击是利用单一干扰模块,无法达到抵抗侧信道攻击的问题,故采用本发明实施例的两个干扰模块对被保护模块进行输出波形的干扰。

如图12所示,本发明实施例提供一种侧信道信号的处理系统,包括主控芯片11和与所述主控芯片连接的被保护模块12,以及与所述主控芯片11连接的第一干扰模块13、第二干扰模块14和随机数发生器15,

其中,所述第一干扰模块13和第二干扰模块14执行的运算类型相同,且二者中的任意一个模块的输出频率为第一频率,另一个模块的输出频率为第二频率,所述第一频率为低于所述被保护模块的输出频率,所述第二频率为高于所述被保护模块的输出频率;

所述主控芯片11,用于当所述被保护模块12执行运算时,根据所述随机数发生器15输出的随机信号,调用所述第一干扰模块13或所述第二干扰模块14,以使得所述第一干扰模块13或所述第二干扰模块14的输出信号干扰所述被保护模块12输出的侧信道信号。

其中,所述被保护模块12、第一干扰模块13、第二干扰模块14和随机数发生器15分别通过总线与所述主控芯片连接。

所述被保护模块12可以为密码基本运算的模块,例如模乘模块。

所述第一干扰模块13和第二干扰模块14执行的运算内容不做限定,但是必须保证两个干扰模块的运算类型一致,或者限定两个干扰模块的运算类型均为加法模块或乘法模块。

另外,所述第一干扰模块13和第二干扰模块14执行的运算类型也可以与所述被保护模块12的运算类型相同。

另外,所述第一频率为低于所述被保护模块12的输出频率,例如为所述被保护模块12的输出频率的90%~95%,所述第二频率为高于所述被保护模块12的输出频率,例如为所述被保护模块12的输出频率105~110%。

另外,所述随机数发生器15的输出频率与所述主控芯片11的频率一致。

当所述被保护模块12执行运算时,所述主控芯片11根据所述随机数发生器15输出的随机信号,调用所述第一干扰模块13或所述第二干扰模块14,以使得所述第一干扰模块13或所述第二干扰模块14的输出信号干扰所述被保护模块12输出的侧信道信号。本发明实施例解决了单一干扰模块无法达到抵抗侧信道攻击的问题,增加干扰波形的干扰效果,提高了增加侧信道攻击者的信号对齐处理难度。

由于存在两个干扰模块,即使发现干扰插入点,由于对齐位置可能是一段干扰波形,也可能是一段正常的波形,则寻找对齐点困难重重,此外,对于在生产中的随机误差,增大一个干扰模块和被保护模块之间的频率差异的时候,就会缩小另一个干扰模块和被保护模块之间的频率差异,反之一样,这就保证了至少有一个干扰模块的干扰有效性,提高了在相关性对齐方案中的抗攻击效果。

另外,本发明实施例还提供一种利用上述侧信道信号的处理系统的处理方法,执行主体为主控芯片,如图13所示,所述方法包括:

201、当所述被保护模块执行运算时,间隔预定时间读取所述随机数发生器输出的随机信号;

202、当所述随机信号为第一信号时,调用所述第一干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰;

203、当所述随机信号为第二信号时,调用所述第二干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰。

其中,当所述被保护模块执行运算时,所述主控芯片就会间隔预定时间读取所述随机数发生器输出的随机信号,所述预定时间可以为所述主控芯片的时钟的倍数,例如为5个时钟或7个时钟。

所述随机数发生器输出的随机信号可以为00、01、10和11,例如所述第一信号为10,当所述主控芯片读取到所述随机数发生器输出的随机信号位10时,调用所述第一干扰模块执行运算,或者所述第二信号为11,当所述主控芯片读取到所述随机数发生器输出的随机信号为11时,调用所述第二干扰模块执行运算,从而对所述被保护模块输出的侧信道信号进行干扰。

其中,并不限定所述第一干扰模块和第二干扰模块的输出频率,只要保证二者中的一个输出频率为低于所述被保护模块的输出频率,另一个为高于所述被保护模块的输出频率即可。

另外,当所述主控芯片读取到所述随机信号为第三信号时,调用所述被保护模块执行运算。其中,所述第三信号可以为00和01,即当所述随机信号为00或01时,调用所述被保护模块执行运算。

利用上述方法,当所述被保护模块执行运算时,所述主控芯片根据读取到的所述随机数发生器输出的随机信号,调用所述第一干扰模块或所述第二干扰模块,以使得所述第一干扰模块或所述第二干扰模块的输出信号干扰所述被保护模块输出的侧信道信号,解决了单一干扰模块无法达到抵抗侧信道攻击的问题,增加干扰波形的干扰效果,提高了增加侧信道攻击者的信号对齐处理难度。

本发明实施例还提供一种侧信道信号的处理装置,如图14所示,所述装置包括:

读取单元31,用于当所述被保护模块执行运算时,间隔预定时间读取所述随机数发生器输出的随机信号;

处理单元32,用于当所述随机信号为第一信号时,调用所述第一干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰;

所述处理单元32,还用于当所述随机信号为第二信号时,调用所述第二干扰模块执行运算,对所述被保护模块输出的侧信道信号进行干扰。

进一步地,所述处理单元32,还用于当所述随机信号为第三信号时,调用所述被保护模块执行运算。

所述处理装置为主控芯片,当所述被保护模块执行运算时,根据随机数发生器输出的随机信号,调用第一干扰模块或第二干扰模块,以使得所述第一干扰模块或所述第二干扰模块的输出信号干扰所述被保护模块输出的侧信道信号,解决了单一干扰模块无法达到抵抗侧信道攻击的问题,增加干扰波形的干扰效果,提高了增加侧信道攻击者的信号对齐处理难度。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

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