基于安全的多设备升级软件方法与流程

文档序号:37589620发布日期:2024-04-18 12:20阅读:10来源:国知局
基于安全的多设备升级软件方法与流程

本发明涉及软件升级,尤其涉及一种基于安全的多设备升级软件方法。


背景技术:

1、随着汽车逐渐智能化,汽车的控制器越来越多,由原来的几个到现在的几十个甚至上百个,因此,控制器设备存在软件升级的需求。目前,智能汽车大多采用空中下载技术(over-the-air technology,ota)对控制器设备进行软件升级,然而,在进行软件升级时,多个控制器设备需要与服务器进行多次交互来下载所需的升级包,导致服务器的压力增大,服务器的资源浪费,软件的安全性低。


技术实现思路

1、本技术通过提供一种基于安全的多设备升级软件打包方法,确保车辆安全的同时,提高软件升级的效率,并且有效避免网络拥堵等情况。

2、本技术提供了一种基于安全的多设备升级软件方法,车辆终端与云服务器建立连接,应用于多个设备的车辆终端和云服务器,其特征在于,在车辆终端和云服务器中预先设置sm2算法的私钥和公钥,包括:在目标时刻,云服务器接收车辆终端发送的车辆信息,所述车辆信息包括车辆标识、设备数据信息,所述设备数据信息包括设备版本信息、配置信息、设备标识信息;云服务器根据接收到的车辆信息,确定待升级设备和对应的升级数据;云服务器对所述待升级设备的升级数据包进行sha256运算得到消息摘要,并使用sm2算法的私钥对消息摘要进行加密,得到数字签名,根据所述待升级设备创建对应的软件升级包,所述软件升级包包括升级数据包、数字签名、云服务器的公钥;云服务器为每个软件升级包分配存储空间并生成对应的路由地址,根据软件升级包对应的路由地址、车辆标识、设备数据信息,得到升级任务信息包,使用sm2算法的公钥对所述升级任务信息包进行加密,得到加密升级任务信息包,发送至车辆终端;车辆终端利用sm2算法的私钥对所述加密升级任务信息包进行解密,获得升级任务信息包;车辆终端根据所述路由地址访问云服务器,下载软件升级包,得到升级数据包、数字签名,利用云服务器的公钥对数字签名进行验签;车辆终端设置存储记录表,用以存储所有设备的升级结果日志和安全日志。

3、优选地,所述云服务器确定待升级设备和对应的升级数据,包括:

4、提取所述车辆信息中的设备数据信息,得到设备标识和设备版本信息,并根据所述设备标识查询预先存储在数据库中的目标设备数据信息;

5、将所述目标设备数据信息中的设备最新版本信息与设备版本信息进行比较,得到比较结果;

6、根据所述比较结果,确定待升级设备,并根据设备版本信息、配置信息,得到与待升级设备匹配的升级数据包。

7、优选地,所述车辆终端利用云服务器的公钥对数字签名进行验签,还包括:

8、使用sm2的公钥对所述数字签名解密,得到第一验证信息;

9、将所述升级任务信息包中的升级数据包与所述第一验证信息进行验证;

10、若一致,则判定数字签名有效,接收软件升级包并进行软件升级;若不一致,拒绝软件升级包,触发安全日志进行记录。

11、优选地,所述方法还包括:

12、车辆终端根据所述待升级设备的设备数据信息,将待升级设备划分为关键设备和次关键设备,并分别为所述关键设备和次关键设备设置升级优先级;

13、车辆终端对所述升级任务信息包进行拆解,并根据所述设备标识将下载的升级数据包分配至对应的待升级设备,处于待升级状态;

14、车辆终端实时获取车辆的行驶速度、网络带宽,设置升级阈值;

15、若满足所述升级阈值,则按照预设的升级优先级对待升级设备依次升级;若未满足所述升级阈值,待升级设备持续处于待升级状态。

16、优选地,所述分别为关键设备和次关键设备设置升级优先级,包括:车辆终端根据存储记录表中的升级日志和安全日志,获取所有待升级设备的历史升级成功率和稳定性,根据历史升级成功率和稳定性分别为关键设备和次关键设备设置升级优先级。

17、优选地,所述方法还包括:获取所有待升级设备的升级数据包的大小,实时检测网络带宽;根据所述网络带宽和升级数据包的大小,获得待升级设备的升级时间和安全裕量;根据所述待升级设备的升级时间和安全裕量,得到待升级设备的升级时间窗口;若所述待升级设备在升级时间窗口内未完成升级,记为目标设备,暂停所述目标设备的升级,并开始下一个待升级设备的升级,直至所有待升级设备升级结束,在满足升级阈值的情况下对所述目标设备进行重新升级。

18、优选地,所述根据升级数据包的大小,获得安全裕量,包括:

19、设置区间阈值,并将升级数据包的大小与所述区间阈值进行比较:

20、若升级数据包的大小大于区间阈值,则将对应的升级时间乘以第一系数得到安全裕量;

21、若升级数据包的大小在区间阈值内,则将对应的升级时间乘以第二系数得到安全裕量;

22、若升级数据包的大小小于区间阈值,则将对应的升级时间乘以第三系数得到安全裕量。

23、优选地,所述根据待升级设备的升级时间和安全裕量,得到待升级设备的升级时间窗口,包括:将所述升级时间与所述安全裕量相加,得到待升级设备的升级时间窗口。

24、优选地,所述方法还包括:若所述目标设备为关键设备,在预设期限内还未进行重新升级,则对所述目标设备进行回滚设置,将所述目标设备的版本信息切换回初始版本信息,以确保车辆的正常运营;若所述目标设备为次关键设备,等待重新升级。

25、优选地,所述云服务器在生成升级任务信息包之后,还包括:创建若干分组,每个分组的容量指标根据所有升级任务信息包的大小进行均衡设置;根据所述待升级设备的优先级顺序依次将每个升级任务信息包填入分组中,并按照优先级顺序排列分组;根据所述分组的排列顺序依次加密发送至车辆终端。

26、本技术中提供的一个或多个技术方案,至少具有如下技术效果或优点:

27、基于sm2算法进行车辆终端和云服务器的加密和解密,该算法具备高速度、高性能和高安全,并且对待升级设备的升级数据包进行sha256运算得到消息摘要,结合sm2算法对消息摘要进行加密得到数字签名,利用sm2算法对数字签名进行验签,以确定升级数据包是否被恶意篡改,提高了软件升级的安全性,避免了车辆在行驶过程中由于下载恶意篡改的升级数据包导致车辆发生故障;云服务器为每个软件升级包分配存储空间并生成对应的路由地址,将路由地址代替升级数据包先作为升级任务信息包的内容发送至车辆终端,避免了升级任务信息包文件过大导致传输网络拥堵,并且车辆终端根据路由地址访问云服务器中的升级数据包,避免升级数据包在传输过程中被二次恶意篡改。通过路由地址下载软件升级包进行升级数据的真伪验证,保证了后续进行软件升级的安全性。

28、通过设置关键设备和次关键设备的升级优先级,可以确保关键设备在升级过程中得到优先处理,有助于保障车辆的基本功能和安全性,确保关键设备始终处于最新、最稳定的状态;通过为设备设置对应的升级时间窗口,可以限制升级操作的时间范围,避免由于特殊原因长时间占用网络资源,有助于减少网络拥堵和资源浪费,提高升级效率;通过根据升级数据包的大小,在升级时间窗口中引入安全裕量,可以有效应对网络波动、传输延迟等不可预见的因素,保证大多数升级操作能够在设定的时间窗口内完成,降低升级失败的风险,避免升级停滞过于繁琐。

29、通过对所有待升级设备的升级任务信息包进行动态分组,并且每个分组的大小均衡,有效了利用了网络带宽,减少了网络拥堵和延迟的可能性,并且基于优先级的顺序和升级任务信息包的大小,进行合理分组,确保了车辆的关键功能的正常使用,实现了更高的升级效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1