在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法和系统技术方案

技术编号:36866281 阅读:45 留言:0更新日期:2023-03-15 19:11
提供了一种使用多级安全验证来执行安全引导程序的方法。该程序包括,在微控制器内,参考表以识别第一定义的存储器区域,该第一定义的存储器区域包括对启动微控制器的应用编程有用的代码,其中,应用编程可操作以向车辆提供微控制器的功能,以及第二定义的存储器区域,该第二定义的存储器区域包括对微控制器的应用编程的操作有用的编程和数据。该程序进一步包括,在第一级内,验证第一区域的内容的真实性以及基于验证第一区域的内容的真实性启动微控制器的应用编程。该程序进一步包括,在第二级内,验证第二区域的内容的真实性以及操作应用编程以基于验证第二区域的内容的真实性来提供所述功能。性来提供所述功能。性来提供所述功能。

【技术实现步骤摘要】
在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法和系统


[0001]本公开大体上涉及一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法和系统。

技术介绍

[0002]微控制器是一种器件,包括可用于操作编程的计算机化处理器。计算机化处理器操作存储在数字存储器中的编程或编程后的指令。在某些情况下,应用、软件应用或数据可以存储在代码闪存或数据闪存中。操作安全协议以检查存储在存储器中的应用和/或数据的真实性。

技术实现思路

[0003]提供了一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法。该方法包括在微控制器内操作安全引导程序。安全引导程序包括参考安全引导信息表以识别包括对启动微控制器的应用编程有用的初始化代码的第一定义的存储器区域和包括对微控制器的应用编程的操作有用的编程和数据的第二定义的存储器区域。应用编程可操作以向车辆提供微控制器的功能。该程序进一步包括,在多级安全验证的第一级内,验证第一定义的存储器区域的内容的真实性以及基于验证第一定义的存储器区域的内容的真实性来启动微控制器的应用编程。该程序进一步包括,在多级安全验证的第二级内,验证第二定义的存储器区域的内容的真实性以及基于验证第二定义的存储器区域的内容的真实性来操作应用编程以向车辆提供微控制器的功能。
[0004]在一些实施例中,该方法进一步包括基于验证第二定义的存储器区域的内容的真实性而选择性地向微控制器提供密钥信息。
[0005]在一些实施例中,第二定义的存储器区域进一步包括对应用编程有用的校准数据。
[0006]在一些实施例中,该方法进一步包括参考安全引导信息表以识别未使用的第三定义的存储器区域,并且在多级安全验证的第三级内,验证第三定义的存储器区域的内容的真实性。
[0007]在一些实施例中,验证第二定义的存储器区域的内容的真实性包括激活应用编程的一部分以产生输出消息,将输出消息与存储的验证数据表值进行比较,以及基于比较验证第二定义的存储器区域的内容的真实性。
[0008]在一些实施例中,验证第二定义的存储器区域的内容的真实性包括激活应用编程的一部分以产生包括计算的消息摘要的多个输出消息,将多个输出消息中的每一个与对应的存储的验证数据进行比较,并且基于比较验证第二定义的存储器区域的内容的真实性。
[0009]在一些实施例中,该方法进一步包括激活应用编程的一部分以产生输出消息并监控用于产生输出消息的时间段。验证第二定义的存储器区域的内容的真实性包括确认用于
产生输出消息的时间段小于阈值时间段。
[0010]在一些实施例中,第一定义的存储器区域和第二定义的存储器区域在微控制器的代码闪存器件内。
[0011]在一些实施例中,安全引导信息表存储在代码闪存器件内。
[0012]在一些实施例中,该方法进一步包括接收更新的应用编程,该更新的应用编程包括包含验证消息摘要的应用带签名的报头(application signed header),以及将更新的应用编程存储在微控制器内。在一些实施例中,该方法进一步包括激活更新的应用编程的一部分以产生包括计算的消息摘要的多个输出消息,将计算的消息摘要与验证消息摘要进行比较,以及将多个输出消息的一部分存储为微控制器内的验证数据表中的值。
[0013]在一些实施例中,在微控制器内存储更新的应用编程包括在更新的编程内引用应用带签名的报头,将应用带签名的报头与存储在微控制器内的签名验证数据进行比较,以及基于应用带签名的报头与签名验证数据匹配在微控制器内存储更新的应用编程。
[0014]在一些实施例中,参考安全引导信息表来识别第二定义的存储器区域包括识别第二定义的存储器区域的起始地址以及区域长度。
[0015]根据一个替代实施例,提供了一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法。该方法包括在微控制器内操作安全引导程序。安全引导程序包括参考安全引导信息表以识别包括对启动微控制器的应用编程有用的初始化代码的第一定义的存储器区域和包括对微控制器的应用编程的操作有用的编程和数据的第二定义的存储器区域。应用编程可操作以向车辆提供微控制器的功能。该程序进一步包括,在多级安全验证的第一级内,验证第一定义的存储器区域的内容的真实性以及基于验证第一定义的存储器区域的内容的真实性来启动微控制器的应用编程。该程序进一步包括在多级安全验证的第二级内,尝试验证第二定义的存储器区域的内容的真实性。当验证了第二定义的存储器区域的内容的真实性时,该方法进一步包括基于验证第二定义的存储器区域的内容的真实性来操作应用编程以向车辆提供微控制器的功能。当第二定义的存储器区域的内容的真实性未被验证时,该方法进一步包括重置微控制器。
[0016]在一些实施例中,该方法进一步包括,当第二定义的存储器区域的内容的真实性未被验证时,隔离微控制器。
[0017]在一些实施例中,该方法进一步包括,当第二定义的存储器区域的内容的真实性未被验证时,通知车辆的操作者。
[0018]在一些实施例中,该方法进一步包括,当第二定义的存储器区域的内容的真实性未被验证时,激活车辆中的冗余微控制器。
[0019]根据一个替代实施例,提供了一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的系统。该系统包括微控制器,该微控制器包括可操作以执行微控制器的应用编程的应用处理器。应用编程可操作以向车辆提供微控制器的功能。微控制器进一步包括存储应用编程的代码闪存器件、操作安全引导程序的硬件安全模块处理器。安全引导程序包括参考安全引导信息表以识别代码闪存器件内的第一定义的存储器区域,包括用于启动微控制器的应用编程的初始化代码和代码闪存器件内的第二定义的存储器区域,包括对微控制器的应用编程的操作有用的编程和数据。该安全引导程序进一步包括,在多级安全验证的第一级内,验证第一定义的存储器区域的内容的真实性以及基于验证第一定义的存
储器区域的内容的真实性来启动微控制器的应用编程。该安全引导程序进一步包括,在多级安全验证的第二级内,验证第二定义的存储器区域的内容的真实性以及基于验证第二定义的存储器区域的内容的真实性来操作应用编程以向车辆提供微控制器的功能。
[0020]在一些实施例中,安全引导信息表存储在代码闪存器件上。
[0021]本专利技术还包括如下方案:方案1. 一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法,包括:在所述微控制器内操作所述安全引导程序,包括:参考安全引导信息表以识别:第一定义的存储器区域,包括用于启动所述微控制器的应用编程的初始化代码,其中,所述应用编程可操作用于向所述车辆提供所述微控制器的功能;以及第二定义的存储器区域,包括对所述微控制器的应用编程的操作有用的编程和数据;在所述多级安全验证的第一级内,验证所述第一定义的存储器区域的内容的真实性;基于验证所述第一定义的存储器区域的所述内容的真实性启动所述微控制器的所述应用编程;在所述多级安全验证的第二级内,验证所述第二定义的存储器区域的内容的真本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在车辆的微控制器中使用多级安全验证来执行安全引导程序的方法,包括:在所述微控制器内操作所述安全引导程序,包括:参考安全引导信息表以识别:第一定义的存储器区域,包括用于启动所述微控制器的应用编程的初始化代码,其中,所述应用编程可操作用于向所述车辆提供所述微控制器的功能;以及第二定义的存储器区域,包括对所述微控制器的应用编程的操作有用的编程和数据;在所述多级安全验证的第一级内,验证所述第一定义的存储器区域的内容的真实性;基于验证所述第一定义的存储器区域的所述内容的真实性启动所述微控制器的所述应用编程;在所述多级安全验证的第二级内,验证所述第二定义的存储器区域的内容的真实性;以及基于验证所述第二定义的存储器区域的所述内容的所述真实性,操作所述应用编程以向所述车辆提供所述微控制器的所述功能。2.根据权利要求1所述的方法,进一步包括:基于验证所述第二定义的存储器区域的所述内容的所述真实性,选择性地向所述微控制器提供密钥信息。3.根据权利要求1所述的方法,其中,所述第二定义的存储器区域进一步包括对所述应用编程有用的校准数据。4.根据权利要求1所述的方法,进一步包括:参考所述安全引导信息表以识别未使用的第三定义的存储器区域;以及在所述多级安全验证的第三级内,验证所述第三定义的存储器区域的内容的真实性。5.根据权利要求1所述的方法,其中,验证所述第二定义的存储器区域的所述内容的真实性包括:激活所述应用编...

【专利技术属性】
技术研发人员:B
申请(专利权)人:通用汽车环球科技运作有限责任公司
类型:发明
国别省市:

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

1