本技术属于芯片安全,尤其涉及一种密码芯片安全检测方法、装置及设备。
背景技术:
1、随着电子技术的发展,芯片作为信息的载体应用在各种领域。在数字化和物联网进程中芯片承载大量数据,引发人们对敏感信息遭到泄露、被攻击的担忧。
2、现阶段密码芯片安全检测通常采用侧信道攻击方式来检验评估密码芯片的安全性,评估结果不稳定,安全检验的结果不到位,用户密钥易被违法获取,埋藏安全隐患。
技术实现思路
1、本技术实施例提供了一种密码芯片安全检测方法、装置及设备,可以解决对密码芯片的安全检测评估结果不稳定,安全检验的结果不到位,用户密钥易被违法获取,埋藏安全隐患的问题。
2、第一方面,本技术实施例提供了一种密码芯片安全检测方法,包括:
3、对目标密码芯片在不同输入数据和操作条件下进行差分功耗分析攻击,并进行周期性功耗采样;
4、基于所述周期性功耗采样的结果,通过dpa预测模型推断可能的密钥信息;
5、基于所述dpa预测模型推断的结果,得到所述目标密码芯片的第一元安全检测分数;
6、对所述目标密码芯片进行故障注入攻击,采集故障注入时的响应数据;
7、根据采集到的所述响应数据,得到目标密码芯片的第二元安全检测分数;
8、基于所述第一元安全检测分数和所述第二元安全检测分数,得到所述目标密码芯片综合检测结果。
9、本技术实施例中上述的技术方案,至少具有如下技术效果:
10、本技术实施例提供的密码芯片安全检测方法,通过对目标密码芯片在不同输入数据和操作条件下进行差分功耗分析攻击,并进行周期性功耗采样,以及时地了解目标密码芯片在不同情况下的功耗数据。基于周期性功耗采样的获得的功耗数据结果,通过dpa预测模型推断出目标密码芯片可能的密钥信息。根据dpa预测模型推断的密钥信息的结果,评估得到目标密码芯片的第一元安全检测分数,也即是目标密码芯片在差分功耗分析攻击下的安全性。对目标密码芯片进行故障注入攻击,采集目标密码芯片在故障注入时的响应数据。根据采集到的目标密码芯片在故障注入时响应数据,评估得到目标密码芯片的第二元安全检测分数,即目标密码芯片故障注入攻击时的安全性。基于第一元安全检测分数和第二元安全检测分数,即目标密码芯片在差分功耗分析攻击下的安全性和在故障注入攻击时的安全性,综合得到目标密码芯片综合检测结果,多重评估保障评估结果的稳定,解决安全检验的结果不到位,用户密钥易被违法获取,埋藏安全隐患的问题。
11、在第一方面的一种可能的实现方式中,所述对目标密码芯片在不同输入数据和操作条件下进行差分功耗分析攻击,并进行周期性功耗采样,包括:
12、确定功耗分析设备连接到所述目标密码芯片,并设置采样周期;
13、调整所述功耗分析设备的时钟与所述目标密码芯片的时钟至时钟同步;
14、在所述目标密码芯片进行同一芯片操作下,使用不同的输入数据对所述目标密码芯片进行第一差分功耗分析攻击;
15、在进行所述第一差分功耗分析攻击时,所述功耗分析设备基于时钟对目标密码芯片进行周期性功耗数据采集,得到第一功耗数据。
16、在第一方面的一种可能的实现方式中,所述对目标密码芯片在不同输入数据和操作条件下进行差分功耗分析攻击,并进行周期性功耗采样,还包括:
17、在同一输入数据下,对所述目标密码芯片在不同的芯片操作的情况下进行第二差分功耗分析攻击;
18、在进行所述第二差分功耗分析攻击时,所述功耗分析设备基于时钟对目标密码芯片进行周期性功耗数据采集,得到第二功耗数据。
19、在第一方面的一种可能的实现方式中,所述基于所述周期性功耗采样的结果,通过dpa预测模型推断可能的密钥信息,包括:
20、基于对所述目标密码芯片进行差分功耗分析采集的所述第一功耗数据和所述第二功耗数据,得到第一输入信息和第二输入信息;
21、基于所述第一输入信息和所述第二输入信息,通过dpa预测模型推断可能的密钥信息。
22、在第一方面的一种可能的实现方式中,所述基于对所述目标密码芯片进行差分功耗分析采集的所述第一功耗数据和所述第二功耗数据,得到第一输入信息和第二输入信息,包括:
23、对所述目标密码芯片进行第一差分功耗分析采集的所述第一功耗数据应用小波变换;
24、基于所述小波变换,对所述第一功耗数据进行去噪并重构所述第一功耗数据;
25、基于重构的所述第一功耗数据,得到第一输入信息;
26、对所述目标密码芯片进行第二差分功耗分析采集的所述第二功耗数据应用低通滤波;
27、基于所述低通滤波,对所述第二功耗数据进行去噪得到第二输入信息。
28、在第一方面的一种可能的实现方式中,所述基于所述dpa预测模型推断的结果,得到所述目标密码芯片的第一元安全检测分数,包括:
29、将基于dpa预测模型得到的可能的密钥信息与已知密钥信息进行第一相似性匹配;
30、基于所述第一相似性匹配的结果,得到所述目标密码芯片的第一元安全检测分数。
31、在第一方面的一种可能的实现方式中,所述根据采集到的所述响应数据,得到目标密码芯片的第二元安全检测分数,包括:
32、根据采集到的所述响应数据,应用傅里叶变换将所述响应数据从时域信号转换为频域信号;
33、基于所述频域信号,得到故障注入的频谱图;
34、基于故障注入的所述频谱图,对所述频域信号进行滤波;
35、基于滤波后的所述频域信号,得到滤波后所述频域信号的能量分布情况;
36、根据所述能量分布情况和所述频谱图,推断所述目标密码芯片的可能的密钥信息;
37、将所述可能的密钥信息和已知密钥信息进行第二相似性匹配;
38、基于所述第二相似性匹配的结果,得到所述目标密码芯片的第二元安全检测分数。
39、在第一方面的一种可能的实现方式中,所述根据所述能量分布情况和所述频谱图,推断所述目标密码芯片的可能的密钥信息,包括:
40、从所述频谱图和所述能量分布情况中提取关键特征;
41、基于提取的所述关键特征,通过预设差异度量标准检测密钥变化特征;
42、基于检测到的所述密钥变化特征,通过密码字典推断可能的密钥信息。
43、第二方面,本技术实施例提供了一种密码芯片安全检测装置,包括:
44、密钥推断模块,用于基于所述周期性功耗采样的结果,通过dpa预测模型推断可能的密钥信息;
45、第一评分模块,用于基于所述dpa预测模型推断的结果,得到所述目标密码芯片的第一元安全检测分数;
46、注入采样模块,用于对所述目标密码芯片进行故障注入攻击,采集故障注入时的响应数据;
47、第二评分模块,用于根据采集到的所述响应数据,得到目标密码芯片的第二元安全检测分数;
48、综合评估模块,用于基于所述第一元安全检测分数和所述第二元安全检测分数,得到所述目标密码芯片综合检测结果。
49、第三方面,本技术实施例提供了一种密码芯片安全检测设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项所述的方法。
50、第四方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项的所述方法。
51、可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。