软件镜像一致性校验方法及电子设备与流程

文档序号:33534206发布日期:2023-03-22 08:19阅读:48来源:国知局
软件镜像一致性校验方法及电子设备与流程

1.本发明涉及汽车电子领域,特别涉及一种软件镜像一致性校验方法及电子设备。


背景技术:

2.随着汽车电子技术的发展,越来越多的车辆上装配有全数字仪表(full digital cluster,fdc)。全数字仪表一般采用双处理器方案来实现产品的功能,即由微控制器(micro control unit,mcu)和图形控制器(graphic controller,gc)来相互配合实现产品的功能。
3.微控制器一般用于实现业务逻辑、通讯、诊断等功能,其通常具有独立的硬件安全模块(hardware security module,hsm),能够符合一些信息安全法规的要求,例如evita中级要求。
4.图形控制器用于实现人机交互(hmi),其通常不具备独立的硬件安全模块,也就无法满足evita中级要求。
5.在要求全数字仪表整体符合evita中级要求时,这种双处理器方案就无法满足要求。


技术实现要素:

6.本发明解决的问题是提供一种软件镜像一致性校验方法及电子设备,其能够以较低的成本使电子设备符合信息安全等级要求。
7.为了解决上述问题,本发明的一方面提供了一种电子设备,其包括:第一处理模块,包括硬件安全模块;第二处理模块,与所述第一处理模块通过数据总线相连;其中,所述第二处理模块借助于所述第一处理模块中的所述硬件安全模块对其欲加载的软件镜像进行一致性校验。
8.本发明的另一方面提供了一种软件镜像一致性校验方法,适于在电子设备中被执行,其中所述电子设备包括第一处理模块和第二处理模块,所述第一处理模块包括硬件安全模块,所述第二处理模块通过数据总线与所述第一处理模块连接,所述方法包括:所述第二处理模块在加载所述软件镜像前,通过所述数据总线将所述软件镜像和所述软件镜像的签名数据发送给所述第一处理模块;所述第一处理模块在接收到所述软件镜像和所述签名数据之后,通过所述硬件安全模块对所述软件镜像进行验签;所述第一处理模块通过所述数据总线将一致性校验结果发送给所述第二处理模块;以及所述第二处理模块根据所述一致性校验结果确定是否启动所述软件镜像。
9.本发明的又一方面提供了一种电子设备,其包括:第一处理模块,包括硬件安全模块;第二处理模块,与所述第一处理模块通过数据总线相连;以及其上存储有多个指令的计算机可读存储介质,所述多个指令响应于由所述第一处理模块和/或所述第二处理模块执行而实现如前述的软件镜像一致性校验方法。
10.本发明的再一方面提供了一种非易失性计算机可读存储介质,其上存储有适于一
个或多个处理器执行的多个指令,所述多个指令响应于由所述一个或多个处理器执行而实现如前述的软件镜像一致性校验方法。
11.与现有技术相比,上述方案具有以下优点:
12.本发明的电子设备和软件镜像一致性校验方法通过第一处理模块中的硬件安全模块为第二处理模块欲启动的软件镜像进行一致性校验,复用了第一处理模块中的硬件安全模块,能够在第二处理模块不符合信息安全等级(例如evita中级)要求的情况下,使电子设备整体符合信息安全等级(例如evita中级)要求。相较于直接采用符合信息安全等级(例如evita中级)的第二处理模块的技术方案,电子设备的成本较低。
附图说明
13.图1例示了根据本发明一个或多个实施例的电子设备的示意性框图;
14.图2例示了根据本发明一个或多个实施例的软件镜像一致性校验方法的时序图;
15.图3例示了根据本发明一个或多个实施例的软件镜像一致性校验方法的时序图。
具体实施方式
16.在下面的描述中,阐述了许多具体细节以便使所属技术领域的技术人员更全面地了解本发明。但是,对于所属技术领域内的技术人员明显的是,本发明的实现可不具有这些具体细节中的一些。此外,应当理解的是,本发明并不限于所介绍的特定实施例。相反,可以考虑用下面的特征和要素的任意组合来实施本发明,而无论它们是否涉及不同的实施例。因此,下面的方面、特征、实施例和优点仅作说明之用而不应被看作是权利要求的要素或限定,除非在权利要求中明确提出。
17.图1例示了根据本发明一个或多个实施例的电子设备的示意性框图。参考图1所示,电子设备100包括第一处理模块110和第二处理模块120。第一处理模块110包括硬件安全模块(hsm)111。第一处理模块110和第二处理模块120通过数据总线130互相连接。第二处理模块120可以借助于第一处理模块110中的硬件安全模块111对其欲加载的软件镜像进行一致性校验。电子设备100例如可以为车载全数字仪表(fdc)。可以理解,电子设备100还可以是消费电子类产品,例如智能移动电话、平板电脑等。第一处理模块110例如可以为微控制器(mcu),用于实现业务逻辑、通讯、诊断等功能。第二处理模块120为图形控制器(gc),实现人机交互(hmi)等功能。数据总线例如可以为串行外设接口(serial peripheral interface,spi)总线。
18.在一个或多个实施例中,第二处理模块120在记载软件镜像前,通过数据总线130将软件镜像和该软件镜像的签名数据发送给第一处理模块110。其中,签名数据为软件镜像经私钥签名后得到的数据。具体来说,可以对软件镜像进行哈希(hash)处理得到摘要数据,而后使用私钥对摘要数据进行签名(例如采用rsa算法)进而得到签名数据。
19.在数据总线为spi总线的实施例中,第二处理模块120可以将软件镜像和签名数据送入spi总线收发器的发送缓冲区,由spi总线收发器将软件镜像和签名数据发送至第一处理模块110中的spi总线收发器的数据接收缓冲区中。
20.在一个或多个实施例中,第二处理模块120在完成将软件镜像和签名数据发送给第一处理模块110之后,还通过数据总线130发送验签请求至第一处理模块110,以请求第一
处理模块110对软件镜像进行一致性校验。
21.在一个或多个实施例中,第一处理模块110在接收到软件镜像和签名数据之后,通过硬件安全模块111对软件镜像进行验签。在一个或多个实施例中,第一处理模块110先从spi总线收发器的接收数据缓冲区获取软件镜像和签名数据,而后再调用硬件安全模块111对软件镜像进行验签。
22.在一个或多个实施例中,硬件安全模块111例如利用公钥对软件镜像进行验签。具体而言,可以对软件镜像进行哈希(hash)处理得到第一摘要数据,使用公钥对签名数据进行验签得到第二摘要数据,比对第一摘要数据和第二摘要数据以得到一致性校验结果。若第一摘要数据和第二摘要数据相等,则认为软件镜像未经篡改,验签通过。若第一摘要数据和第二摘要数据不相等,则认为软件镜像被篡改,验签失败。
23.在一个或多个实施例中,在硬件安全模块111完成对软件镜像的一致性校验之后,第一处理模块110通过数据总线130将一致性校验结果发送给第二处理模块120。若一致性校验结果为验签通过,则第二处理模块120可以正常启动软件镜像。若一致性校验结果为验签失败,则第二处理模块120重载软件镜像,以进行再次尝试启动软件镜像。
24.电子设备100通过第一处理模块110中的硬件安全模块111为第二处理模块120欲启动的软件镜像进行一致性校验,复用了第一处理模块110中的硬件安全模块111,能够在第二处理模块120不符合信息安全等级(例如evita中级)要求的情况下,使电子设备100整体符合信息安全等级(例如evita中级)要求。相较于直接采用符合信息安全等级(例如evita中级)的第二处理模块的技术方案,电子设备100的成本较低。
25.图2例示了根据本发明一个或多个实施例的软件镜像一致性校验方法的时序图。软件镜像一致性校验方法200例如可以在电子设备100中被执行。软件镜像一致性校验方法200包括如下步骤:
26.步骤201:第二处理模块在加载软件镜像前,通过数据总线将软件镜像和软件镜像的签名数据发送给第一处理模块;
27.步骤207:第一处理模块在接收到软件镜像和签名数据之后,通过硬件安全模块对软件镜像进行验签;
28.步骤209:第一处理模块通过数据总线将一致性校验结果发送给第二处理模块;以及
29.步骤211:第二处理模块根据一致性校验结果确定是否启动软件镜像。
30.在步骤201,第二处理模块120可以将软件镜像和签名数据送入spi总线收发器的发送缓冲区,由spi总线收发器将软件镜像和签名数据发送至第一处理模块110中的spi总线收发器的数据接收缓冲区中。
31.可选地,在第一处理模块110收到第二处理模块120发送来的软件镜像和签名数据之后,第一处理模块110还发送确认收到软件镜像和签名数据的消息给第二处理模块120(步骤203)。
32.在一个或多个实施例中,第二处理模块120在将软件镜像和签名数据发送给第一处理模块110之后,还通过数据总线130发送验签请求给第一处理模块110(步骤205)。
33.在步骤207,第一处理模块110在接收到软件镜像和签名数据之后,通过硬件安全模块111对软件镜像进行验签。在第二处理模块120还发送验签请求的实施例中,第一处理
模块110接收到验签请求后,调用硬件安全模块111对软件镜像进行验签。在一个或多个实施例中,第一处理模块110先从spi总线收发器的接收数据缓冲区获取软件镜像和签名数据,而后再调用硬件安全模块111对软件镜像进行验签。
34.在一个或多个实施例中,硬件安全模块111例如利用公钥对软件镜像进行验签。具体而言,可以对软件镜像进行哈希(hash)处理得到第一摘要数据,使用公钥对签名数据进行验签得到第二摘要数据,比对第一摘要数据和第二摘要数据以得到一致性校验结果。若第一摘要数据和第二摘要数据相等,则认为软件镜像未经篡改,验签通过。若第一摘要数据和第二摘要数据不相等,则认为软件镜像被篡改,验签失败。
35.在步骤209,第一处理模块110通过数据总线130将一致性校验结果发送给第二处理模块120。
36.在步骤211,第二处理模块120根据一致性校验结果确定是否启动软件镜像。若一致性校验结果为验签通过,则第二处理模块120可以正常启动软件镜像。若一致性校验结果为验签失败,则第二处理模块120重载软件镜像,以进行再次尝试启动软件镜像。
37.图3例示了根据本发明一个或多个实施例的软件镜像一致性校验方法的时序图。软件镜像一致性校验方法200’例如可以在电子设备100中被执行。软件镜像一致性校验方法200’包括如下步骤:
38.步骤201’:第二处理模块在加载软件镜像前,通过数据总线发送验签请求给第一处理模块110;
39.步骤203’:第一处理模块通过数据总线回复第二处理模块同意验签请求;
40.步骤205’:第二处理模块通过数据总线将软件镜像和软件镜像的签名数据发送给第一处理模块;
41.步骤207:第一处理模块在接收到软件镜像和签名数据之后,通过硬件安全模块对软件镜像进行验签;
42.步骤209:第一处理模块通过数据总线将一致性校验结果发送给第二处理模块;以及
43.步骤211:第二处理模块根据一致性校验结果确定是否启动软件镜像。
44.软件镜像一致性校验方法200’与软件镜像一致性校验方法200的主要差别在于,软件镜像一致性校验方法200’中第二处理模块120先发送验签请求给第一处理模块110(步骤201’),在第一处理模块110回复同意验签请求(步骤203’)之后,第二处理模块120才发送软件镜像和签名数据给第一处理模块110。
45.软件镜像一致性校验方法200’中是在第一处理模块110同意验签请求之后,第二处理模块120才发送软件镜像和签名数据。如此,可以避免第二处理模块发送了软件镜像和签名数据之后,但第一处理模块110由于硬件安全模块111被占用等缘故无法进行对软件镜像进行验签的情况的发生。
46.软件镜像一致性校验方法200和软件镜像一致性校验方法200’通过第一处理模块110中的硬件安全模块111为第二处理模块120欲启动的软件镜像进行一致性校验,复用了第一处理模块110中的硬件安全模块111,能够在第二处理模块120不符合信息安全等级(例如evita中级)要求的情况下,使电子设备100整体符合信息安全等级(例如evita中级)要求。相较于直接采用符合信息安全等级(例如evita中级)的第二处理模块的技术方案,电子
设备100的成本较低。
47.继续参考图1,电子设备100还可以包括计算机可读存储介质140。计算机可读存储介质140上存储有多个指令,该多个指令响应于由第一处理模块110和/或第二处理模块120执行而实现如前述的软件镜像一致性校验方法200或软件镜像一致性校验方法200’。
48.虽然本发明已以较佳实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内所作的各种更动与修改,均应纳入本发明的保护范围内,因此本发明的保护范围应当以权利要求所限定的范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1