当前位置: 首页 > 专利查询>罗伯特专利>正文

用于对控制设备进行安全更新的方法技术

技术编号:32446092 阅读:41 留言:0更新日期:2022-02-26 08:13
本发明专利技术涉及一种用于对控制设备进行安全更新的方法,该控制设备包括:主机,该主机被设立为执行更新程序和一个或多个应用程序;存储器,该存储器包含程序和数据;和硬件安全模块(HSM),该硬件安全模块被设立为检查存储器的存储区的完整性以及禁止和准许对存储器的写访问,该方法包括:启动(6、8)主机和HSM;通过HSM来禁止(12)对存储器的写访问;通过HSM来检查(16)存储器的包含更新程序的第一存储区的完整性;而且如果在该检查的情况下确认第一存储区的完整性,则通过HSM来准许(18)对存储器的写访问,并且启动更新程序。并且启动更新程序。并且启动更新程序。

【技术实现步骤摘要】
用于对控制设备进行安全更新的方法


[0001]本专利技术涉及一种用于对控制设备进行安全更新的方法以及一种用于执行该方法的计算单元和一种用于执行该方法的计算机程序。

技术介绍

[0002]在机器和车辆中使用可编程控制设备,以便控制这些机器和车辆或者还有这些机器和车辆的组件。例如,机动车可包含用于发动机控制、用于制动系统等等的控制设备。这些控制设备包括处理器,该处理器具有一个或者通常具有多个处理器内核(也简称为主机或主机系统),所述处理器内核执行存储在存储器中的应用程序,以便实现控制设备的控制功能。机器或车辆的制造商在生产机器或车辆时通常利用特定于制造商的应用程序来对在此使用的控制设备进行重新编程。同样,由于现代机器和车辆的耐久性,控制设备的控制功能必须能与不断变化的要求适配。即必须能够执行对控制设备的更新或重新编程,也就是说存储在存储器中的数据和程序应该能够被更改。
[0003]出于安全原因,必须防止:存储在控制设备或那里的微处理器或者微控制器的存储器中的应用软件或数据以未经允许的方式被更改。为此,可以针对存储器使用基于密码的写保护,该写保护可以通过硬件被取消和激活。只有当在输入密码之后取消了该存储器保护时,控制设备的存储器才能被更改或被重写,例如加载新软件或者将其它数据写到存储器中。密码针对每个控制设备被单独生成并且由所谓的硬件安全模块HSM来管理,该硬件安全模块将该密码存储在为此所设置的存储区中。如果应该执行更新,则由想要执行对所存储的软件或数据的更新或更改的人员或应用或者人员为此所使用的编程设备来要求并检验硬件安全模块的密码。通常并没有提供对控制设备的更新或重新编程过程的进一步保护。

技术实现思路

[0004]按照本专利技术,提出了具有专利独立权利要求的特征的一种用于对控制设备进行安全更新的方法以及一种用于执行该方法的计算单元和一种用于执行该方法的计算机程序。有利的设计方案是从属权利要求以及随后的描述的主题。
[0005]按照本专利技术,通过硬件安全模块一直阻止对存储器的写保护的取消,直至编程软件、也就是说更新程序已被认证,这通过对其中包含该更新程序的第一存储区的完整性检查来实现。通过该完整性检查,可以查明该存储区以及借此该更新程序是否已经以未经允许的方式被更改。只有当在该检查的情况下确认第一存储区的完整性时,写访问才被HSM准许并且该更新程序被启动。借此,增加了对控制设备的应用软件防止篡改的保护。
[0006]主机或主机系统包括处理器,该处理器被设立为执行软件或计算机程序(简称为程序),以便实现控制系统的功能。主机可包括其它元件,比如工作存储器(例如随机存取存储器,random access memory,RAM),通信接口,尤其是用于与存储器、HSM和外部设备通信的通信接口,和/或类似的元件。软件包含或存储在控制设备的非易失性存储器、例如闪速
存储器、硬盘或SSD(solid state disk(固态硬盘))中。控制设备的存储器能重写。除非另有注明,术语“存储器”就应被理解为控制设备的存储器。该软件一方面可包括至少一个应用程序,该应用程序用于当该应用程序被主机执行时实现控制设备的控制功能,而该软件另一方面可包括更新程序(编程软件),该更新程序主要用于当该更新程序被主机执行时利用软件(程序数据)或数据来对存储器或该存储器的部分进行重写。也就是说,借助于更新程序可以对控制设备进行更新或重新编程,该更新程序在某种程度上可以说是用于对控制设备进行重新编程的编程软件。更新可涉及:程序,所述程序的运行决定控制设备的功能;和/或对于控制设备的功能来说所需的数据,比如初始化参数或程序参数。在更新或重新编程时,存储器或存储区完全或部分地利用更新数据(新程序、也就是说软件,和/或其它新数据)来被重写。如有必要,更新程序也许可执行其它行动,例如确定哪些程序/数据必须被更新,或者在更新之后促使对控制设备的重启。
[0007]硬件安全模块,简称HSM,提供加密功能,这些加密功能可被主机使用,以便保护安全关键的功能、比如多个控制设备彼此间的通信。为此,HSM尤其是管理秘密密码(密文)和/或加密密钥,并且优选地以硬件来实现加密方法。这些密钥由HSM存储在存储器的为此所设置的区域内和/或存储在HSM存储器、也就是说HSM自己的存储器中。HSM包括处理器(该处理器不同于主机处理器),并且可以与主机分开地实施或者与主机或主机处理器以及存储器一起集成在芯片中(那么,HSM和主机在某种程度上可以说通过该芯片上的不同的处理器内核来形成或映射)。HSM被设立为:提供针对存储器的写保护,也就是说禁止或准许对存储器的写访问。只有当写访问被准许时,才能执行更新,该更新需要对存储器的重写。HSM还被设立为检查存储区的完整性,以便检查包含在相应的存储区中的计算机程序或软件和/或所包含的数据的真实性。
[0008]在完整性检查的情况下,确定相对应的存储区的内容是否相对于已知正确的内容而言未经更改。为此,例如可以计算存储在存储区中的数据的校验值或哈希值,并且将该校验值或哈希值与在已知该存储区包含正确的、未被篡改的软件和/或数据的先前时间点所计算出的值进行比较。优选地,对于完整性检查来说,将MAC、也就是说消息认证码(Message Authentication Code)进行对照。在计算MAC时,除了原始消息、这里是存储在存储区中的数据或这些数据的哈希值之外,加入HSM所管理的秘密密钥。由此,可以防止所谓的碰撞攻击(或这里是原像攻击)。优选地,使用所谓的CMAC(基于密码的消息认证码(Cipher

based Message Authentication Code))。
[0009]优选地,该方法在启动更新程序之后还包括:通过更新程序,确定是否应该进行更新;如果确定不应该进行更新,则通过HSM来禁止写访问;如果确定应该进行更新,则对控制设备进行更新,其中该更新包括通过更新程序将更新数据写到存储器中并且然后通过HSM来禁止写访问和/或对控制设备进行重启;而且通过主机来执行一个或多个应用程序中的至少一个应用程序。在执行(所述一个或多个应用程序中的)至少一个应用程序之前,该方法还优选地包括:通过HSM来检查包含该至少一个应用程序的第二存储区的完整性;而且如果在该检查的情况下未确认第二存储区的完整性,则阻止对该至少一个应用程序的执行。
[0010]这些设计方案是有利的,因为如果不应该进行更新,则控制设备的实际功能无延迟地被启动,而且也保证了应用程序的真实性,即该应用程序在准许写访问期间未曾被篡改。
[0011]该方法可包括:在准许写访问之前要求并检验密码。这适宜地被执行,以便检查想要执行更新并且为此对存储器进行重写的人员和/或设备或应用是否被授权这样做。
[0012]优选地,检查第一存储区和/或第二存储区的完整性包括:将消息认证码(MAC,Message Authentication Code)进行对照。在计算MAC时,使用由HSM来管理的秘密密钥,该秘密密钥提供了防止对相应存储区的篡改的附加的安全性本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于对控制设备进行安全更新的方法,所述控制设备包括:主机,所述主机被设立为执行更新程序和一个或多个应用程序;存储器,所述存储器包含程序和数据;和硬件安全模块HSM,所述硬件安全模块被设立为检查所述存储器的存储区的完整性以及禁止和准许对所述存储器的写访问,所述方法包括:启动(6、8、40)所述主机和所述HSM;通过所述HSM来禁止(12、42)对所述存储器的写访问;通过所述HSM来检查(16、44)所述存储器的包含所述更新程序的第一存储区的完整性;如果在所述检查的情况下确认所述第一存储区的完整性,则通过所述HSM来准许(18、58)对所述存储器的写访问,并且启动所述更新程序。2.根据权利要求1所述的方法,所述方法包括:在启动所述更新程序之后,通过所述更新程序,确定(62)是否应该进行更新;如果确定不应该进行更新,则通过所述HSM来禁止(26、70)对所述存储器的写访问;如果确定应该进行更新,则对所述控制设备进行更新(66),其中所述更新包括通过所述更新程序将更新数据写到所述存储器中并且然后通过所述HSM来禁止(70)所述写访问和/或对所述控制设备进行重启;通过所述主机,执行(30、78)所述一个或多个应用程序中的至少一个应用程序。3.根据权利要求2所...

【专利技术属性】
技术研发人员:A
申请(专利权)人:罗伯特
类型:发明
国别省市:

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

1