CN111079194A - 计算装置和用于该计算装置的运行方法 - Google Patents

计算装置和用于该计算装置的运行方法 Download PDF

Info

Publication number
CN111079194A
CN111079194A CN201910992878.0A CN201910992878A CN111079194A CN 111079194 A CN111079194 A CN 111079194A CN 201910992878 A CN201910992878 A CN 201910992878A CN 111079194 A CN111079194 A CN 111079194A
Authority
CN
China
Prior art keywords
computing device
memory area
check
computer program
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910992878.0A
Other languages
English (en)
Inventor
J.施拉姆
A.米雷尔
R.荣格
C.兰斯
A.韦伯
F.齐格勒
F.斯顿夫
I.塞格尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN111079194A publication Critical patent/CN111079194A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

一种计算装置,所述计算装置被构造用于,访问被分配给所述计算装置的存储装置的至少一个存储区,其中所述计算装置被构造用于,促使对所述存储装置的至少一个第一存储区的第一检验,并且根据所述第一检验来控制所述计算装置的运行,其中所述第一存储区与用于所述计算装置的第一计算机程序相关联。

Description

计算装置和用于该计算装置的运行方法
技术领域
本发明涉及一种计算装置,该计算装置被构造用于,访问被分配给该计算装置的存储装置的至少一个存储区。
本发明此外涉及一种用于运行这样的计算装置的方法。
背景技术
这样的计算装置由DE 10 2008 041 360 A1已知。
发明内容
优选的实施方式涉及如下计算装置,该计算装置被构造用于,访问被分配给该计算装置的存储装置的至少一个存储区,其中该计算装置被构造用于,促使(veranlassen)对存储装置的至少一个第一存储区的第一检验,并且根据所述第一检验来控制计算装置的运行,其中该第一存储区与用于该计算装置的第一计算机程序相关联(assoziieren)。由此有利地提供如下可能性:例如鉴于相对于能预给定的内容的偏差来对第一存储区的内容进行检验。由此,可以有利地例如防止通过该计算装置来执行不安全的或者通过攻击者所损害(kompromittieren)的计算机程序。
在其他优选实施方式中,可以在第一存储区中存在第一计算机程序或其至少一部分和/或如下数据,所述数据属于该第一计算机程序或者在执行第一计算机程序时能够使用,其中所述数据例如是用于第一计算机程序的参数。
在其他优选实施方式中规定,第一检验包含:确定至少一个第一存储区是否具有能预给定的第一内容。
在其他优选实施方式中规定,在使用基于密钥的消息认证码、CMAC(Cipher-basedMessage Authentication Code(基于密文的消息认证码))的情况下执行第一存储区的检验。由此实现特别有效的检验。关于CMAC方法的示例性的构型方案的互联网出版物例如能够在 调用。
在其他优选实施方式中规定:计算装置被构造用于借助形成CMAC(CMAC-Bildung)来自身执行第一检验。
在其他优选实施方式中规定:计算装置被构造用于,使得通过其他单元、尤其是通过密码模块或硬件安全模块来执行该第一检验。为此,计算装置可以例如将表征(charakterisieren)所期望的第一检验的参数(例如在存储装置之内的存储区或地址区)传送给所述其他单元。然后,所述其他单元能够按照被传送的参数来执行该检验。接着,所述其他单元能够将所述检验的结果例如用信号通知给计算装置。
在其他优选实施方式中规定,该密码模块具有:优选被集成到密码模块中的存储单元,用于存储针对所述至少一个第一存储区的参考布局(Referenzlayout)和/或至少一个参考值。在优选实施方式中,该参考值能够例如代表用于能预给定的存储内容的CMAC值,该CMAC值例如与在至少一个第一存储区的检验中已通过密码模块所确定的CMAC值能够相比较。只要是所确定的CMAC值与该参考值偏差,就可以推论出所检验的存储区的存储内容的不容许的改变。针对存储装置的其他存储区可以以相应的方式设置其他参考值。
在其他优选实施方式中规定,计算装置和/或存储装置和/或密码模块分别被构造为集成电路,并且计算装置和/或存储装置和/或密码模块被布置在相同的半导体衬底上。
在其他优选的实施方式中规定,计算装置被构造用于,如果第一检验已经得出了:所述至少一个第一存储区具有能预给定的第一内容,则执行第一计算机程序,其中该计算装置尤其被构造用于,如果第一检验已经得出了:所述至少一个第一存储区不具有能预给定的第一内容,则并不执行该第一计算机程序。由此确保:在第一存储区的可能操纵的情况下并不执行第一计算机程序,由此防止可能进一步损害计算装置或存储装置。
在其他优选实施方式中规定,该计算装置被构造用于,如果第一检验已经得出了所述至少一个第一存储区不具有能预给定的第一内容,则执行以下步骤:促使鉴于能预给定的第二内容来对存储装置的至少一个第二存储区进行的第二检验,其中该第二存储区与用于该计算装置的第二计算机程序相关联(因此例如包含所述第二计算机程序的至少一部分和/或用于所述第二计算机程序的参数);如果第二检验已经得出了第二存储区具有能预给定的第二内容,则执行第二计算机程序。由此,可以在第一存储区的可能的操纵的情况下有利地必要时执行与该第二存储区相关联的第二计算机程序。
在其他优选的实施方式中规定,第二计算机程序被构造用于,写入(beschreiben)、尤其是重新编程存储装置的一个或多个存储区。由此,在第一存储区的可能操纵的情况下可以有利地必要时以能预给定的(第一)内容或能预给定的第一数据对第一存储区进行(重新)写入,由此,之前鉴于第一计算机程序被操纵的存储装置或计算装置的按照规定的运行是能够恢复的。
在其他优选实施方式中规定,第二计算机程序被构造用于,以能预给定的数据、尤其是以能预给定的第一内容来写入第一存储区。以这种方式,可以例如恢复所期望的初始状态。
在其他优选实施方式中规定,所述第二程序是启动加载程序(Bootloader)。在其他优选实施方式中,上面示例性地根据(可能被操纵的)第一存储区所描述的原理可以有利地也被应用到所述存储装置(或其他存储装置,其能够被分配给计算装置)的一个或多个其他存储区上。
在其他优选实施方式中规定,该计算装置被构造用于,如果第二检验已经得出了:第二存储区不具有能预给定的第二内容,则采取差错反应(Fehlerreaktion)。由此可以防止对计算装置或存储装置的进一步损害。在其他实施方式中也可以规定,在第一存储区的第一检验之后就已经采取了差错反应。
其他优选实施方式涉及用于运行计算装置的方法,其中该计算装置被构造用于,访问被分配给计算装置的存储装置的至少一个存储区,其中所述计算装置促使对存储装置的至少一个第一存储区的第一检验,并且根据第一检验来控制计算装置的运行,其中该第一存储区与用于该计算装置的第一计算机程序相关联。
在其他优选的实施方式中规定,所述检验包含:确定所述至少一个第一存储区是否具有能预给定的第一内容,其中所述计算装置尤其是a)自身来执行第一检验,和/或b)使得通过其他单元、尤其是通过密码模块来执行所述第一检验。
在其他优选的实施方式中规定,如果第一检验已经得出了:所述至少一个第一存储区具有能预给定的第一内容或所述能预给定的第一内容,则所述计算装置执行第一计算机程序,其中尤其是如果第一检验已经得出了:所述至少一个第一存储区不具有所述能预给定的第一内容,则所述计算装置并不执行第一计算机程序。
在其他优选的实施方式中规定,如果所述第一检验已经得出了所述至少一个第一存储区不具有能预给定的第一内容,则该计算装置执行以下步骤:促使鉴于能预给定的第二内容来对存储装置的至少一个第二存储区进行的第二检验,其中该第二存储区与用于该计算装置的第二计算机程序相关联;如果第二检验已经得出了第二存储区具有能预给定的第二内容则执行第二计算机程序。
在其他优选的实施方式中规定,所述计算装置尤其是借助第二计算机程序来写入、尤其是重新编程存储装置的一个或多个存储区,其中以能预给定的数据、尤其是以能预给定的第一内容来尤其是写入所述第一存储区。
其他优选实施方式涉及:按照所述实施方式的计算装置的应用和/或按照所述实施方式的方法的应用,所述计算装置和/或所述方法用于将故障的和/或被操纵的存储装置转变到有功能能力的(funktionsfähig)、尤其是完好(integren)的状态。
附图说明
本发明的其他特征、应用可能性和优点从接下来对本发明的实施例的描述中得出,其中所述实施例在附图的这些图中被示出。在此,所有所描述的或所示出的特征自身地或者以任意组合地构成本发明的主题,而无关于其在权利要求中的组合或其引用关系以及无关于其在说明书或附图中的表达或表示。在附图中:
图1 示意性地示出按照一种实施方式的计算装置的被简化的框图;
图2 示意性地示出按照另一种实施方式的计算装置的被简化的框图;
图3 示意性地示出按照一种实施方式的方法的被简化的流程图;
图4 示意性地示出按照另一种实施方式的方法的被简化的流程图;和
图5 示意性地示出按照另一种实施方式的方法的被简化的流程图。
具体实施方式
图1示意性地示出按照一种实施方式的计算装置100的被简化的框图。在优选的实施方式中,计算装置100可以具有至少一个计算核心102和/或微处理器和/或微控制器等。计算装置100被构造用于,访问被分配给计算装置100的存储装置200的至少一个存储区210,220,230(例如闪存EEPROM和/或易失性存储器等),例如以便加载通过计算装置100能够执行的程序和/或相应的数据。
当前,存储装置200例如具有第一存储区210、第二存储区220、第三存储区230以及其他存储区202。在其他存储区202中例如存储被构造为启动管理程序(Boot-Manager)BM的用于计算装置100的程序,该程序例如对计算装置100的启动过程(在接通或重置或初始化阶段之后的启动)进行控制。第一存储区210与用于计算装置100的第一计算机程序PRG1相关联,因此包含用于该计算装置100的第一计算机程序PRG1的至少一部分和/或对于执行该第一计算机程序PRG1能够使用的数据(例如参数)。第二存储区220与用于计算装置100的第二计算机程序PRG2相关联,因此包含用于该计算装置100的第二计算机程序PRG2的至少一部分和/或对于执行该第二计算机程序PRG2能够使用的数据。对于第三存储区230适用可比的方案。
在其他优选实施方式中设置其他单元300、尤其是密码模块300,该密码模块同样能够访问存储装置200,并且该密码模块例如具有计算核心302和/或微处理器和/或微控制器等。
在其他优选实施方式中,参照图2的被简化的框图,计算单元100a(与按照图1的计算单元100可比)和/或存储装置200a(与按照图1的存储装置200可比)和/或密码模块300a(与按照图1的密码模块300可比)分别构造为集成电路100a,200a,300a,其中该计算装置100a和/或存储装置200a和/或密码模块300a被布置在同一半导体衬底1002上。这些元件100a、200a、300a因此有利地构成单芯片系统(英文:SoC)1000。
计算装置100,100a被构造用于,促使存储装置200,200a的第一存储区210的第一检验。这通过按照图3的流程图的步骤400来示出。计算装置100,100a此外被构造用于,根据第一检验来控制计算装置100,100a的运行,参照步骤410。
通过检验400而有利地提供如下可能性:例如鉴于相对于能预给定的内容的偏差来对第一存储区210的内容进行检验。由此,可以有利地例如防止通过该计算装置100,100a来执行不安全的或者通过攻击者所损害的计算机程序PRG1。也能够借助该检验来识别出用于通过计算装置100,100a能够执行的计算机程序PRG1的被改变的或被操纵的参数。
计算装置100,100a的运行的控制410可以在其他优选实施方式中例如包括:至少一个其他计算机程序PRG2的执行和/或促使其他检验和/或采取差错反应等。
在其他优选实施方式中规定,第一检验包含:确定至少一个第一存储区210是否具有能预给定的第一内容(例如第一计算机程序PRG1和/或相应的参数)。
在其他优选实施方式中规定,在使用基于密钥的消息认证码、CMAC(Cipher-basedMessage Authentication Code(基于密文的消息认证码))的情况下执行第一检验(以及必要时对存储装置200,200a的存储区的其他检验)。由此实现特别有效的检验。关于CMAC方法的示例性的构型方案的互联网出版物例如能够在
Figure 619544DEST_PATH_IMAGE001
调用。
在其他优选实施方式中规定,所述计算装置100,100a被构造用于,例如借助形成CMAC来自身执行第一检验。在其他优选实施方式中,可以为此例如将相应的计算机程序例如集成到启动管理程序BM中。
在其他优选实施方式中规定,计算装置100,100a被构造用于,能够通过其他单元300、尤其是通过密码模块300或硬件安全模块300来执行该第一检验。为此,计算装置100,100a可以例如将表征所期望的第一检验的参数(例如在存储装置200,200a之内的存储区或地址区)传送给所述其他单元300,300a,参照图1中的箭头A1。然后,所述其他单元300,300a能够按照被传送的参数来执行该检验(例如借助CMAC)。接着,所述其他单元300,300a能够将所述检验的结果例如用信号通知给计算装置100,100a,参照箭头A1。
在其他优选实施方式中规定,该密码模块300,300a具有:优选被集成到密码模块中的存储单元302,用于存储针对所述至少一个第一存储区210的参考布局(Referenzlayout)和/或至少一个参考值R(图1)。在优选实施方式中,该参考值R能够例如代表用于第一存储区210的能预给定的第一存储内容的CMAC值,该CMAC值例如与在至少一个第一存储区210的检验中已通过密码模块300,300a所确定的CMAC值能够相比较。只要是所确定的CMAC值与该参考值R偏差,就可以推论出所检验的存储区210的存储内容的不容许的改变。
在其他优选实施方式中规定,所述计算装置100,100a被构造用于,如果第一检验已经得出了所述至少一个第一存储区210具有能预给定的第一内容,则执行第一计算机程序PRG1,其中所述计算装置100,100a尤其被构造用于,如果第一检验已经得出了所述至少一个第一存储区210不具有能预给定的第一内容,则并不执行第一计算机程序PRG1。由此确保:在第一存储区210的可能操纵的情况下并不执行第一计算机程序PRG1,由此防止可能进一步损害计算装置100,100a或存储装置200,200a。
在其他优选实施方式中规定,所述计算装置100,100a被构造用于,如果第一检验已经得出了所述至少一个第一存储区210不具有能预给定的第一内容,也即可能已经被操纵或者以其他方式被无意地改变,则执行以下步骤:促使450(参照按照图4的流程图)鉴于能预给定的第二内容来对存储装置200,200a的至少一个第二存储区220(图1)进行的第二检验,其中该第二存储区与用于该计算装置100,100a的第二计算机程序PRG2相关联(因此例如包含所述第二计算机程序PRG2的至少一部分和/或用于所述第二计算机程序PRG2的参数);如果第二检验已经得出了第二存储区220具有能预给定的第二内容则执行452(图4)第二计算机程序PRG2。由此,可以在第一存储区210的可能操纵的情况下有利地必要时执行与该第二存储区220相关联的第二计算机程序PRG2。
按照图4的所述促使450或者其后接下来的检验可以与按照图3的步骤400类似地进行。因此,第二存储区220的检验必要时也可以通过计算装置100,100a自身和/或通过其他单元300,300a(例如密码模块)来执行。
在其他优选实施方式中规定:第二计算机程序PRG2(图1)被构造用于,写入、尤其是重新编程存储装置200,200a的一个或多个存储区210,230。由此,在例如第一存储区210的可能操纵的情况下有利地必要时以能预给定的(第一)内容或能预给定的第一数据对第一存储区210进行(重新)写入,由此,之前鉴于第一计算机程序PRG1被操纵的存储装置200,200a或计算装置100,100a的按照规定的运行是能够恢复的。
在其他优选实施方式中规定:第二计算机程序PRG2被构造用于,以能预给定的数据、尤其是以能预给定的第一内容来写入第一存储区210。以这种方式可以例如恢复所期望的初始状态,也即例如改写可能被操纵的存储内容。
在其他优选实施方式中规定,所述第二计算机程序是PRG2是启动加载程序。在其他优选实施方式中,上面示例性地根据(可能被操纵的)第一存储区210所描述的原理可以有利地也被应用到所述存储装置200,200a(或其他存储装置(未示出),其能够被分配给计算装置100,100a)的一个或多个其他存储区220,230上。
例如,第二计算机程序PRG2可被实施为启动加载程序,该启动加载程序能够(重新)编程所述存储装置200,200a的一个或多个存储区210,230。
在其他优选实施方式中规定,所述计算装置100,100a被构造用于,如果第二检验已经得出了:第二存储区220(例如启动加载程序)不具有能预给定的第二内容,则采取差错反应。由此可以防止对计算装置100,100a或存储装置200,200a的可能进一步的损害,尤其是例如防止被操纵的启动加载程序的执行。
其他优选实施方式涉及上面参照图3所描述的方法以及相应的实施方式,参照例如图4。
其他优选实施方式涉及按照所述实施方式的计算装置100,100a的应用和/或按照所述实施方式的方法的应用,所述计算装置和/或方法用于将故障的和/或被操纵的存储装置200,200a转变到
Figure 442007DEST_PATH_IMAGE002
、尤其是完好的状态。
图5示意性地示出按照其他优选实施方式的方法的被简化的流程图。该区域100'包括基本上(i.w.)在计算装置100,100a(图1,2)侧所执行的步骤,其中在块BM'中所包含的步骤例如通过计算装置100的启动管理程序BM(或者在计算装置100的启动管理程序BM的控制下)被执行,并且该区域300’包括基本上在密码模块300侧所执行的步骤。
在步骤S1中,计算装置100启动。在其他可选实施方式中,其中所述其他可选实施方式在下文中进一步予以阐述,计算装置100的启动必要时也可以通过密码模块300来释放,参照可选步骤S01至S05。然而首先由此出发:计算装置100已经被启动,参照步骤S1。
在步骤S2中,计算装置100(与按照图3的步骤400类似地)促使对存储装置200的至少第一存储区210的第一检验。与此相应地,表征所述第一检验的信息被传输给密码模块300或300',参照双箭头A1。在步骤S20中,密码模块执行第一存储区210(图1)的第一检验C1,例如在应用CMAC方法的情况下执行第一存储区的第一检验,其中例如根据第一存储区210的当前存储内容来形成CMAC值,该CMAC值通过密码模块来与用于第一存储区210的能预给定的第一内容的CMAC参考值R(图1)相比较。表征第一检验的结果的比较结果被输送给计算装置100,参照双箭头A1。
可替代地或补充性地,第一存储区210的第一检验也可以通过计算装置自身来执行,参照可选块S2'和可选的双箭头A1’。可选块S2'可以例如具有与块C1可比较的内容(形成CMAC,与参考值R比较)。
在步骤S3中,计算装置100检验:第一检验C1(优选地通过密码模块300来执行,可替代地或补充性地必要时也借助块S2')是否已经得出了至少一个第一存储区210具有能预给定的第一内容。只要这是该情况,就分支到步骤S4,该步骤开始(einleiten)第一计算机程序PRG1的执行,参照步骤S5,S5'。与此相应地,按照图5,步骤S5,S5'用符号表示地在块PRG1'中被综合(zusammenfassen)。因为第一检验C1已经得出了第一存储区210具有自身的能预给定的第一内容,也即能够由此出发:第一存储区210或其中存在的信息(第一计算机程序PRG1和/或所属的数据,诸如参数)并没有已经被操纵或者以其他方式不期望地被改变,使得第一计算机程序PRG1的安全执行是可能的。
只要是借助步骤S3中的检验确定出第一存储区210的第一检验C1已经得出了:第一存储区210不具有能预给定的第一内容,就按照图5来分支到步骤S6。在步骤S6中进行:(与按照图4的步骤450类似地)促使鉴于能预给定的第二内容来对存储装置200的至少一个第二存储区220进行的第二检验C2,其中该第二存储区与第二计算机程序PRG2相关联。相应的信息借助双箭头A2被传送给(zuleiten)密码模块300,300',该密码模块在步骤S21中执行第二检验C2(与第一检验C1可比)。该第二检验C2的结果被通知给计算装置100,100',同样参照双箭头A2。
只要是第二检验C2得出(参照图5中的步骤S7):第二存储区220具有能预给定的第二内容,就分支到步骤S9,该步骤S9包含执行与第二存储区220相关联的第二计算机程序PRG2,参照步骤S10,S11。当前,第二计算机程序PRG2例如是计算装置100的启动加载程序。与此相应地,按照图5的步骤S10,S11在块PRG2',BL'中被综合。按照步骤S9的启动加载程序BL'的执行在此有利地实现:例如将被操纵的或者被识别为有错的第一存储区210重新写入,尤其是以第一计算机程序PRG1或以相应数据来重新写入,也即恢复按照规定的、未操纵的状态。换言之,在应用按照所述实施方式的原理情况下,可以执行第一存储区210的安全的重新编程。
然而,参照步骤S7,只是要是第二检验C2得出第二存储区220不具有能预给定的第二内容,也即也许可能已经同样地被操纵或者以其他方式不期望地被改变,就分支到步骤S8,该步骤S8包含差错反应。在其他优选实施方式中,差错反应S8例如可以包括对计算装置100的去激活(Deaktivieren)和/或用信号通知该差错状态给外部单元(未示出)和/或检验或者促使检验其他存储区230。
在其他优选实施方式中可以在控制设备中、尤其是针对车辆、例如机动车来使用计算装置100,100a或SoC 1000(图2),例如用于控制机动车的其他系统和/或内燃机的运行。按照所述实施方式的原理有利地实现了:尤其是在启动管理程序BM(图1)和启动加载器BL,PRG2的完整性被给定的情况下,使得鉴于自身的软件、例如鉴于第一计算机程序PRG1已经被操纵的控制设备能够再次转变成完好的控制设备或者转变到完好的状态。
在其他优选实施方式中,启动管理程序BM和/或启动加载器BL被置于存储装置200(或其他存储装置(未示出),其中计算装置能够访问所述其他存储装置)的特地被确保的存储区202中,由此使得操纵进一步困难化。例如,启动管理程序BM和/或启动加载器BL能够被写入到OTP(one time programmable(一次性可编程))存储区中或自己的受保护的区中,其中所述OTP存储区仅能够一次性地被写入,其中所述自己的受保护的区例如能够借助密码来确保。
按照所述实施方式的原理有利地实现恢复存储装置200,200a或计算装置100,100a或包含该计算装置100,100a的目标系统(例如控制设备)的完好状态,其中如果该计算装置100,100a在目标系统中被装入,那么因此这种恢复能够有利地在现场被应用。由此有利地必要时避免目标系统或控制设备的替换和/或对控制设备的重新操作,例如借助维修或返回分析(Rückläufer-Analyse)。
在其他优选实施方式中,必要时可以通过密码模块300来防止或释放对计算装置100的启动,参照按照图5的可选步骤S01至S05。由此,可以进一步提高计算装置100的运行的安全性。在步骤S01中,密码模块300,300'启动。在步骤S02中,密码模块300,300'执行计算装置100的启动管理程序BM,BM'的检验,由此能够确定出对启动管理程序BM,BM'的可能存在的操纵。按照步骤S02的检验可以例如同样借助CMAC方法在与能预给定的参考值R(图1)的比较下被执行(也即存储区202的例如基于CMAC的检验,其中该存储区具有启动管理程序BM)。在步骤S03中检验,按照步骤S02的检验是否(例如由于被操纵的启动管理程序BM)得出差错。如果这是该情况,则分支到步骤S05,在该步骤S05中计算装置100被去激活。如果这不是该情况,则分支到步骤S04,在步骤S04中密码模块300释放计算装置100的启动,参照箭头A01。在按照步骤S03的检验被执行之前,密码模块300能够事先将计算装置100例如保持在复位(Reset)状态,从而使该计算装置100不能启动。由此,得出计算装置100的特别安全的运行。一方面启动管理程序BM,BM'的完整性可以被检验,并且计算装置100,100'的启动在对启动管理程序BM,BM'的成功检验之后才能够被释放,参照步骤S01至S04。然后,计算装置100,100’自身可以检验其他存储区210,220或者与其相关联的计算机程序PRG1,PRG2或者使得通过该密码模块300来进行检验,参照步骤C1,C2。此外,在优选的实施方式中,给出对可能不期望地被改变的或者被操纵的存储区的重新编程的可能性。

Claims (14)

1.一种计算装置(100;100a),所述计算装置被构造用于,访问被分配给所述计算装置(100;100a)的存储装置(200;200a)的至少一个存储区(210,220,230),其中所述计算装置(100;100a)被构造用于,促使(400)对所述存储装置(200)的至少一个第一存储区(210)的第一检验(C1),并且根据所述第一检验(C1)来控制(410)所述计算装置(100;100a)的运行,其中所述第一存储区与用于所述计算装置(100;100a)的第一计算机程序(PRG1;SW2)相关联。
2.根据权利要求1所述的计算装置(100;100a),其中所述第一检验(C1)包含:确定所述至少一个第一存储区(210)是否具有能预给定的第一内容。
3.根据上述权利要求其中至少之一所述的计算装置(100;100a),其中所述计算装置(100;100a)被构造用于,
a) 自身来执行所述第一检验(C1), 和/或
b)使得通过其他单元(300;300a)、尤其是通过密码模块(300;300a)来执行所述第一检验(C1)。
4.根据权利要求2至3其中至少之一所述的计算装置(100;100a),其中所述计算装置(100;100a)被构造用于,如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)具有所述能预给定的第一内容,则执行所述第一计算机程序(PRG1;SW2),并且其中所述计算装置(100;100a)尤其被构造用于,如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)不具有所述能预给定的第一内容,则并不执行所述第一计算机程序(PRG1;SW2)。
5.根据权利要求2至4其中至少之一所述的计算装置(100;100a),其中所述计算装置(100;100a)被构造用于,如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)不具有所述能预给定的第一内容,则执行以下步骤:促使(450)鉴于能预给定的第二内容来对所述存储装置(200)的至少一个第二存储区(220)进行的第二检验(C2),其中所述第二存储区与用于所述计算装置(100;100a)的第二计算机程序(PRG2;BL)相关联;如果所述第二检验(C2)已经得出了所述第二存储区(PRG2)具有所述能预给定的第二内容,则执行(452)所述第二计算机程序(PRG2;BL)。
6.根据权利要求5所述的计算装置(100;100a),其中所述第二计算机程序(PRG2;BL)被构造用于,写入、尤其是重新编程所述存储装置(200)的一个或多个存储区。
7.根据权利要求6所述的计算装置(100;100a),其中所述第二计算机程序(PRG2;BL)被构造用于,以能预给定的数据、尤其是以能预给定的第一内容来写入所述第一存储区(210)。
8.根据权利要求5至7其中至少之一所述的计算装置(100;100a),其中所述计算装置(100;100a)被构造用于,如果所述第二检验(C2)已经得出了:所述第二存储区(220)不具有所述能预给定的第二内容,则采取差错反应(S8)。
9.用于运行计算装置(100;100a)的方法,所述计算装置被构造用于,访问被分配给所述计算装置(100;100a)的存储装置(200;200a)的至少一个存储区(210,220,230),其中所述计算装置(100;100a)促使(400)对所述存储装置(200)的至少一个第一存储区(210,220,230)的第一检验(C1),并且根据所述第一检验(C1)来控制(410)所述计算装置(100;100a)的运行,其中所述第一存储区与用于所述计算装置(100;100a)的第一计算机程序(PRG1;SW2)相关联。
10.根据权利要求9所述的方法,其中所述第一检验(C1)包含:确定所述至少一个第一存储区(210)是否具有能预给定的第一内容,其中所述计算装置(100;100a)尤其是:a)自身来执行所述第一检验(C1), 和/或 b)使得通过其他单元(300;300a)、尤其是通过密码模块(300;300a)来执行所述第一检验(C1)。
11.根据权利要求9至10其中至少之一所述的方法,其中如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)具有能预给定的第一内容或所述能预给定的第一内容,则所述计算装置(100,100a)执行所述第一计算机程序(PRG1;SW2),其中尤其是如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)不具有所述能预给定的第一内容,则所述计算装置(100;100a)并不执行所述第一计算机程序(PRG1;SW2)。
12.根据权利要求10至11其中至少之一所述的方法,其中如果所述第一检验(C1)已经得出了:所述至少一个第一存储区(210)不具有所述能预给定的第一内容,则所述计算装置(100;100a)执行以下步骤:促使(450)鉴于能预给定的第二内容来对所述存储装置(200;200a)的至少一个第二存储区(220,230)进行的第二检验(C2),其中所述第二存储区与用于所述计算装置(100;100a)的第二计算机程序(PRG2;BL)相关联;如果所述第二检验(C2)已经得出了所述第二存储区(220,230)具有所述能预给定的第二内容,则执行(452)所述第二计算机程序(PRG2;BL)。
13.根据权利要求12所述的方法,其中所述计算装置(100;100a)借助所述第二计算机程序(PRG2;BL)来写入、尤其是重新编程所述存储装置(200)的一个或多个存储区(210,230),其中以能预给定的数据、尤其是以所述能预给定的第一内容来尤其是写入所述第一存储区(210)。
14.根据权利要求1至8其中至少之一所述的计算装置(100;100a)的和/或根据权利要求9至13其中至少之一所述的方法的应用,其中所述计算装置和/或所述方法用于将故障的和/或被操纵的存储装置(200)转变到有功能能力的、尤其是完好的状态。
CN201910992878.0A 2018-10-19 2019-10-18 计算装置和用于该计算装置的运行方法 Pending CN111079194A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102018217969.7 2018-10-19
DE102018217969.7A DE102018217969A1 (de) 2018-10-19 2018-10-19 Recheneinrichtung und Betriebsverfahren hierfür

Publications (1)

Publication Number Publication Date
CN111079194A true CN111079194A (zh) 2020-04-28

Family

ID=70310446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910992878.0A Pending CN111079194A (zh) 2018-10-19 2019-10-18 计算装置和用于该计算装置的运行方法

Country Status (2)

Country Link
CN (1) CN111079194A (zh)
DE (1) DE102018217969A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020210100A1 (de) 2020-08-10 2022-02-10 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Überwachen eines Betriebs einer nichtflüchtigen Speichereinrichtung

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1506813A (zh) * 2002-10-21 2004-06-23 从海量存储设备中可靠和安全地更新和恢复固件
CN101772770A (zh) * 2007-07-24 2010-07-07 西门子公司 用于检验存储在存储器的预定存储区域中的数据的完整性的方法和装置
CN102804194A (zh) * 2009-05-12 2012-11-28 诺基亚公司 用于提供应用安全性的方法、装置和计算机程序
CN103455354A (zh) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备
CN104182242A (zh) * 2013-05-28 2014-12-03 华为技术有限公司 一种系统启动方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008041360A1 (de) 2008-08-20 2010-02-25 Robert Bosch Gmbh Steuergerät für ein Fahrzeug und Verfahren für eine Datenaktualisierung für ein Steuergerät für ein Fahrzeug

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1506813A (zh) * 2002-10-21 2004-06-23 从海量存储设备中可靠和安全地更新和恢复固件
CN101772770A (zh) * 2007-07-24 2010-07-07 西门子公司 用于检验存储在存储器的预定存储区域中的数据的完整性的方法和装置
CN102804194A (zh) * 2009-05-12 2012-11-28 诺基亚公司 用于提供应用安全性的方法、装置和计算机程序
CN104182242A (zh) * 2013-05-28 2014-12-03 华为技术有限公司 一种系统启动方法及装置
CN103455354A (zh) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备

Also Published As

Publication number Publication date
DE102018217969A1 (de) 2020-04-23

Similar Documents

Publication Publication Date Title
KR101237527B1 (ko) 보안 부팅 메커니즘을 포함하는 컴퓨터 시스템
US9389793B2 (en) Trusted execution and access protection for embedded memory
TWI436229B (zh) 用以提供安全開機架構之系統與方法
CN102298529B (zh) 为系统提供硅集成代码
US7793090B2 (en) Dual non-volatile memories for a trusted hypervisor
US20140250290A1 (en) Method for Software Anti-Rollback Recovery
US11270003B2 (en) Semiconductor device including secure patchable ROM and patch method thereof
EP2427845A1 (en) Mechanism for updating software
CN107567629A (zh) 在可信执行环境容器中的动态固件模块加载器
EP4287054A1 (en) Computer implemented method for updating a safety software code, computer hardware device, computer program and a computer-readable medium
US11461479B2 (en) Computing device and method for operating same
CN113348110A (zh) 电子控制装置、电子控制装置的安全验证方法
CN111079194A (zh) 计算装置和用于该计算装置的运行方法
EP3440586B1 (en) Method for write-protecting boot code if boot sequence integrity check fails
KR20230082388A (ko) 차량 제어기의 부트로더 검증 장치 및 그 방법
WO2016184180A1 (zh) 一种系统安全启动方法及装置
CN113935011A (zh) 用于执行控制设备的安全启动序列的方法
CN116208353A (zh) 一种校验固件的方法、装置、网卡、芯片系统及服务器
JP2023510122A (ja) インタフェースを備える装置およびインタフェースを備える装置の動作方法
US20230252153A1 (en) Electronic control device and updating method for control software
US20230129942A1 (en) Method for locking a rewritable non-volatile memory and electronic device implementing said method
US20230094673A1 (en) Information handling systems and related methods to prevent tampering and verify the integrity of non-volatile data stored within non-volatile memory
Mäkipää Comparison of OTA update frameworks for Linux based IoT devices
CN113935012A (zh) 用于执行控制设备的安全启动序列的方法
KR20240102424A (ko) 보안성을 강화한 리프로그램 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination