用于安全密钥生成的方法和设备技术

技术编号:28758161 阅读:19 留言:0更新日期:2021-06-09 10:31
提供了一种用于确定密码设备(1)中的一个或多个密钥的密钥确定设备(13),该密码设备(1)被配置为执行一个或多个测试程序,该密码设备(1)包括一个或多个组件(11

【技术实现步骤摘要】
【国外来华专利技术】用于安全密钥生成的方法和设备


[0001]本专利技术总体上涉及密码系统,并且更具体地涉及用于确定密钥的方法和设备。

技术介绍

[0002]密码设备用于许多领域中,以确保在数据存储和/或数据传输期间的数据的安全性、认证、保护和隐私。随着计算机科学和计算机硬件
的巨大且持续的进步,密码设备已经成为必不可少的项目。低成本、快速且小型的密码设备被部署在用于许多应用的各种系统(例如,通信系统和数据处理系统)中。
[0003]密码设备使用一个或多个密钥来从原始数据生成安全数据,以用于防止黑客或攻击者恢复原始数据,而对安全数据的访问需要对密钥的访问。密码设备因此存储敏感的私有数据(例如,密钥)。对密码硬件的攻击可能会对数据安全性造成灾难性的影响,包括例如隐私的丧失以及保护和安全性的丧失。
[0004]攻击者关于密码设备的目标取决于应用。例如,攻击者可以以了解私有参数(例如,密钥)为目标,或者在不了解私有参数或者损害系统的正常可服务性的情况下,尝试利用被攻击的密码设备的泄漏信息。
[0005]在安全的密码设备中,旨在攻击者无法通过观察或操纵存储敏感数据或实现涉及敏感私有数据的密码机制的单元的输入/输出,来获取有关私有数据的任何知识。攻击者可以通过执行穷尽的搜索来尝试恢复敏感数据(例如,如果攻击者的目标是提取一个或多个密钥,则对密钥的整个空间进行穷尽的搜索)。
[0006]存在对密码设备的若干种攻击,包括例如以密码算法的物理实施方式为目标的硬件攻击,以及以在处理器上执行软件代码/程序时密码设备的行为为目标的网络攻击。示例性物理硬件攻击包括边信道攻击和故障攻击。
[0007]边信道攻击使用任何物理上泄漏的信息(例如,功耗、处理时间、电磁辐射、声音和红外辐射),该信息可以由攻击者用作密码机制的物理实施方式的附加知识源。泄漏的信息可以揭示受攻击设备的内部结构的特性和正在运行的密码机制的特性。例如,测量密码设备随时间的功耗,或者测量运行密码机制或运行用于生成密钥的计算操作所需的时间,可能会公开有关私有数据的信息。
[0008]在故障攻击中,攻击者强迫密码设备执行一些错误操作,其目的是在受攻击设备的错误行为期间利用任何泄漏的信息来确定在错误操作的运行期间涉及的私有参数。存在用于引起故障攻击的若干种方法,包括例如提供有噪声的功率或时钟信号、不正确的电压、或过高的温度。
[0009]网络攻击利用由处理元件/组件/单元执行的机器代码执行来访问受攻击设备并获得对受攻击设备的控制。特别地,对硬件/软件设计的基于存储器的攻击依赖于破坏存储器地址(位置)来劫持控制流。例如,可以通过破坏代码/程序存储器位置(例如,返回地址)来实现任意程序执行。
[0010]存在针对硬件攻击和网络攻击的若干种保护技术。
[0011]可以通过提供在恒定时间内运行的密码机制和算法或者开发在恒定程序流下工作的密码程序(不论什么样的安全数据),来对抗边信道攻击。这些技术允许缓解边信道攻击。然而,它们的实际实施方式在硬件资源(存储空间、处理能力)例如由于成本或尺寸考虑而受限的应用中是不可行的。此外,由算法操纵的数据值也可能泄漏。因此,其它边信道缓解解决方案已经在以下文献中公开:
[0012]‑“
S.Chari,C.S.Jutla,J.R.Rao and P.Rohatgi.Towards Sound Approaches to Counteract Power

Analysis Attacks.Advances in Cryptology

CRYPTO.Volume 25 1666of the Series Lecture Notes in Computer Science.Pages 398

412.1999”;
[0013]‑“
S.Chari,J.R.Rao和P.Rohatgi.Template Attacks.Cryptographic Hardware and Embedded Systems(CHES).Volume 2523of the Series Lecture Notes in Computer Science.Pages 13

28.2003”;以及
[0014]‑“
J

S.Coron and L.Goubin.On Boolean and Arithmetic Masking against Differential Power Analysis.Cryptographic Hardware and Embedded Systems(CHES).Volume 1965of the Series Lecture Notes in Computer Science.Pages231

237.2000”。
[0015]这些解决方案基于诸如秘密分割(secret splitting)或掩蔽方案之类的随机化技术,以旨在通过随机未知数的使用来对密码机制添加保护层,这些随机未知数防止意外接收者或攻击者根据泄露的信息来预测秘密值。在攻击者利用一瞬间观察到的物理泄漏信息的情况下,掩蔽方案是高效的。然而,对于基于多个瞬间中的多个泄漏信息的一些攻击(例如,高阶差分分析),随机化技术无法阻止攻击者成功地恢复期望的秘密值(在“P.C Kocher,J.Jaffe,and B.Jun.Differential Power Analysis.Advances in Cryptology

CRYPTO.Volume 1666of the Series Lecture Notes in Computer Science.Pages 388

297,1999”中)。
[0016]针对硬件或软件中的故障攻击的保护旨在帮助电路避免检测和/或校正故障。存在被动保护和主动保护。示例性的被动保护包括时钟周期、总线、以及存储器加密的随机化。示例性的主动保护包括使用传感器和检测器来推断异常电路行为。
[0017]针对网络攻击的保护包括:
[0018]‑
用于检测/识别恶意软件代码的存在的防病毒程序;
[0019]‑
用于检测溢出的金丝雀(canary)的使用;
[0020]‑
用于识别和追踪不安全数据的动态信息流追踪;
[0021]‑
结合不可执行的栈和堆的部署、地址空间布局随机化、以及栈金丝雀,使用虚拟存储器地址而不是物理地址;这样的保护措施提供了存储器访问约束,并且防止攻击者的代码注入和/或执行,以及
[0022]‑
基于对流量控制的任何修改的检测来控制流量完整性。
[0023]针对硬件和软件攻击(其以在密码设备中存储/由密码设备使用的密钥的提取为目标)的现有保护提供了部分保护,并且不足以完全地保护密码设备。
[0024]因此,需要开发高本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于确定密码设备(1)中的一个或多个密钥的密钥确定设备(13),所述密码设备(1)被配置为执行一个或多个测试程序,所述密码设备(1)包括一个或多个组件(11

i),每个组件(11

i)被配置为生成静态数据和动态数据,所述动态数据是响应于所述一个或多个测试程序的执行而生成的,其中,所述密钥确定设备(13)包括:

数据提取单元(131),其被配置为:提取由所述一个或多个组件(11

i)生成的所述静态数据的至少一部分和所述动态数据的至少一部分;以及

密钥生成器(132),其被配置为:将所述静态数据的所述至少一部分和所述动态数据的所述至少一部分进行组合,并且通过将密码函数应用于组合数据来确定所述一个或多个密钥。2.根据权利要求1所述的密码设备(1),其中,所述密码设备(1)被配置为连续地执行所述一个或多个测试程序。3.根据权利要求1所述的密码设备(1),其中,所述密码设备(1)被配置为根据预定义的时间间隔来周期性地执行所述一个或多个测试程序。4.根据权利要求1所述的密码设备(1),其中,所述一个或多个测试程序的所述执行是事件驱动的,所述密码设备(1)被配置为响应于一个或多个事件而执行所述一个或多个测试程序。5.根据权利要求1所述的密码设备(1),其中,所述密码设备(1)被配置为响应于中断动作或用户发起的动作而执行所述一个或多个测试程序。6.根据权利要求1所述的密码设备(1),其中,一个或多个测试程序的所述执行由所述密码设备(1)实现以执行系统启动测试,所述密码设备(1)被配置为在每次系统启动时执行所述一个或多个测试程序。7.根据权利要求1所述的密码设备(1),其中,一个或多个测试程序的所述执行由所述密码设备(1)实现,以执行用于测...

【专利技术属性】
技术研发人员:Y
申请(专利权)人:智能IC卡公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1