The authenticity of the program executed by the processor is determined by a security element that computes hash codes over a reordered segment of the program executed by the processor that is known to be a true copy. The authenticity of the same segments is reordered by the processor and provided to the security element, which computes the second hash code for the reordered segments received from the processor. If the hash value for a segment is the same, the program segment is the same. If the hash value for any segment is different, the two programs are different. When the program of the processor is determined to be different from the known good copy, the processor can be stopped or an alarm signal can be generated.
【技术实现步骤摘要】
【国外来华专利技术】用于通过使用安全元件来快速认证程序的方法和装置
技术介绍
机动车辆中的许多系统和特征由处理器控制,所述处理器即微处理器、微控制器和数字信号处理器,其中的每一个执行被存储在非暂时性存储器设备中的程序指令,所述非暂时性存储器设备通过总线被耦合到处理器。(如本文中所使用的,术语“总线”是指一组电气并联的导体,其形成在处理器与处理器外围的设备、包括非暂时性存储器设备之间的主要传送路径。)这样的存储器设备可以位于远离处理器处,而存储程序指令的其他非暂时性存储器设备驻留在与执行指令的处理器相同的硅管芯上。当程序指令被改变的时候,执行程序的处理器将相应地改变它所控制的功能或系统。因而有可能简单地通过改变由控制车辆功能或系统的处理器所执行的程序指令来改变车辆的操作特性。因而对于车辆制造商而言变得重要的是维持控制车辆功能的程序的完整性或真实性。换言之,对于车辆制造商而言重要的是阻止执行或使用控制车辆内的处理器的软件的未经授权的修改。提供车辆内的关键功能的一些处理器需要执行程序真实性检查以便确保处理器的程序尚未被不恰当地修改,即不是未经(制造商)授权的。为了快速地检查程序的真实性,一些处理器使用专用安全元件,其可以在处理器外部、即在不同的硅管芯上,或在处理器“内部”、即在相同的硅管芯上,其示例将会是具有在相同硅管芯上的多个处理器的集成电路。无论安全元件可位于哪里,它由车辆的制造商配置(编程)以确认或验证由相关联的处理器所执行的程序的真实性。使用安全元件来验证处理器的程序的真实性呈现至少两个挑战。首先,在处理器与安全元件之间的通信不应当允许某人 ...
【技术保护点】
1.一种用于通过使用被操作地耦合到位于车辆处的处理器的安全元件来为所述位于车辆处的处理器认证计算机程序(程序)的方法,所述位于车辆处的处理器被配置成执行程序,所述程序包括被布置在序列中的可执行指令,所述方法包括:/n对从所述程序的第一拷贝的第一预定分段所获得的预定数目的指令进行重排序,所述第一拷贝已知为真实的,所述重排序根据第二序列,其不同于所述第一序列;/n计算从所述第一拷贝所获得的所述经重排序的预定数目的指令的第一散列码,所述第一散列码通过使用第一散列函数来被计算;/n将第一所计算的散列码存储在安全元件中;/n在位于车辆处的处理器中:/n对从所述程序的第二拷贝的相同的预定分段所获得的相同预定数目的指令进行重排序,所述程序的第二拷贝获得自位于车辆处的处理器,所述位于车辆处的处理器也耦合到所述元件,所述第二拷贝的真实性是未知的,来自所述第二拷贝的指令的重排序根据相同的第二序列;/n将从所述第二拷贝的预定分段所获得的经重排序的第一数目的指令提供到安全元件;/n在所述安全元件中:/n计算从所述第二拷贝的预定分段所获得的所述第一数目的指令的第二散列码,所述第二散列码由安全元件通过使用第一散列 ...
【技术特征摘要】
【国外来华专利技术】20170419 US 15/4910711.一种用于通过使用被操作地耦合到位于车辆处的处理器的安全元件来为所述位于车辆处的处理器认证计算机程序(程序)的方法,所述位于车辆处的处理器被配置成执行程序,所述程序包括被布置在序列中的可执行指令,所述方法包括:
对从所述程序的第一拷贝的第一预定分段所获得的预定数目的指令进行重排序,所述第一拷贝已知为真实的,所述重排序根据第二序列,其不同于所述第一序列;
计算从所述第一拷贝所获得的所述经重排序的预定数目的指令的第一散列码,所述第一散列码通过使用第一散列函数来被计算;
将第一所计算的散列码存储在安全元件中;
在位于车辆处的处理器中:
对从所述程序的第二拷贝的相同的预定分段所获得的相同预定数目的指令进行重排序,所述程序的第二拷贝获得自位于车辆处的处理器,所述位于车辆处的处理器也耦合到所述元件,所述第二拷贝的真实性是未知的,来自所述第二拷贝的指令的重排序根据相同的第二序列;
将从所述第二拷贝的预定分段所获得的经重排序的第一数目的指令提供到安全元件;
在所述安全元件中:
计算从所述第二拷贝的预定分段所获得的所述第一数目的指令的第二散列码,所述第二散列码由安全元件通过使用第一散列函数来被计算;
确定所述第一和第二散列码是否是相同的;
由此,如果所述第一和第二散列码由安全元件确定成不相同,则从安全元件向处理器提供抑制信号,所述抑制信号使得处理器变更程序的执行。
2.根据权利要求1所述的方法,其中变更程序执行的步骤包括阻止处理器执行程序的第二拷贝。
3.根据权利要求1所述的方法,其中变更程序执行的步骤包括通过处理器生成警报信号。
4.根据权利要求1所述的方法,其中所述处理器被配置成请求安全元件认证程序的第二拷贝。
5.根据权利要求1所述的方法,其中所述安全元件被配置成如果处理器不请求认证则请求对程序的第二拷贝的认证。
6.根据权利要求1所述的方法,其中所述用于对从所述程序的第一拷贝的第一预定分段所获得的预定数目的指令进行重排序并且计算第一散列码的步骤由不是安全元件的部分的处理器执行。
7.根据权利要求1所述的方法,其中所述用于对从所述程序的第一拷贝的第一预定分段所获得的预定数目的指令进行重排序并且计算第一散列码的步骤由机动车辆制造商执行,并且其中存储第一所计算的散列码的步骤在从制造商装运车辆之前被执行。
8.根据权利要求1所述的方法,其中用于对从所述程序的第二拷贝的相同预定分段所获得的相同预定数目的指令进行重排序并且将从第二拷贝的预定分段所获得的经重排序的第一数目的指令提供到安全元件的...
【专利技术属性】
技术研发人员:BJ法雷尔,J施韦格勒,SK达什,
申请(专利权)人:大陆汽车系统公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。