计算装置和对此的运行方法与流程

文档序号:11808319阅读:169来源:国知局
计算装置和对此的运行方法与流程

本发明涉及一种具有初级计算单元和至少一个次级计算单元的计算装置,其中所述初级计算单元被构造为使初级数字输入数据经受可预先给定的第一数据处理,并且其中所述次级计算单元被构造为使次级数字输入数据经受可预先给定的第二数据处理。

此外,本发明还涉及一种用于使在上文所提到的类型的计算装置运行的方法。



背景技术:

开始时所提到的设备或方法本身是公知的,并且此外还被用于实施加密方法或者通常被用于处理尤其是也在IT安全性范围内的安全相关的数据。同样公知的是:在上文所提到的系统和方法或更准确地其具体的硬件和软件方面的实施方案在诸如多核(multi-core)微控制器或者诸如此类的那样的目标系统中借助于所谓的边信道攻击(英文:side channel attack)是易受攻击的。在这些边信道攻击的情况下,要被攻击的系统的一个或者多个物理参数(例如电流消耗、电磁辐射等等)被检测并且鉴于与诸如加密方法的秘密密钥那样的秘密数据的相关性而被检查。攻击者从中可以获得关于秘密密钥和/或被处理的数据的信息。

对开始时所提到的系统和方法的另一类攻击在于:在实施方法时主动地将故障引进、也就是说注入到系统中。这些攻击也被称作“故障注入攻击(Fault Injection attack)”。



技术实现要素:

因此,本发明的任务是如下地改进开始时所提到的类型的计算装置和方法:给出了相对于边信道攻击和/或故障攻击的被提高的安全性。

该任务在开始时所提到的类型的计算装置中按照本发明通过如下方式被解决:计算装置被构造为将通过所述至少一个次级计算单元进行的第二数据处理至少暂时地相对于通过所述初级计算单元进行的第一数据处理延迟。因此,有利地实现了:在可能同样的或者类似的在各种计算单元上被实施的算法或数据处理过程之间的较小的相关性被得到,这提高了相对于边信道攻击的安全性。该效应也可以被理解为对给边信道攻击造成困难的“算法噪声(algorithmic noise)”、即通过算法引起的“噪声”的放大。

在优选的实施形式中设置:计算装置被构造为与随机有关地(zufallsabhaengig)和/或与伪随机有关地(pseudozufallsabhaengig)延迟第二数据处理。为此,可以设置对于生成随机事件或随机数或伪随机数来说适当的来源。一般,例如可以通过如下方式招致按照本发明的通过计算装置引起的延迟:针对相对应地要延迟的计算单元的参考时钟信号(Referenztaktsignal)通过计算装置被影响,例如在该参考时钟信号的时钟频率方面被减小或者暂时地甚至被停止。按照一实施形式,与随机有关的和与伪随机有关的延迟也可以彼此相结合,或者设置暂时地与随机有关的和暂时地与伪随机有关的延迟。在另一有利的实施形式中设置:计算装置被构造为将第二数据处理的各个数据处理步骤和/或多个相继的数据处理步骤的群组延迟。在第二数据处理的在分别各个数据处理步骤之间的延迟的情况下,得到特别地被提高的安全性。

在另一有利的实施形式中设置:计算装置被构造为:与时间有关地和/或与事件有关地和/或与随机有关地和/或与伪随机有关地修改根据其所述第二数据处理与随机有关地和/或与伪随机有关地被延迟的方式和方法(或方法)。这意味着:例如可以根据一个或者多个事件的出现和/或根据时间以及可替换地或者作为补充地根据随机数和/或伪随机数做出根据其来实现所述至少一个次级计算单元的按照本发明的延迟的规定。

在另一有利的实施形式中设置:计算装置被构造为至少暂时地使初级数字输入数据反转(invertieren),以便得到次级数字输入数据。因此,可能的是:针对在各种计算单元中的基本上同样的或者至少类似的数据处理过程,将彼此反转的输入数据供这些计算单元支配,因此,可以进一步提高相对于边信道攻击的安全性。尤其是在各种计算单元中处理初级数字输入数据和对其反转的次级数字输入数据时,鉴于在边信道攻击的范围内可检测到的物理参数(例如电流消耗、电磁辐射等等)至少暂时地得出补偿效应,所述补偿效应还进一步提高计算装置的安全性。

在另一有利的实施形式中设置:计算装置被构造为根据所述初级计算单元的和所述至少一个次级计算单元的数字输出数据推断出所述初级计算单元和/或所述至少一个次级计算单元的运行状态、尤其是故障。经此,可以特别有利地提高按照本发明的计算装置相对于故障的稳健性。

在另一有利的实施形式中设置:设置有反转单元,所述反转单元被构造为根据初级数字输入数据形成次级数字输入数据。

在另一有利的实施形式中设置:至少一个次级计算单元的硬件结构与初级计算单元的硬件结构基本上是同样的。

在另一有利的发明变型方案中设置:第一数据处理与第二数据处理基本上是同样的。

通过在上文所提到的发明变型方案,例如可以提供所谓的多核计算装置,因此给出相对于各个计算单元的故障的提高的安全性,所述多核计算装置在相对应的数据处理的进程中以冗余的方式执行可预先给定的算法。同时,与可选地可能通过与其它的计算单元的输入数据反转的输入数据来供应至少一个(次级)计算单元相结合,相对于边信道攻击的被提高的安全性是可实现的。

在特别优选的实施形式中,计算装置被构造为实施加密方法和/或所述加密方法的至少一部分,其中尤其是第一和第二数据处理包括一个或者多个加密算法的至少部分步骤。在特别优选的发明变型方案中,根据加密方法或加密算法的类型来实现通过次级计算单元进行的第二数据处理的按照本发明的延迟。

在另一有利的实施形式中设置:初级计算单元和次级计算单元被布置在同一半导体芯片上和/或与同一电力供应装置相连,因此进一步给边信道攻击造成困难。

按照专利权利要求12所述的方法作为本发明的任务的另一解决方案被说明。

附图说明

本发明的其它的构建方案、特征和优点在下述的描述中参考附图被举出。

在附图中:

图1示意性地示出了按照本发明的计算装置的实施形式的框图,和

图2示意性地示出了按照本发明的方法的实施形式的简化流程图。

具体实施方式

图1示意性地示出了具有初级计算单元110a以及次级计算单元110b的计算装置100。可选地,也还可以存在其它的次级计算单元,如这通过其它的次级计算单元110c和在部件110b、110c之间的垂直的点接(Punktierung)所勾画出的那样。

初级计算单元110a被构造为使初级数字输入数据E1经受可预先给定的第一数据处理DV1,而次级计算单元110b被构造为使次级数字输入数据E2经受可预先给定的第二数据处理DV2。

所述数据处理DV1、DV2例如可以是加密方法或所述加密方法的部分或相对应的算法。

能量供应装置E被设置用于进行电力供应,所述能量供应装置E在本情况下供给所有的计算单元110a、110b、110c。

按照本发明建议,计算装置100被构造为:将通过所述至少一个次级计算单元110b进行的第二数据处理DV2至少暂时地相对于通过所述初级计算单元110a进行的第一数据处理DV1延迟。以这种方式得到所述两个计算单元110a、110b的运行的去相关(Dekorrelation),以便提高相对于边信道攻击的安全性,所述去相关尤其是在对有时相同的或类似的数据执行类似的或同样的数据处理步骤的情况下是有利的。

特别优选地,计算装置100被构造为与随机有关地和/或与伪随机有关地将第二数据处理DV2延迟。例如,可以通过如下方式实现这样的延迟:通过时钟线路被引向次级计算单元110b的时钟信号CLK例如鉴于其频率被计算装置100影响。也可能的是:计算装置100至少暂时地停止针对次级计算单元110b的时钟信号CLK或在当前存在的状态下“冻结”所述针对次级计算单元110b的时钟信号CLK,以便引起按照本发明的延迟。在此,如已经被描述的那样,延迟的量度可以与随机有关地或者与伪随机有关地或者通过二者的组合被确定。

可替换地或者作为补充地,可以通过如下方式实现第二数据处理DV2的延迟:伪指令、例如一个或者多个“NOP”(零操作)指令被混入到要由次级计算单元110b执行的指令流中。可替换地或者作为补充地,可以通过如下方式实现第二数据处理DV2的延迟:第二计算单元的程序指针在延迟的意义上被修改,等等。可比较的延迟对于计算装置100的其它的次级计算单元110c的运行来说也是可设想的。

在优选的实施形式中,根据对于每个计算单元110a、110b、110c来说特定的初始化值可以进行与随机有关地和/或与伪随机有关地确定要按照本发明应用的延迟,所述初始化值例如被布置在计算装置100或相应的计算单元110a、110b、110c的存储器(未示出)中。

如果基于各个数据处理步骤或基于所述各个数据处理步骤的群组来实现至少一个次级计算单元110b、110c的按照本发明的延迟,如果因此在各个数据处理步骤之间或者至少在包括少量的步骤的群组之间分别引起与随机有关的或与伪随机有关的延迟,那么给出计算装置100相对于边信道攻击的安全性的特别的提高。

在另一有利的实施形式中可以设置:根据要通过计算单元110a、110b、110c进行加工的数据处理步骤或算法,例如也动态地、即在正在进行中的数据处理DV1、DV2期间规定针对要应用的延迟或伪随机模式或者所述要应用的延迟的另外的特性的值域。

此外,如果根据其所述第二数据处理DV2与随机有关地和/或与伪随机有关地被延迟的方式和方法与时间有关地和/或与事件有关地和/或与随机有关地和/或与伪随机有关地被修改,则是特别有利的。该功能性例如可以由计算装置100或必要时对此特定地设置的计算核或可以类似于所述计算单元110a、110b、110c或者与所述计算单元110a、110b、110c同类地被构造的另一计算单元来实施。

在另一有利的实施形式中设置:计算装置100被构造为至少暂时地使初级数字输入数据E1反转,以便得到次级数字输入数据E2。经此,计算单元110a、110b例如可以对彼此反转的输入数据执行基本上可比较的算法,因此,给出调整相对应地被得到的输出数据A1、A2的可能性,这引起了计算装置100的可靠性的进一步提高。

例如,根据所述数字输出数据A1、A2可以推断出所述初级计算单元110a和/或所述至少一个次级计算单元110b、110c的运行状态、尤其是故障。

可选地,也可以设置反转单元120,所述反转单元120进行输入数据的反转。

在发明变型方案中,特别优选地,初级和次级计算单元110a、110b的硬件结构彼此基本上是同样的,并且可选地,数据处理DV1、DV2或所基于的算法也可以彼此基本上是同样的,因此可以得到冗余的计算机系统。

图2示意性地示出了按照本发明的方法的实施形式的简化流程图。在步骤200中,通过所述至少一个次级计算单元110b进行的第二数据处理DV2(图1)按照本发明至少暂时地相对于通过所述初级计算单元110a进行的第一数据处理DV1被延迟。最后在步骤210中,被延迟的数据处理DV2由次级计算单元110b来实施。在这种情况下,第一数据处理DV1例如可以在步骤200期间被实施。

有利地,本发明可以在现行的计算装置(诸如微控制器和/或(微)处理器和/或数字信号处理器)中被应用,并且可以显著地提高相对于边信道攻击和故障注入攻击的安全性。以此,尤其是也可以使可并行地在多核计算装置的多个计算单元或计算机核上实施的算法、尤其是加密算法得到保障。

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