CN117041048A - 车辆系统升级方法、ota升级文件云端处理方法及电子设备 - Google Patents

车辆系统升级方法、ota升级文件云端处理方法及电子设备 Download PDF

Info

Publication number
CN117041048A
CN117041048A CN202310948764.2A CN202310948764A CN117041048A CN 117041048 A CN117041048 A CN 117041048A CN 202310948764 A CN202310948764 A CN 202310948764A CN 117041048 A CN117041048 A CN 117041048A
Authority
CN
China
Prior art keywords
upgrade file
file
signature
ota
ota upgrade
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310948764.2A
Other languages
English (en)
Inventor
杨明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Faw Beijing Software Technology Co ltd
FAW Group Corp
Original Assignee
Faw Beijing Software Technology Co ltd
FAW Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Faw Beijing Software Technology Co ltd, FAW Group Corp filed Critical Faw Beijing Software Technology Co ltd
Priority to CN202310948764.2A priority Critical patent/CN117041048A/zh
Publication of CN117041048A publication Critical patent/CN117041048A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种车辆系统升级方法、OTA升级文件云端处理方法、OTA升级文件车端处理方法及电子设备,车辆系统升级方法包括,获取OTA升级文件包;对OTA升级文件进行加密处理,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护;将加密处理后的OTA升级文件远程发送;将接收的加密处理后的OTA升级文件,进行解密,并校验判断;若,解密后的OTA升级文件校验为真,则解密后的OTA升级文件用于本地车辆系统升级;其中,解密过程为加密过程的逆过程。通过上述方案,多层加密,增加了破解难度,使升级文件的数据获得了多重保护,使解密校验非易得,保证数据的安全;做完整性保护,保证数据完整有效。

Description

车辆系统升级方法、OTA升级文件云端处理方法及电子设备
技术领域
本申请涉及系统升级领域,尤其涉及车辆系统升级方法、OTA升级文件云端处理方法、OTA升级文件车端处理方法及电子设备。
背景技术
车机OTA升级过程需要做好信息安全校验以防止出现安全问题。虽然已公布专利CN202211435184.5提出了对OTA升级的安全措施,但提出的措施侧重于对升级设备进行安全验证,没有关于对升级文件进行相关加密解密签名校验等安全验证,存在安全漏洞。
因此,为了进一步提升车机OTA升级过程的安全性,需要一种对升级文件进行信息安全防护的措施,通过加密、解密、校验等手段,提高信息安全性。
发明内容
本发明的目的在于提供一种车辆系统升级方法、OTA升级文件云端处理方法、OTA升级文件车端处理方法及电子设备,至少解决上述的一个技术问题。
本发明提供了下述方案:
根据本发明的一个方面,提供一种车辆系统升级方法,所述车辆系统升级方法包括:
获取OTA升级文件包;
对OTA升级文件进行加密处理,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护;
将加密处理后的OTA升级文件远程发送;
将接收的加密处理后的OTA升级文件,进行解密,并校验判断;
若,解密后的OTA升级文件校验为真,则解密后的OTA升级文件用于本地车辆系统升级;
其中,解密过程为加密过程的逆过程。
根据本发明的二个方面,提供一种OTA升级文件云端处理方法,所述OTA升级文件云端处理方法包括:
云端服务器接收OTA升级文件包;
云端服务器向车端发送OTA升级文件包;
其中,对OTA升级文件包进行加密后发送,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护后,发送。
进一步的,所述对OTA升级文件包进行加密后发送包括:
云端服务器使用SHA512算法对所述OTA升级文件包进行哈希计算,获取对应SHA512算法的哈希值;
将所述OTA升级文件包中文件名称以及对应SHA512算法的哈希值写入signature.txt文件;
使用签名私钥对signature.txt文件进行签名计算,生成签名数据;
将signature.txt文件、签名数据以及OTA升级文件压缩处理,生成升级文件压缩包;
对所述升级文件压缩包进行加密后发送。
进一步的,所述对所述升级文件压缩包进行加密后发送包括:
对所述升级文件压缩包进行SHA256运算,获取对应SHA256算法的哈希值,进行完整性保护。
进一步的,包括,
对signature.txt文件使用签名证书对文件进行签名计算,生成签名数据signature.p7。
根据本发明的三个方面,提供一种OTA升级文件车端处理方法,所述OTA升级文件车端处理方法包括:
车机系统接收来自云端服务器的所述升级文件压缩包;
车机系统解密接收的所述升级文件压缩包,并对所述升级文件压缩包解解压缩,获取所述OTA升级文件;
校验所述OTA升级文件是否为真;
若,OTA升级文件校验结果均为真,则车机系统根据OTA升级文件做系统升级。
进一步的,所述车机系统解密接收的所述升级文件压缩包,并对所述升级文件压缩包解密,获取OTA升级文件包括:
进行SHA256运算,解密接收的所述升级文件压缩包;
对比SHA256的哈希值,验证文件是否完整;
若,文件完整,则对解密后的所述升级文件进行解压缩,获得signature.txt文件、签名数据以及OTA升级文件。
进一步的,所述校验所述OTA升级文件是否为真包括:
使用签名证书对signature.txt文件和签名数据进行验签计算;
根据SHA512算法计算对应SHA512算法的哈希值,与signature.txt文件进行对比,判断所述OTA升级文件是否被篡改;
若,所述OTA升级文件没有被篡改,则将所述OTA升级文件用于车机系统的升级。
进一步的,包括:
进行验签计算,与signature.p7签名数据比对,校验signature.txt文件是否被篡改;
若,没有被篡改,则所述OTA升级文件用于车辆系统升级。
根据本发明的四个方面,提供一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行所述车辆系统升级方法的步骤。
通过上述方案,获得如下有益的技术效果:
本申请通过在云端,将哈希计算给升级文件进行加密,再通过签名计算,进一步加密,再压缩打包后,做完整性保护,增加了破解难度,使升级文件的数据获得了多重保护。
本申请通过在车机端,进行加密工作的逆运算,获得升级文件,利用车机设备唯一性身份和预先设置的解密校验算法,使解密校验非易得,保证数据的安全。
本申请通过完整性保护和完整性测试,防止传输过程中,数据丢失和损坏,使数据解密和校验在数据完整的前提下进行,保证数据安全的同时还保证数据的有效。
附图说明
图1是本发明一个或多个实施例提供的一种车辆系统升级方法的流程图。
图2是本发明一个或多个实施例提供的一种OTA升级文件云端处理方法的流程图。
图3是本发明一个或多个实施例提供的一种OTA升级文件车端处理方法的流程图。
图4是本发明一个或多个实施例提供的一种车辆系统升级装置的结构图。
图5是本发明一个具体实施例的云服务端加密流程示意图。
图6是本发明一个具体实施例的车端解密校验流程示意图。
图7是本发明一个或多个实施例提供的车辆系统升级方法的一种电子设备结构框图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明一个或多个实施例提供的一种车辆系统升级方法的流程图。
如图1所示的车辆系统升级方法包括:
步骤S1,获取OTA升级文件包;
步骤S2,对OTA升级文件进行加密处理,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护;
步骤S3,将加密处理后的OTA升级文件远程发送;
步骤S4,将接收的加密处理后的OTA升级文件,进行解密,并校验判断;
步骤S5,若,解密后的OTA升级文件校验为真,则解密后的OTA升级文件用于本地车辆系统升级;
其中,解密过程为加密过程的逆过程。
通过上述方案,获得如下有益的技术效果:
本申请通过在云端,将哈希计算给升级文件进行加密,再通过签名计算,进一步加密,再压缩打包后,做完整性保护,增加了破解难度,使升级文件的数据获得了多重保护。
本申请通过在车机端,进行加密工作的逆运算,获得升级文件,利用车机设备唯一性身份和预先设置的解密校验算法,使解密校验非易得,保证数据的安全。
本申请通过完整性保护和完整性测试,防止传输过程中,数据丢失和损坏,使数据解密和校验在数据完整的前提下进行,保证数据安全的同时还保证数据的有效。
具体而言,车机OTA升级过程需要做好信息安全校验以防止出现安全问题。通过对升级文件进行相关加密解密签名校验等安全验证,减少被拦截破解的可能。
可以在云端一侧,对OTA文件进行加密处理,等车辆一端接收到OTA文件后,再进行解密、校验等。
云端通过对OTA文件,先进行哈希值计算,连同哈希值和对应的文件名,再进行数字签名处理,经过压缩处理后再发送。发送前还要进行完整性的保护措施,防止数据受损,不能获得有效的OTA文件。
车辆按照云端处理OTA文件相反的步骤获得OTA文件。比如,先进行完整性测试,再进行解压缩。解压缩后,先进行数字签名的校验,再进行哈希值的计算,最终获得从云端发出时的OTA文件。
图2是本发明一个或多个实施例提供的一种OTA升级文件云端处理方法的流程图。
如图2所示的OTA升级文件云端处理方法包括:
步骤S11,云端服务器接收OTA升级文件包;
步骤S12,云端服务器向车端发送OTA升级文件包;
步骤S13,其中,对OTA升级文件包进行加密后发送,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护后,发送。
具体而言,从云端服务器而言,云端服务器上所存储的OTA升级文件,可以是其他服务器传送的,也可以是人工从硬盘导入的。从云端服务器,可以连接适于升级的车辆。如果接收到下发OTA文件进行车辆系统升级时,可以先加密后再发送。在车辆一端,同样设置了与云端服务器一端对应的解密程序,当车辆接收到经过加密的OTA文件,首先会进行解密工作,才进行系统升级。
OTA技术,及汽车远程升级技术OTA(Over-the-Air)。常通过移动通信网络(2G/3G/4G或Wifi)对汽车的零部件终端上固件、数据及应用进行远程管理、更新。通常情况下,分三步:首先将更新软件上传到OTA中心(如、云端服务器),然后OTA中心无线传输更新软件到车辆端,最后车辆端自动更新软件。
OTA分为两类,一类是固件在线升级FOTA(Firmware-Over-the-Air),是指不改变车辆原有配件的前提下,通过写入新的固件程序,使拥有联网功能的设备进行升级,包括车辆的发动机,电机,变速箱,底盘等控制系统。
另一类是软件在线升级SOTA(Software-Over-the-Air),是在操作系统的基础上对应用程序进行升级,是指那些离用户更近的应用程序,UI界面和车载地图、人机交互界面等功能,像娱乐系统更新操作界面或主题。
在本实施例中,对OTA升级文件包进行加密后发送包括:
云端服务器使用SHA512算法对OTA升级文件包进行哈希计算,获取对应SHA512算法的哈希值;
将OTA升级文件包中文件名称以及对应SHA512算法的哈希值写入signature.txt文件;
使用签名私钥对signature.txt文件进行签名计算,生成签名数据;
将signature.txt文件、签名数据以及OTA升级文件压缩处理,生成升级文件压缩包;
对升级文件压缩包进行加密后发送。
具体而言,SHA512是一种安全散列算法,有时候也被称作SHA-2。对于称为,SHA512的哈希算法来说,易于理解的演练,包括一些基本和简单的数学知识以及一些图表。
当然,并非只有SHA512一种算法,SHA384算法也可以用于加密。虽然SHA384算法为48字节(384位),SHA512算法为64字节(512位),原则上都是无法解密的。
将中文件名称以及对应哈希值写入signature.txt文件,进行另一种加密的手段,比如数字签名,再进行压缩以便于传输。
在本实施例中,对升级文件压缩包进行加密后发送包括:
对升级文件压缩包进行SHA256运算,获取对应SHA256算法的哈希值,进行完整性保护。
具体而言,SHA256算法同属于SHA-2家族的一员,同样是通过密文向明文计算的不可逆,进行加密。
由于传输过程中,众多车辆从云端服务器获取升级文件,个别车辆有可能受到环境、设备状态等多种原因,导致数据有畸变、丢失。可以通过SHA256算法,确保数据的完整性。如果,发现没有办法通过SHA256算法的验证,则本次的压缩包数据失效,可以从新向云端发起请求。
在本实施例中,包括,对signature.txt文件使用签名证书对文件进行签名计算,生成签名数据signature.p7。
具体而言,P1签名,即裸签名,签名值中只有签名信息。p7签名,即,签名中可以带有其他的附加信息,例如签名证书信息,签名原文信息,时间戳信息等。所以signature.txt文件的验签过程中可以包含哈希值、文件名等更多信息。当然,p7签名不能用P1验签。
图3是本发明一个或多个实施例提供的一种OTA升级文件车端处理方法的流程图。
如图3所示的OTA升级文件车端处理方法包括:
步骤S21,车机系统接收来自云端服务器的升级文件压缩包;
步骤S22,车机系统解密接收的升级文件压缩包,并对升级文件压缩包解解压缩,获取OTA升级文件;
步骤S23,校验OTA升级文件是否为真;
步骤S24,若,OTA升级文件校验结果均为真,则车机系统根据OTA升级文件做系统升级。
具体而言,作为车机一端,需要按照云端一侧的逆顺序处理接收的压缩包。比如,向进行完整性检测,如果没有出现传输过程的错误,则进行解压缩,然后再验签,最后哈希值解密等。最终获得所需的OTA文件。
在本实施例中,车机系统解密接收的升级文件压缩包,并对升级文件压缩包解密,获取OTA升级文件包括:
进行SHA256运算,解密接收的升级文件压缩包;
对比SHA256的哈希值,验证文件是否完整;
若,文件完整,则对解密后的升级文件进行解压缩,获得signature.txt文件、签名数据以及OTA升级文件。
具体而言,常见的校验算法有,MD5、SHA-1、SHA-256、SHA-512等这几种校验算法。通常是校验值越长,校验速度越慢。
数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名、数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密。数据摘要算法也被称为哈希(Hash)算法或散列算法。
SHA(Secure Hash Algorithm)是由美国专门制定密码算法的标准机构——美国国家标准技术研究院(NIST)制定的,SHA系列算法的摘要长度分别为:SHA为20字节(160位)、SHA256为32字节(256位)、SHA384为48字节(384位)、SHA512为64字节(512位),由于它产生的数据摘要的长度更长,因此更难以发生碰撞,因此也更为安全,它是未来数据摘要算法的发展方向。由于SHA系列算法的数据摘要长度较长,因此其运算速度与MD5相比,也相对较慢。
根据车机升级过程中,处理OTA文件的CPU等资源消耗程度,选择比较适中的SHA-256算法。目前SHA1的应用较为广泛,主要应用于CA和数字证书中,另外在目前互联网中流行的BT软件中,也是使用SHA1来进行文件校验的。
一般校验去重使用默认值MD5就可以了其效率更高,但有时也会出现非常低概率的2个完全不同的文件相同的MD5值的状况,如果要百分百精确就使用SHA-256,前提是可以忍受时间大幅度增加,而本实施例中,远程数据不能容忍出错,因此选择SHA-256做完整性的校验。
在本实施例中,校验OTA升级文件是否为真包括:
使用签名证书对signature.txt文件和签名数据进行验签计算;
根据SHA512算法计算对应SHA512算法的哈希值,与signature.txt文件进行对比,判断OTA升级文件是否被篡改;
若,OTA升级文件没有被篡改,则将OTA升级文件用于车机系统的升级。
具体而言,根据SHA512算法计算对应SHA512算法的哈希值,可以获得最后的明文,如果计算校验成功,则获得的明文是可信的。
在本实施例中,包括:
进行验签计算,与signature.p7签名数据比对,校验signature.txt文件是否被篡改;
若,没有被篡改,则OTA升级文件用于车辆系统升级。
具体而言,同理,对应云端所使用的P7签名,车端需要用P7进行验签,才可以获得正确还原的数据。signature.txt文件包含了SHA512算法的哈希值、文件名等多个信息,超出P1签名记载的能力,因此要选用P7签名加密和验签。
通过与signature.p7签名数据比对,对比内容包含SHA512算法的哈希值、文件名等多个信息,校验signature.txt文件是否被篡改。
图4是本发明一个或多个实施例提供的一种车辆系统升级装置的结构图。
如图4所示,车辆系统升级装置包括:升级文件获取模块、升级文件加密模块、升级文件传输模块、升级文件解密模块、升级文件校验模块;
升级文件获取模块,用于获取OTA升级文件包;
升级文件加密模块,用于对OTA升级文件进行加密处理,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护;
升级文件传输模块,用于将加密处理后的OTA升级文件远程发送;
升级文件解密模块,用于将接收的加密处理后的OTA升级文件,进行解密,并校验判断;
升级文件校验模块,用于若,解密后的OTA升级文件校验为真,则解密后的OTA升级文件用于本地车辆系统升级;
其中,解密过程为加密过程的逆过程。
值得注意的是,虽然本系统只披露了升级文件获取模块、升级文件加密模块、升级文件传输模块、升级文件解密模块、升级文件校验模块,但并不意味着本装置仅仅局限于上述基本功能模块,相对,本发明所要表达的意思是,在上述基本功能模块的基础之上,本领域技术人员可以结合现有技术任意添加一个或多个功能模块,形成无穷多个实施例或技术方案,也就是说本系统是开放式的而非封闭式的,不能因为本实施例仅披露了个别基本功能模块,就认为本发明权利要求的保护范围局限于上述公开的基本功能模块。
图5是本发明一个具体实施例的云服务端加密流程示意图。
图6是本发明一个具体实施例的车端解密校验流程示意图。
如图5所示,其中签名计算签名算法使用RSA2048。
其中最后对升级文件ZIP进行加密过程,每次升级包加密密钥不同,随机生成,升级包加密算法采用AES-CTR。升级文件的对称加密密钥在OTA Client端进行对称加密存储,加密方式为AES-256-ECB算法。
RSA-2048为非对称成加密算法,发送方和接收方均各有一组公钥和私钥key。因存在幂运算,其计算速度远远小于AES-256。可用于对小量数据的加密,如用于对密钥key的加密。是密钥交换协议的重要组成部分。采用公钥进行加密,采用私钥进行解密。
如图6所示,如果车端验签失败,表明下载文件不安全,可能存在被恶意篡改的情形,则终止OTA升级。
为确保升级包zip文件的信息安全,对升级包zip文件进行加密,采用AES-CTR加密方法,AES-CTR加密秘钥随机生成。
对此加密秘钥云端服务对其进行对称加密,使用AES-256-ECB加密算法,因为对称加密的特性,在车端即可使用特定的预置秘钥(AES-256-ECB秘钥)对AES-CTR秘钥进行解密,AES-256-ECB秘钥不在网络中进行传输,以此方式来保证AES-CTR秘钥的安全性。
云端服务会将升级包文件下载地址联通加密后的AES-CTR秘钥和加密模式一起下发到车机端。车机端收到AES-CTR秘钥之后对其进行解密,若对AES-CTR秘钥解密失败,说明此AES-CTR秘钥不可信,升级包文件亦不可信。
车机端对AES-CTR秘钥解密解密成功之后,会连同加密模式参数对升级包zip文件进行解密。解密后解压升级包zip文件。
升级包内的每一个文件,在云端服务中会对每一个文件进行SHA512哈希计算,SHA512哈希计算是一种单向散列函数,具有计算速度快,单项不可逆的特点,不同数据的散列值计算结果也不相同,使用此方法可以快速有效的验证文件是否有变化。在云端服务中计算每一个文件的SHA512哈希值并写入signature.txt文件中进行保存,以便于在车机端重新计算每个文件的SHA512哈希值,与signature.txt文件中的哈希值进行比对,用以判断文件是否被修改了。
为了避免signature.txt文件中的哈希值与文件一同被修改导致步骤五校验判断无效,在云端服务中会对signature.txt文件使用签名证书对文件进行签名计算,生成签名数据signature.p7。签名计算使用RSA2048算法,RSA算法是一种非对称算法,即公钥与私钥一个用于加密、一个用于解密。在车机端预置了签名证书,在车机端使用预置的签名证书,重新计算签名数据与signature.p7签名数据比对校验signature.txt文件是否被篡改。
例如某车在请求OTA升级,假如网络被劫持,车端下载到了被篡改的升级包,车端在进行解码和签名校验,发现校验不通过,说明升级包被篡改了,终止当前OTA升级,从而避免被恶意软件攻击,规避了风险。
在另一具体实施中,通过实验测试升级包加密后,是否可以有效提高安全性和可靠性。
现有升级包方案下:
试验case1:升级包整包内升级文件进行替换修改,其他文件不做修改。
试验case2:升级包整包内升级文件进行替换修改,并且signature.txt内容相应做修改。
试验case3:升级包整包内升级文件进行替换修改,并且signature.txt内容相应做修改,签名文件signature.p7重新签名生成(使用错误的签名证书)。
在不使用本提案的解密校验方法,上述试验case都会成功的安装修改后的升级文件,会有传统意义下的信息安全风险和系统安全风险。
本申请的升级包方案下:
试验case1,为模拟升级包内升级文件损坏或者被篡改的情况,升级包整包可以解密解压,但是在对文件的哈希值与signature.txt文件记录的原始哈希值做检验比对时,文件改变会被识别出而终止升级流程,避免风险。
试验case2,为模拟升级包内升级文件被篡改,并且signature.txt中记录的该文件哈希值也相应修改的情况,此种情况会在使用signature.p7签名数据对signature.txt文件做签名校验的环境被识别出文件signature.txt被修改了,而终止升级流程,避免风险。
试验case3,为模拟升级包内升级文件被篡改,并且signature.txt中记录的该文件哈希值也相应修改,并且也重新对signature.txt做签名生成签名数据,只是使用的签名证书不是真正的签名证书。此情况会在signature.p7签名数据校验的环境被识别出,因为其签名数据和车机上预置的证书签名数据会不一致,会终止升级流程,避免风险。
每个case分别人工试验50次和自动化测试500万次,均可以成功识别出文件被修改的情况,终止升级包流程,可以证明极大的提升系统安全和信息安全。
图7是本发明一个或多个实施例提供的车辆系统升级方法的一种电子设备结构框图。
如图7所示,本申请提供一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器中存储有计算机程序,当计算机程序被处理器执行时,使得处理器执行车辆系统升级方法的步骤。
本申请还提供一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行车辆系统升级方法的步骤。
本申请还提供一种车辆,包括:
电子设备,用于实现车辆系统升级方法的步骤;
处理器,处理器运行程序,当程序运行时从电子设备输出的数据执行车辆系统升级方法的步骤;
存储介质,用于存储程序,程序在运行时对于从电子设备输出的数据执行车辆系统升级方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
电子设备包括硬件层,运行在硬件层之上的操作系统层,以及运行在操作系统上的应用层。该硬件层包括中央处理器(CPU,Central Processing Unit)、内存管理单元(MMU,Memory Management Unit)和内存等硬件。该操作系统可以是任意一种或多种通过进程(Process)实现电子设备控制的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。并且在本发明实施例中该电子设备可以是智能手机、平板电脑等手持设备,也可以是桌面计算机、便携式计算机等电子设备,本发明实施例中并未特别限定。
本发明实施例中的电子设备控制的执行主体可以是电子设备,或者是电子设备中能够调用程序并执行程序的功能模块。电子设备可以获取到存储介质对应的固件,存储介质对应的固件由供应商提供,不同存储介质对应的固件可以相同可以不同,在此不做限定。电子设备获取到存储介质对应的固件后,可以将该存储介质对应的固件写入存储介质中,具体地是往该存储介质中烧入该存储介质对应固件。将固件烧入存储介质的过程可以采用现有技术实现,在本发明实施例中不做赘述。
电子设备还可以获取到存储介质对应的重置命令,存储介质对应的重置命令由供应商提供,不同存储介质对应的重置命令可以相同可以不同,在此不做限定。
此时电子设备的存储介质为写入了对应的固件的存储介质,电子设备可以在写入了对应的固件的存储介质中响应该存储介质对应的重置命令,从而电子设备根据存储介质对应的重置命令,对该写入对应的固件的存储介质进行重置。根据重置命令对存储介质进行重置的过程可以现有技术实现,在本发明实施例中不做赘述。
为了描述的方便,描述以上装置时以功能分为各种单元、模块分别描述。当然在实施本申请时可以把各单元、模块的功能在同一个或多个软件和/或硬件中实现。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种车辆系统升级方法,其特征在于,所述车辆系统升级方法包括:
获取OTA升级文件包;
对OTA升级文件进行加密处理,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护;
将加密处理后的OTA升级文件远程发送;
将接收的加密处理后的OTA升级文件,进行解密,并校验判断;
若,解密后的OTA升级文件校验为真,则解密后的OTA升级文件用于本地车辆系统升级;
其中,解密过程为加密过程的逆过程。
2.一种OTA升级文件云端处理方法,其特征在于,所述OTA升级文件云端处理方法包括:
云端服务器接收OTA升级文件包;
云端服务器向车端发送OTA升级文件包;
其中,对OTA升级文件包进行加密后发送,包括哈希算法加密OTA升级文件和使用数字签名做二次加密,并采用哈希算法对预发送的OTA升级文件做完整性保护后,发送。
3.根据权利要求2所述的OTA升级文件云端处理方法,其特征在于,所述对OTA升级文件包进行加密后发送包括:
云端服务器使用SHA512算法对所述OTA升级文件包进行哈希计算,获取对应SHA512算法的哈希值;
将所述OTA升级文件包中文件名称以及对应SHA512算法的哈希值写入signature.txt文件;
使用签名私钥对signature.txt文件进行签名计算,生成签名数据;
将signature.txt文件、签名数据以及OTA升级文件压缩处理,生成升级文件压缩包;
对所述升级文件压缩包进行加密后发送。
4.根据权利要求3所述的OTA升级文件云端处理方法,其特征在于,所述对所述升级文件压缩包进行加密后发送包括:
对所述升级文件压缩包进行SHA256运算,获取对应SHA256算法的哈希值,进行完整性保护。
5.根据权利要求4所述的OTA升级文件云端处理方法,其特征在于,包括,
对signature.txt文件使用签名证书对文件进行签名计算,生成签名数据signature.p7。
6.一种OTA升级文件车端处理方法,其特征在于,所述OTA升级文件车端处理方法包括:
车机系统接收来自云端服务器的所述升级文件压缩包;
车机系统解密接收的所述升级文件压缩包,并对所述升级文件压缩包解解压缩,获取所述OTA升级文件;
校验所述OTA升级文件是否为真;
若,OTA升级文件校验结果均为真,则车机系统根据OTA升级文件做系统升级。
7.根据权利要求6所述的OTA升级文件车端处理方法,其特征在于,所述车机系统解密接收的所述升级文件压缩包,并对所述升级文件压缩包解密,获取OTA升级文件包括:
进行SHA256运算,解密接收的所述升级文件压缩包;
对比SHA256的哈希值,验证文件是否完整;
若,文件完整,则对解密后的所述升级文件进行解压缩,获得signature.txt文件、签名数据以及OTA升级文件。
8.根据权利要求7所述的OTA升级文件车端处理方法,其特征在于,所述校验所述OTA升级文件是否为真包括:
使用签名证书对signature.txt文件和签名数据进行验签计算;
根据SHA512算法计算对应SHA512算法的哈希值,与signature.txt文件进行对比,判断所述OTA升级文件是否被篡改;
若,所述OTA升级文件没有被篡改,则将所述OTA升级文件用于车机系统的升级。
9.根据权利要求8所述的OTA升级文件车端处理方法,其特征在于,包括:
进行验签计算,与signature.p7签名数据比对,校验signature.txt文件是否被篡改;
若,没有被篡改,则所述OTA升级文件用于车辆系统升级。
10.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1所述车辆系统升级方法的步骤。
CN202310948764.2A 2023-07-31 2023-07-31 车辆系统升级方法、ota升级文件云端处理方法及电子设备 Pending CN117041048A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310948764.2A CN117041048A (zh) 2023-07-31 2023-07-31 车辆系统升级方法、ota升级文件云端处理方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310948764.2A CN117041048A (zh) 2023-07-31 2023-07-31 车辆系统升级方法、ota升级文件云端处理方法及电子设备

Publications (1)

Publication Number Publication Date
CN117041048A true CN117041048A (zh) 2023-11-10

Family

ID=88632859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310948764.2A Pending CN117041048A (zh) 2023-07-31 2023-07-31 车辆系统升级方法、ota升级文件云端处理方法及电子设备

Country Status (1)

Country Link
CN (1) CN117041048A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873539A (zh) * 2023-12-28 2024-04-12 四川赛狄信息技术股份公司 基于MicroBlaze的FPGA在线升级方法、系统及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873539A (zh) * 2023-12-28 2024-04-12 四川赛狄信息技术股份公司 基于MicroBlaze的FPGA在线升级方法、系统及介质

Similar Documents

Publication Publication Date Title
CN107085675B (zh) 受控安全代码验证
CN108200044B (zh) 车载程序文件加密方法和系统
CN110225063B (zh) 汽车车载系统的升级方法、升级系统、服务器及车载终端
CN106464499B (zh) 通信网络系统、发送节点、接收节点、消息检查方法、发送方法及接收方法
CN103166759B (zh) 使用诊断链路连接器(dlc)和onstar系统的用于安全固件下载的方法和装置
US11321074B2 (en) Vehicle-mounted device upgrade method and related apparatus
CN109194625B (zh) 一种基于云端服务器的客户端应用保护方法、装置及存储介质
CN111279310A (zh) 一种车载设备升级方法及相关设备
EP2271045A1 (en) Method for firmware downloading, method for pre-processing and method for integrity authenticating based on the ota
CN104618498A (zh) 一种数据资源同步的方法及服务器
CN113794734A (zh) 车载can总线加密通信方法、控制装置和可读存储介质
CN111666564B (zh) 应用程序安全启动方法、装置、计算机设备和存储介质
CN111565182B (zh) 一种车辆诊断方法、装置及存储介质
CN115396121A (zh) 安全芯片ota数据包的安全认证方法及安全芯片装置
CN117041048A (zh) 车辆系统升级方法、ota升级文件云端处理方法及电子设备
CN115643564A (zh) 汽车安全的fota升级方法、装置、设备及存储介质
CN113055181A (zh) Ota文件安全处理方法、装置及系统
CN108337234B (zh) 车载程序文件加密方法和装置
CN104994503B (zh) 一种移动应用访问方法
CN114143197B (zh) 物联网设备ota升级方法、装置、设备及可读存储介质
Wu et al. Security design of OTA upgrade for intelligent connected vehicle
CN112929871A (zh) Ota升级包的获取方法、电子设备以及存储介质
WO2020214174A1 (en) Service trust status
CN114245183B (zh) 推流数据鉴权方法及装置
CN114879980A (zh) 车载应用安装方法、装置、计算机设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination