当前位置: 首页 > 专利查询>西门子公司专利>正文

在计算机系统中的方法、计算机程序和数据处理设备技术方案

技术编号:14271119 阅读:61 留言:0更新日期:2016-12-23 15:51
本发明专利技术涉及一种在计算机系统中用于将已编码的中间变量(z)代码转换为码转换的结果变量(z')的方法,其中,通过输入常量(A)与待编码的输入变量(xf)的乘法形成乘积,并且至少借助该乘积形成已编码的中间变量(z),并且其中,确定输入常量(A)的乘法逆元(A‑1),并且乘法逆元(A‑1)用于已编码的中间变量(z),从而不产生未编码的或者部分未编码的中间结果(R1,R2,R3),和/或在该中间结果中,始终能够识别出潜在地包含在已编码的中间变量(z)中的差错信息。此外,本发明专利技术涉及一种计算机程序以及数据处理设备。

【技术实现步骤摘要】

本专利技术涉及一种在计算机系统中用于将已编码的中间变量转换为码转换的结果变量代码转换的方法、计算机程序以及数据处理设备。
技术介绍
为了减小对于健康和寿命的危险以及为了避免环境危害而使用功能上安全的系统。除了对于过程信息的安全检测和通信外,这还需要安全的处理,例如在存储器可编程的控制装置或者在工业计算机中。在处理功能上安全的数据时,必须识别出安全功能的内部的差错,并且产生安全反应(例如输出安全的备用值)的结果。这以较为传统的方式通过硬件复制和结果比较来实现。替换方案是借助数学的代码对安全功能进行编码。经常使用的编码是ANBD编码,其中通过与输入常量A的乘法,并通过静态的取决于变量的输入信号B_x以及动态的取决于周期的输入操作数D的加法,对变量xf进行编码。在此,全部数字变量根据如下公式的规定进行编码:z=A*xf+B_x+D并且数学运算(+,-,*,/,等等)如下地进行匹配,即在已编码的范围内的处理提供与原始范围(Ur-Bereich)一致的结果(在此B或者D也能够完全具有数值零)。根据目前的现有技术,对已编码的变量的检验以及变量的从ANBD代码到另外的A’NB’D’代码的代码转换只有通过已编码的变量的完全解码才是可行的。解码借助:xf=(z-B_x-D)/A来实现。对已编码的变量的检验通过:((z-B_x-D)MOD A==0)来实现。该检验的结果本身是未编码的变量,从而使得该检验必须在独立的硬件上实施。如果使用用于代码转换的方法,则产生未编码的中间结果。对该中间结果产生作用的差错在原则上不能被识别。此外,包含在原始的已编码的变量中的差错信息通过解码丢失,即无效的已编码的输入也反映出有效的已编码的密码。因此必须单独地检验输入操作数的有效性。
技术实现思路
本专利技术的第一目的是提出一种在计算机系统中用于将已编码的中间变量代码转换为码转换的结果变量的方法,该方法解决了上述的问题。第二目的在于提出一种具有程序代码的解决这些问题的计算机程序。另外的目的是提出一种数据处理设备。在该方法方面的目的通过提出一种在计算机系统中用于将已编码的中间变量代码转换为码转换的结果变量的方法来实现,其中,通过输入常量与待编码的输入变量的乘法形成乘积,并且至少借助该乘积形成已编码的中间变量,并且其中,确定输入常量的乘法逆元,并且乘法逆元用于已编码的中间变量,从而不产生未编码的或者部分未编码的中间结果,和/或在该中间结果中,始终能够识别出潜在地包含在已编码的中间变量中的差错信息。在该计算机程序方面的目的通过提出一种具有用于执行上述方法的程序代码的计算机程序来实现,当该计算机程序在计算机上运行时。在数据处理设备方面的目的通过提出一种用于从已编码的中间变量中提供码转换的结果变量的数据处理设备来实现,该数据处理设备具有:通过输入常量与待编码的输入变量的乘法形成的乘积,至少借助该乘积编码的中间变量,输入常量的乘法逆元,通过使用乘法逆元用于已编码的中间变量而码转换的结果变量,从而不产生未编码的或者部分未编码的中间结果,和/或在该中间结果中,始终能够识别出潜在地包含在已编码的中间变量中的差错信息。到目前为止,代码转换只有通过已编码的变量的完全解码的弯路才是可行的。但是,这也表示高的危险因素。在此,包含在已编码的变量中的差错信息丢失,即无效的已编码的输入也在有效的密码上示出。要求的安全的处理只能通过必须附加地并且取决于硬件地实施的附加的诊断来遵守,并且因此是成本非常高的。现在,这根据本专利技术得以避免。根据本专利技术,现在不是通过除法,而是通过乘法逆元与已编码的中间变量的乘法来实现中间变量的代码转换。在本专利技术中使用乘法逆元并不是容易想到的方法。其原因特别在于,当运算应用于不能被除数整除的被除数时,通常不产生有意义的结果。在此有针对性地使用这种在其他情况下不受欢迎的特性,以便在无效的已编码的变量时也得到有效的已编码的结果。与传统的借助于通过除法的解码和随后的新编码进行代码转换不同,没有未编码的或者部分未编码的中间结果产生。因此,该方法也能够在已编码的运算的内部使用,虽然在该处没有提供独立的检验装置(冗余的硬件)。对于没有附加诊断也行的编码处理的每个纯实施而言,这种特性是重要的前提条件。优选地,至少借助输入常量与待编码的输入变量的乘法形成已编码的中间变量,其中,确定输入常量的乘法逆元,并且其中,乘法逆元与码转换的结果常量的乘积用于已编码的中间变量,从而不产生未编码的或者部分未编码的中间结果。优选地,输入信号和/或输入操作数不仅恒定为零,还能够使用附件的另外的输入信号和/或附件的另外的输入操作数。在此,乘法逆元或者乘法逆元与码转换的结果常量的乘积随后在第一步骤中用于已编码的中间变量。优选地,乘法逆元具有模数为2的n次幂的剩余类环,其中,n表示已编码的中间变量的比特宽度,例如n=32或者n=64。乘法逆元能够例如借助于扩展的欧几里得算法(Euklid'schen Algorithmus)进行计算。在优选的设计方案中忽略数学溢出。由此节省了耗费时间的计算步骤。在另外的优选的设计方案中,通过输入变量与输入常量的乘法,并且通过静态的取决于变量的输入信号以及动态的取决于周期的输入操作数的加法,形成中间变量,其中,中间变量通过以下步骤转换为具有码转换的结果常量、码转换的静态的取决于变量的结果信号和码转换的动态的取决于周期的结果操作数的码转换的结果变量:通过中间变量与第一参数的乘法产生第一中间结果,其中,第一参数是关于输入常量的乘法逆元和码转换的结果常量的乘法积,通过给第一中间结果加上第二参数的加法产生第二中间结果,其中,第二参数是减去输入信号与第一中间结果的乘法积的码转换的结果信号,通过给第二中间结果加上码转换的动态的取决于周期的结果操作数的加法产生第三中间结果,通过从第三中间结果减去第一参数的减法产生码转换的结果变量。容易认知的是,在全部中间结果中,功能上的输入变量满足对于已编码的变量的要求。在代码转换时因此不产生未编码的中间结果,从而通过编码识别出可能的新出现的差错。在示例性的设计方案中,通过使用乘法逆元将潜在存在的差错逆转。例如,通过一减去输入常量乘以2的n次幂来确定码转换的结果常量,即A'=(1-2n*A),其中,n是比特宽度。有利地,码转换的静态的取决于变量的结果信号以及码转换的动态的取决于周期的结果操作数都能自由地进行选择。由此如下地实现代码转换,即将在输入中存在的差错值逆转。如果在实施时在已编码的否定运算中使用编码,那么总共得出没有逆转差错值的运算,因为差错的双重否定进行了补偿。由此能够避免系统地遮盖差错。码转换的结果常量也能够如此形成,即复制输入变量。优选地,在此通过一加上2的n次幂的加法形成结果常量,即A'=2n+1,从而复制输入变量。此外,码转换的静态的取决于变量的结果信号和码转换的动态的取决于周期的结果操作数设置成等于零,即B_x'=0和D'=0。这种编码是有利的,因为例如是AND,OR或者XOR的按位方式的布尔运算能够直接用于这种已编码的操作数。优选地,结果常量设置成等于一,并且同时,码转换的静态的取决于变量的结果信号和码转换的动态的取决于周期的结果操作数设置成等于零,从而使得代码转换是已编码的中间变量的解码,其中,始终能够识别本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201610318627.html" title="在计算机系统中的方法、计算机程序和数据处理设备原文来自X技术">在计算机系统中的方法、计算机程序和数据处理设备</a>

【技术保护点】
一种在计算机系统中用于将已编码的中间变量(z)代码转换为码转换的结果变量(z')的方法,其特征在于,通过输入常量(A)与待编码的输入变量(xf)的乘法形成乘积,并且至少借助所述乘积形成已编码的所述中间变量(z),并且其中,确定所述输入常量(A)的乘法逆元(A‑1),并且所述乘法逆元(A‑1)用于已编码的所述中间变量(z),从而不产生未编码的或者部分未编码的中间结果(R1,R2,R3),和/或在所述中间结果中,始终能够识别出潜在地包含在已编码的所述中间变量(z)中的差错信息。

【技术特征摘要】
2015.06.09 EP 15171102.51.一种在计算机系统中用于将已编码的中间变量(z)代码转换为码转换的结果变量(z')的方法,其特征在于,通过输入常量(A)与待编码的输入变量(xf)的乘法形成乘积,并且至少借助所述乘积形成已编码的所述中间变量(z),并且其中,确定所述输入常量(A)的乘法逆元(A-1),并且所述乘法逆元(A-1)用于已编码的所述中间变量(z),从而不产生未编码的或者部分未编码的中间结果(R1,R2,R3),和/或在所述中间结果中,始终能够识别出潜在地包含在已编码的所述中间变量(z)中的差错信息。2.根据权利要求1所述的在计算机系统中用于将已编码的中间变量(z)代码转换为码转换的结果变量(z')的方法,其特征在于,通过输入常量(A)与待编码的输入变量(xf)的乘法形成乘积,并且至少借助所述乘积形成已编码的所述中间变量(z),并且其中,确定所述输入常量(A)的乘法逆元(A-1),并且其中,所述乘法逆元(A-1)与码转换的结果常量(A')的乘积用于已编码的所述中间变量(z),从而不产生未编码的或者部分未编码的中间结果(R1,R2,R3),和/或在所述中间结果中,始终能够识别出潜在地包含在已编码的所述中间变量(z)中的差错信息。3.根据权利要求1或2所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,输入信号(B_x)和/或输入操作数(D)恒定为零,和/或使用附加的另外的输入信号和/或附加的另外的输入操作数。4.根据前述权利要求中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,所述乘法逆元(A-1)或者所述乘法逆
\t元(A-1)与码转换的结果常量(A')的乘积在第一步骤中用于已编码的所述中间变量(z)。5.根据前述权利要求中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,所述乘法逆元(A-1)具有模数为2的n次幂的剩余类环,其中,n表示已编码的所述中间变量(z)的比特宽度。6.根据前述权利要求中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,忽略数学溢出。7.根据前述权利要求中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,通过使用所述乘法逆元(A-1)将潜在存在的差错(e)逆转。8.根据权利要求1至6中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,通过复制输入变量的方式形成所述结果常量(A')。9.根据前述权利要求中任一项所述的用于将已编码的中间变量(z)代码转换的方法,其特征在于,通过输入变量(xf)与输入常量(A)的乘法,并且通过静态的取决于变量的所述输入信号(B_x)以及动态的取决于周期的所述输入操作数(D)的加法,形成已编码的中间变量(z),其中,所述中间变量(z)通过以下步骤代码转换为具有码转换的结果常量(A')、码转换的静态的取决于变量的结果信号(B_x')和码转换的动态的取决于周期的结果操作数(D')的码转换的结果变量(z'):通过所述中间变量(z)与第一参数(K1)的乘法产生第一中间结果,其中,所述第一参数(K1)是关于所述输入常量(A)的所述乘法逆元(A-1)和码转换的所述结果常量(A')的乘法积,通过给所述第一中间结果加上第二参数(K2)的加法产生第二中间结果,其中,所述第二参数(K2)是减去所述输入信号(B_x)...

【专利技术属性】
技术研发人员:扬·里希特马克西米利安·沃尔特卡尔赫尔曼·威特
申请(专利权)人:西门子公司
类型:发明
国别省市:德国;DE

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

1