CN116107612B - 固件空中升级装置、充电桩、设备、方法及程序产品 - Google Patents
固件空中升级装置、充电桩、设备、方法及程序产品 Download PDFInfo
- Publication number
- CN116107612B CN116107612B CN202310383430.5A CN202310383430A CN116107612B CN 116107612 B CN116107612 B CN 116107612B CN 202310383430 A CN202310383430 A CN 202310383430A CN 116107612 B CN116107612 B CN 116107612B
- Authority
- CN
- China
- Prior art keywords
- file
- data packet
- upgrade
- ciphertext
- packet
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供了一种固件空中升级装置、充电桩、方法及程序产品,该装置包括电路板、通信模块、处理模块以及外部存储模块。处理模块用于通过通信模块接收服务器发送的升级指令请求,在确定固件空中升级装置符合升级条件的情况下,基于升级文件包的文件大小以及内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并从存储地址中对密文升级文件包进行分批下载,直到升级文件包下载完成;针对每次下载,处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内部存储模块内,并对当前密文数据包进行解密后存储于外部存储模块中。如此,可以在内存较小的情况下,通过分批下载的方式实现FOTA升级。
Description
技术领域
本公开涉及通信技术领域,具体而言,涉及一种固件空中升级装置、充电桩、电子设备、固件空中升级方法及计算机程序产品。
背景技术
固件空中升级(Firmware Over-the-Air,FOTA)技术,主要是指一种通过空中接口远程管理、更新终端设备中固件的技术。通过FOTA升级操作,不仅仅可以下载升级应用软件,也可以更新设备的操作系统。这样,FOTA升级操作使设备制造商能够通过网络将升级包发送到终端设备中,从而对固件、软件进行升级,不但方便了用户,也为设备制造商节约了成本。
目前FOTA升级操作通常将升级文件整包下载,然后基于下载的整包文件进行固件升级,然而,该方法在升级文件较大的情况下,需要占用较大的内存空间,导致一些内存空间受限的情况可能无法实现FOTA升级。
发明内容
本公开实施例至少提供一种固件空中升级装置、充电桩、固件空中升级方法及计算机程序产品,可以在内存空间较小的情况下实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
本公开实施例提供了一种固件空中升级装置,包括电路板、通信模块、处理模块以及外部存储模块,所述通信模块、所述处理模块以及所述外部存储模块设置于所述电路板上,所述处理模块分别与所述通信模块以及所述外部存储模块相连接,且所述处理模块包括内部存储模块;其中,
所述通信模块用于建立所述固件空中升级装置与服务器之间的通信连接,所述服务器用于存储对目标对象进行固件升级的密文升级文件包;
所述处理模块用于通过所述通信模块接收所述服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小以及所述密文升级文件包的存储地址;
所述处理模块用于在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并基于所述每次需要下载的文件大小按照所述文件下载次数从所述存储地址中对所述密文升级文件包进行下载,直到所述密文升级文件包下载完成;
针对每次下载,所述处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内,并对所述当前密文数据包进行解密,得到当前明文数据包,且将所述当前明文数据包存储于所述外部存储模块中;其中,所述密文数据包为每次需要下载的文件大小对应的密文升级文件。
本公开实施例中,可以基于固件空中升级装置的内存大小对服务器的密文升级文件包进行分批下载,且针对每次下载,可以将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内存中,并对本次下载的当前密文数据包进行解密后存储于外部存储空间,如此即使在内存空间较小的情况下,也可以实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
在一种可能的实施方式中,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数;
所述处理模块具体用于基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。
本公开实施例中,基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,进而可以提升每次下载的密文数据包的精度、避免遗漏,有助于提升分批下载的密文数据包的连续性以及整包密文升级文件包的完整性。
在一种可能的实施方式中,所述密文升级文件包采用高级加密标准加密块链模式加密得到;所述处理模块还用于获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。
本公开实施例中,由于密文升级文件包采用高级加密标准加密块链模式加密得到,因此对应的在解密时采用初始向量以及解密密钥对当前密文数据包进行解密,可以提升解密的精度以及效率。
在一种可能的实施方式中,所述处理模块还用于获取所述密文升级文件包所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式。
本公开实施例中,在解密时,还获取所述密文升级文件包所采用的加密填充模式,进而针对最后一包可以采用相应的加密填充模式进行解密,进而有助于提升最后一包密文数据包的数据解密精度。
在一种可能的实施方式中,所述处理模块还用在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
本公开实施例中,在所述当前明文数据包为第一包的情况下,还对当前明文数据包的头部信息进行校验,进而可以保证下载数据的准确性。
在一种可能的实施方式中,所述处理模块还用于确定所述当前明文数据包的大小是否与所述数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。
本公开实施例中,在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,说明下载的数据有缺失,进而需要对密文升级文件包进行重新下载,如此,可以保证密文升级文件包下载的准确性和完整性。
在一种可能的实施方式中,所述处理模块还用于在所述当前明文数据包为第一包的情况下,对所述外部存储模块进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块中。
本公开实施例中,在对明文数据包进行存储时,将第一包的头部信息进行删除,可以避免存储的数据存在非升级文件内容的情况,有助于提升升级文件包的准确性。
在一种可能的实施方式中,所述升级请求信息还包括文件签名信息,所述处理模块还用于在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。
本公开实施例中,在整包密文升级文件包下载完成的情况下,还通过签名信息对各个明文数据包进行校验,如此,可以保证升级文件包的准确性,进而有助于提升对目标对象进行升级的可靠性。
本公开实施例提供了一种充电桩,包括上述任一可能的实施方式中所述的固件空中升级装置。
本公开实施例提供了一种固件空中升级方法,包括:
接收服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述升级文件包的大小以及所述升级文件包的存储地址;
在确定所述固件空中升级装置符合升级条件的情况下,基于所述升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小;
基于所述每次需要下载的文件大小从所述存储地址中对所述升级文件包进行下载,并将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内;
对本次下载的当前密文数据包进行解密,得到当前明文数据包,并将所述当前明文数据包存储于外部存储模块中;
返回至所述基于所述每次需要下载的文件大小从所述存储地址中对所述升级文件包进行下载的步骤,直到下载次数达到所述文件下载次数。
在一种可能的实施方式中,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数。
在一种可能的实施方式中,所述基于所述每次需要下载的文件大小从所述存储地址中对所述密文升级文件包进行下载,包括:
基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从前一次的数据下载偏移量开始对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。
在一种可能的实施方式中,在一种可能的实施方式中,所述密文升级文件包采用高级加密标准加密块链模式加密得到;所述对本次下载的当前密文数据包进行解密,得到当前明文数据包,包括:
获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。
在一种可能的实施方式中,所述获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,包括:
获取所述密文升级文件包所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式。
在一种可能的实施方式中,所述将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容,包括:
在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
在一种可能的实施方式中,所述将所述当前明文数据包存储于外部存储模块中之前,所述方法还包括:
确定所述当前明文数据包的大小是否与所述数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。
在一种可能的实施方式中,所述将所述当前明文数据包存储于外部存储模块中,包括:
在所述当前明文数据包为第一包的情况下,对所述外部存储模块进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块中。
在一种可能的实施方式中,所述升级请求信息还包括文件签名信息,在所述当前已下载次数达到所述文件下载次数后,所述方法还包括:
在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。
本公开实施例提供了一种计算机程序产品,包括计算机程序,当所述计算机程序被处理器执行时实现如前述任一可能的实施方式中所述的方法。
为使本公开的上述目的、特征和优点能更明显易懂,下文通过一些实施例,并配合所附附图,说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种服务器和充电桩的通信结构示意图;
图2示出了本公开实施例所提供的一种充电桩的结构示意图;
图3示出了本公开实施例所提供的一种固件空中升级装置的结构示意图;
图4示出了本公开实施例所提供的一种固件空中升级方法的流程图;
图5示出了本公开实施例所提供的一种固件空中升级装置的功能模块图。
具体实施方式
下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
充电桩是指为电动汽车提供能量补充的充电装置,其功能类似于加油站里面的加油机,可以固定在地面或墙壁,安装于公共建筑(公共楼宇、商场、公共停车场等)和居民小区停车场或充电站内,可以根据不同的电压等级为各种型号的电动汽车充电。
具体地,充电桩的输入端与交流电网直接连接,输出端设置有充电插头,当充电插头与电动汽车连接后,即可为电动汽车充电。充电桩通常包括不同的功能单元,比如终端控制单元、中央控制单元、功率控制单元以及输出控制单元等,为了提升用户的使用体验,在各个功能单元出现新的功能时,需要对各个功能单元进行固件或者软件升级。其中,该新的功能包括同一功能的版本升级以及新增的额外功能等。
经研究发现,通过FOTA升级技术能够使设备制造商通过网络将升级包发送到终端设备(如充电桩)中,从而对固件、软件进行升级,不但方便了用户,也为设备制造商节约了成本。然而,目前的FOTA升级操作通常将升级文件整包下载,然后基于下载的整包文件进行固件升级,该方法在升级文件较大的情况下,需要占用较大的内存空间,导致一些内存空间受限的情况可能无法实现FOTA升级。例如,
基于上述研究,本公开实施例提供一种固件空中升级装置、充电桩、固件空中升级方法及计算机程序产品,可以基于固件空中升级装置的内存大小对服务器的密文升级文件包进行分批下载,针对每次下载,可以将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内存中,并对本次下载的当前密文数据包进行解密后存储于外部存储空间,如此即使在内存空间较小的情况下,也可以实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
下面结合附图对本公开实施例进行详细说明。
请参阅图1,充电桩1000用于为电动汽车进行充电且可以和服务器2000进行通信。服务器2000用于存储为充电桩1000进行FOTA升级的升级文件包,本公开实施例中,所述升级文件包为加密后的密文升级文件包,其他实施例中,所述升级文件包还可以是非加密的升级文件包,在此不做具体限定。
该服务器2000可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云存储、大数据和人工智能平台等基础云计算服务的云服务器。
示例性地,服务器2000可以通网络与充电桩1000进行通信。其中,该网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
本公开实施例中,服务器2000用于向充电桩1000发送升级指令请求,其他实施例中,所述服务器2000还可以根据实际需求向充电桩1000发送其他指令,比如充电控制指令、充电费用结算指令等。
具体地,所述充电桩1000包括固件空中升级装置100,也即,所述充电桩1000可以通过所述固件空中升级装置100与所述服务器2000进行通信,且所述固件空中升级装置100可以从服务器2000下载密文升级文件包,并基于下载的密文升级文件包为自身或者所述充电桩1000内的其他功能单元进行升级。
示例性地,参见图2所示,所述充电桩1000除了包括所述固件空中升级装置100之外,还可以包括其他目标对象200,所述其他目标对象200包括但不限于终端控制单元、中央控制单元、功率控制单元、输出控制单元及电源转换(AC-DC)单元等。
可选地,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述升级文件包的大小以及所述升级文件包的存储地址。此外,所述升级请求信息还可以包括升级类型、升级版本、升级文件包签名以及动态密钥等信息。其中,升级类型用于指示与所述密文升级文件包匹配的升级对象,该升级对象可以是固件空中升级装置100,也可以是其他目标对象200中的至少一个。
也即,固件空中升级装置100除了可以对自身进行升级外,还可以基于下载并解密后的升级文件包对其他目标对象200进行升级。例如,固件空中升级装置100可以以客户端的角色向目标节点发起UDS(Unified Diagnostic Services,统一诊断服务)升级服务请求,进而对目标节点进行升级。其中,目标节点可以是其他目标对象200中的至少一个。
下面对固件空中升级装置100的文件下载、解密以及存储过程进行详细说明。
参见图3所示,所述固件空中升级装置100包括通信模块10、处理模块20以及外部存储模块30。所述通信模块10、所述处理模块20以及所述外部存储模块30均设置于电路板上,所述处理模块20分别与所述通信模块10以及所述外部存储模块30相连接,且所述处理模块20包括内部存储模块21。
所述通信模块10包括但不限于:蓝牙模块、Wi-Fi模块、4G通信模块等。所述通信模块10用于建立所述固件空中升级装置100与服务器2000之间的通信连接。其中,所述服务器2000用于存储对目标对象进行固件升级的密文升级文件包,所述目标对象包括但不限于前述的固件空中升级装置100以及其他目标对象200等。
所述处理模块20可能是一种集成电路芯片,具有信号的处理能力。该处理模块20可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
具体的,所述处理模块20用于通过所述通信模块10接收所述服务器2000发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小以及所述密文升级文件包的存储地址。
示例性地,在接收到所述服务器2000发送的升级指令请求之后,所述处理模块20还用于判断所述固件空中升级装置100是否符合升级条件,并在所述在确定所述固件空中升级装置100符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块21的存储空间大小,确定文件下载次数以及每次需要下载的文件大小。
可选地,在所述固件空中升级装置100处于空闲状态下,确定所述固件空中升级装置100符合所述升级条件。例如,在接收到升级指令请求后,若充电桩1000当前正在为电动汽车充电,则可以确定固件空中升级装置100不符合升级条件。
其中,内部存储模块21可以是,但不限于,易失性随机存取存储器(Random AccessMemory,RAM),非易失性可编程只读存储器(ROM),非易失性可随机擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
下面以处理模块20为MCU(Microcontroller Unit,微控制单元)为例进行说明,若MCU的内部存储模块21(也称内存)的最大存储空间为256k,而密文升级文件包的文件大小为10M,在该情况下,若一次将整个密文升级文件包进行下载,则内存严重不足,将无法实现FOTA升级。而本实施方式中,可以基于内存的大小以及密文升级文件包的文件大小,确定文件下载次数以及每次需要下载的文件大小。比如,若密文升级文件包的文件大小为1Mbyte,而基于内存的大小确定每次可以下载512byte,则可以确定需要下载1024*1024/512=2048次,即可将整个密文升级文件包下载完成。
具体地,针对每次下载,所述处理模块20用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块21内,并对所述当前密文数据包进行解密,得到当前明文数据包;然后将所述当前明文数据包存储于所述外部存储模块30中。其中,所述密文数据包为每次需要下载的文件大小对应的密文升级文件,例如,前述的每次下载的512byte的升级文件,即为本次下载的密文数据包。
其中,外部存储模块30是一种非易失性的存储器,其可以在断电情况下仍能保持所存储的数据信息。例如,外部存储模块30可以是闪存(Flash Memory)。
在一些实施方式中,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到。例如,可以对原始明文升级文件按照16个字节的预设长度为单位进行加密,得到所述密文升级文件包。在该情况下,每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数,如此,可以将每个加密单位对应的文件进行完整的下载。
可选地,在分批次下载的过程中,为了保证每相邻两次所下载的文件之间的连续性,所述处理模块20具体用于基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。例如,若每次下载的文件大小为512byte,则从数据下载偏移量为0开始下载,每下载一次后,数据下载偏移量增加512byte,直到下载完成。
承接该实施例,所述处理模块20还用于确定所述当前明文数据包的大小是否与所述数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。也即,针对每次下载,在当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,说明文件在下载过程中有丢失,因此需要对密文升级文件包进行重新下载,如此,可以提升每次下载的密文文件包的准确性,进而可以提升整包密文升级文件下载的精度。
可选地,所述密文升级文件包采用高级加密标准加密块链模式(如AES128CBC)加密得到。其中,AES算法以16byte为单位对文件内容依次加密,密文将比明文大1~16byte,CBC模式要求在初始加密或解密时要传入初始向量IV,用于和AES以16byte内容为单位加解密计算出的值进行异或输出得到每个加解密单位的明文或密文。
因此,所述处理模块20在对所述当前密文数据包进行解密,得到当前明文数据包时,具体包括:所述处理模块20获取初始向量IV以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。
其中,解密密钥可以由前述的升级请求信息中所包括的动态密钥获得,例如,可以基于固件空中升级装置100的根密钥(一机一密,出厂时已固化)对动态密钥进行解密,解密出的明文即为该密文升级文件包的解密密钥。
需要说明的是,由于AES128-CBC模式整包加密时是对明文以16byte长度为单位进行AES加密的,计算出的数据长度仍为16byte,该值与初始向量IV异或输出得到最终单位密文段,而该值也是下个AES加密单位的输入向量IV,因此解密时即为反向过程。
在一些实施例中,所述密文升级文件在加密前采用了预设的加密填充模式,例如,可以在加密前先对原始升级文件进行padding7模式的填充,填充输出后的文件大小为16的整数倍。以padding7填充模式为例,由于padding7填充是在整包升级文件包加密时进行了填充,对于该升级文件包,填充旨在最后尾部填充至整包文件大小为16的整数倍,对于原本即为16整数倍的,则再填16byte,因此,解密时则需要对每次下载的密文数据包分别进行解密,对于非最后一包密文数据包的情况下,填充模式应为无填充模式,而对于最后一包密文数据包则还需要基于加密填充模式进行解密。
因此,在该实施例中,所述处理模块20基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包时,具体可以包括:所述处理模块20获取所述密文升级文件所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式,在当前密文数据包为所述密文升级文件包的最后一包的情况下,所述加密填充模式为该预设的加密充模式(如padding7填充模式)。
示例性地,为了保证下载文件的准确性,所述处理模块20在将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容时,可以包括:所述处理模块20还用于在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
这里,在下载的第一包升级文件的头部信息校验通过后,说明当前下载的升级文件与升级所需要的目标文件是匹配的,进而可以保证升级文件下载准确性,同时可以避免由文件错误而导致持续下载的情况发生,有利于节约系统的功耗。
可以理解,在对当前密文数据包进行解密得到当前明文数据包后,还需要将当前明文数据包存储至外部存储模块30中,这里,所述处理模块20在将所述当前明文数据包存储于所述外部存储模块30中时,具体包括:所述处理模块20还用于在所述当前明文数据包为第一包的情况下,对所述外部存储模块30进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块30中。如此,可以保证存储的明文升级文件内容的纯度。
具体地,针对本次下载到的512byte长度的密文数据包,可以先暂存于密文缓存器中,然后解密后的输出内容暂存于明文缓存器,本次解密完成后,将明文缓存器中的内容存于外部存储模块30中,这样,密文缓存器与明文缓存器可以继续用作下次下载密文数据包和解密输出使用。
此外,在每次明文数据包存入外部存储模块30后,还需要对外部存储模块30的存储地址进行管理,以便下一次存入解密后的明文数据包,因此,在一些实施例中,所述处理模块20还用于确定所述当前明文数据包在所述外部存储模块的指针,并将所述当前明文数据包存储于所述指针所指示的存储地址中,且基于所述当前明数据包在所述外部存储模块中所占用的存储空间长度,更新所述指针对应的数据存储偏移量。
在一种可能的实施方式中,所述升级请求信息还包括文件签名信息,所述处理模块20还用于在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。如此,可以保证解密后的明文升级文件的准确性,有助于提升后续升级的可靠性。
本申请所公开的固件空中升级装置,可以基于固件空中升级装置的内存大小对服务器存储的密文升级文件包进行分批下载,针对每次下载,可以将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内存中,并对本次下载的当前密文数据包进行解密后存储于外部存储空间,如此即使在内存空间较小的情况下,也可以实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
应当理解的是,本公开实施例中的固件空中升级装置100应用于充电桩1000中仅仅是一个示例,其他实施例中,固件空中升级装置100还可以应用于终端设备(图未示)中,也即,终端设备也可以通过固件空中升级装置100来实现FOTA升级。其中,该终端设备可以为移动设备、用户终端、终端、手持设备、计算设备、车载设备、可穿戴设备等。
基于同一技术构思,本公开实施例中还提供了与固件空中升级装置100对应的固件空中升级方法,由于本公开实施例中的方法解决问题的原理与本公开实施例上述固件空中升级装置相似,因此方法的实施可以参见装置的实施,重复之处不再赘述。
请参阅图4,图4为本公开实施例提供的固件空中升级方法的流程图,所述固件空中升级方法应用于固件空中升级装置中,所述固件空中升级方法包括以下S401~S405:
S401,接收服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小以及所述密文升级文件包的存储地址。
S402,在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小。
S403,基于所述每次需要下载的文件大小从所述存储地址中对所述密文升级文件包进行下载,并将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内。
在一种可能的实施方式中,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数;
所述基于所述每次需要下载的文件大小从所述存储地址中对所述密文升级文件包进行下载,包括:
基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从前一次的数据下载偏移量开始对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。
这里,在本次下载为首次下载的情况下,前一次的数据下载偏移量为初始数据下载偏移量,该初始数据下载偏移量可以为0。
S404,对本次下载的当前密文数据包进行解密,得到当前明文数据包,并将所述当前明文数据包存储于外部存储模块中。
在一种可能的实施方式中,所述密文升级文件包采用高级加密标准加密块链模式加密得到;所述对本次下载的当前密文数据包进行解密,得到当前明文数据包,包括:
获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。
在一种可能的实施方式中,所述获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,包括:
获取所述密文升级文件包所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式。
在一种可能的实施方式中,所述将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容,包括:
在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
在一种可能的实施方式中,所述将所述当前明文数据包存储于外部存储模块中之前,所述方法还包括:
确定所述当前明文数据包的大小是否与所述数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。
也即,在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,需要返回步骤S402重新对整包密文升级文件包进行下载。当然,在其他实施例中,也可以对本次下载的密文数据包进行重新下载,不做具体限定。
在一种可能的实施方式中,所述将所述当前明文数据包存储于外部存储模块中,包括:
在所述当前明文数据包为第一包的情况下,对所述外部存储模块进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块中。
S405,判断当前已下载次数是否达到所述文件下载次数;若是,则流程结束;若否,则返回至步骤S403,直到所述当前已下载次数达到所述文件下载次数。
在一种可能的实施方式中,所述升级请求信息还包括文件签名信息,在所述当前已下载次数达到所述文件下载次数后,所述方法还包括:
在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
参见图5所示,为本公开实施例提供一种固件空中升级装置的功能模块图。所述固件空中升级装置100包括请求接收模块501、信息确定模块502、数据下载模块503、文件存储模块504以及次数判断模块505;其中:
请求接收模块501,用于接收服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括密文升级文件包的大小以及所述密文升级文件包的存储地址;
信息确定模块502,用于在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小;
数据下载模块503,用于基于所述每次需要下载的文件大小从所述存储地址中对所述密文升级文件包进行下载,并将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内;
文件存储模块504,用于对本次下载的当前密文数据包进行解密,得到当前明文数据包,并将所述当前明文数据包存储于外部存储模块中;
次数判断模块505,用于判断当前已下载次数是否达到所述文件下载次数,并在所述当前已下载次数未达到所述文件下载次数的情况下,返回至所述基于所述每次需要下载的文件大小从所述存储地址中对所述升级文件包进行下载的步骤,直到下载次数达到所述文件下载次数。
本公开实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令处理器被执行时实现如本公开各实施例提供的固件空中升级方法。
本公开实施例中的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上下载和执行所述计算机程序或指令时,全部或部分地执行本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备、核心网设备、OAM或者其它可编程装置。
所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘;还可以是半导体介质,例如,固态硬盘。该计算机可读存储介质可以是易失性或非易失性存储介质,或可包括易失性和非易失性两种类型的存储介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种固件空中升级装置,其特征在于,包括电路板、通信模块、处理模块以及外部存储模块,所述通信模块、所述处理模块以及所述外部存储模块设置于所述电路板上,所述处理模块分别与所述通信模块以及所述外部存储模块相连接,且所述处理模块包括内部存储模块;其中,
所述通信模块用于建立所述固件空中升级装置与服务器之间的通信连接,所述服务器用于存储对目标对象进行固件升级的密文升级文件包;所述目标对象包括所述固件空中升级装置以及其他目标对象,所述其他目标对象包括终端控制单元、中央控制单元、功率控制单元、输出控制单元及电源转换单元中的至少一种;所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;
所述处理模块用于通过所述通信模块接收所述服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小、所述密文升级文件包的存储地址以及动态密钥;
所述处理模块用于在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并基于所述每次需要下载的文件大小按照所述文件下载次数从所述存储地址中对所述密文升级文件包进行下载,直到所述密文升级文件包下载完成;
针对每次下载,所述处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块的密文缓存器内,并基于获取的加密填充模式、初始向量以及解密密钥对所述当前密文数据包进行解密,并将解密后的输出内容暂存于所述内部存储模块的明文缓存器内,直到得到当前明文数据包,且将所述初始向量的内容更新为所述当前明文数据包的最后所述预设字节对应的内容;所述处理模块还用于确定所述当前明文数据包在所述外部存储模块的指针,并将暂存于所述明文缓存器内的所述当前明文数据包存储于所述指针所指示的外部存储模块的存储地址中,且基于所述当前明文数据包在所述外部存储模块中所占用的存储空间长度,更新所述指针对应的数据存储偏移量;其中,所述密文数据包为每次需要下载的文件大小对应的密文升级文件,所述解密密钥为基于所述固件空中升级装置中的根密钥对所述升级请求信息中所包括的动态密钥进行解密得到的明文,且在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式;
所述处理模块还用于基于与所述密文升级文件包对应的明文升级文件,向所述其他目标对象发起统一诊断服务UDS升级服务请求,以对所述其他目标对象进行升级。
2.根据权利要求1所述的装置,其特征在于,所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数;
所述处理模块具体用于基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。
3.根据权利要求1所述的装置,其特征在于,所述处理模块还用于在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
4.根据权利要求1所述的装置,其特征在于,所述处理模块还用于确定所述当前明文数据包的大小是否与数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。
5.根据权利要求1-4中任一项所述的装置,其特征在于,所述处理模块还用于在所述当前明文数据包为第一包的情况下,对所述外部存储模块进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块中。
6.根据权利要求1-4中任一项所述的装置,其特征在于,所述升级请求信息还包括文件签名信息,所述处理模块还用于在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。
7.一种充电桩,其特征在于,包括权利要求1-6中任一项所述的固件空中升级装置。
8.一种固件空中升级方法,其特征在于,包括:
接收服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括密文升级文件包的大小、所述密文升级文件包的存储地址以及动态密钥;所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;
在确定固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小;
基于所述每次需要下载的文件大小从所述存储地址中对所述密文升级文件包进行下载,并将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块的密文缓存器内;
基于获取的加密填充模式、初始向量以及解密密钥对本次下载的当前密文数据包进行解密,并将解密后的输出内容暂存于所述内部存储模块的明文缓存器内,直到得到当前明文数据包且将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;所述解密密钥为基于所述固件空中升级装置中的根密钥对所述升级请求信息中所包括的动态密钥进行解密得到的明文,且在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式;
确定所述当前明文数据包在外部存储模块的指针,并将暂存于所述明文缓存器内的所述当前明文数据包存储于所述指针所指示的外部存储模块的存储地址中,且基于所述当前明文数据包在所述外部存储模块中所占用的存储空间长度,更新所述指针对应的数据存储偏移量;
返回至所述基于所述每次需要下载的文件大小从所述存储地址中对所述升级文件包进行下载的步骤,直到下载次数达到所述文件下载次数,得到与所述密文升级文件包对应的明文升级文件;
向其他目标对象发起统一诊断服务UDS升级服务请求,并基于所述明文升级文件对所述其他目标对象进行升级;所述其他目标对象包括终端控制单元、中央控制单元、功率控制单元、输出控制单元及电源转换单元中的至少一种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310383430.5A CN116107612B (zh) | 2023-04-11 | 2023-04-11 | 固件空中升级装置、充电桩、设备、方法及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310383430.5A CN116107612B (zh) | 2023-04-11 | 2023-04-11 | 固件空中升级装置、充电桩、设备、方法及程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116107612A CN116107612A (zh) | 2023-05-12 |
CN116107612B true CN116107612B (zh) | 2023-07-04 |
Family
ID=86256530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310383430.5A Active CN116107612B (zh) | 2023-04-11 | 2023-04-11 | 固件空中升级装置、充电桩、设备、方法及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116107612B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012024963A1 (zh) * | 2010-08-27 | 2012-03-01 | 华为终端有限公司 | 基于固件空中传输技术的固件处理方法、装置及系统 |
WO2018001082A1 (zh) * | 2016-06-30 | 2018-01-04 | 中兴通讯股份有限公司 | 升级文件的制作方法、升级方法、装置及设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250192B (zh) * | 2016-08-04 | 2019-12-17 | 芯讯通无线科技(上海)有限公司 | 上位机的软件升级方法及系统 |
CN110502256A (zh) * | 2018-05-18 | 2019-11-26 | 佛山市顺德区美的电热电器制造有限公司 | 一种软件升级方法、终端及存储介质 |
CN113079155B (zh) * | 2021-03-29 | 2022-12-06 | 重庆富民银行股份有限公司 | 基于混合密码的文件加密处理方法 |
KR20230013943A (ko) * | 2021-07-20 | 2023-01-27 | 주식회사 케이티 | Iptv 단말의 업그레이드를 위한 장치, 시스템 및 방법 |
CN114237654A (zh) * | 2021-11-11 | 2022-03-25 | 成都市卡蛙科技有限公司 | 一种ota升级方法及系统 |
CN115421745A (zh) * | 2022-07-28 | 2022-12-02 | 科华数据股份有限公司 | 设备远程升级方法、装置、终端及存储介质 |
-
2023
- 2023-04-11 CN CN202310383430.5A patent/CN116107612B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012024963A1 (zh) * | 2010-08-27 | 2012-03-01 | 华为终端有限公司 | 基于固件空中传输技术的固件处理方法、装置及系统 |
WO2018001082A1 (zh) * | 2016-06-30 | 2018-01-04 | 中兴通讯股份有限公司 | 升级文件的制作方法、升级方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116107612A (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112291190B (zh) | 一种身份认证方法、终端及服务器 | |
CN107797817B (zh) | 应用更新方法和装置 | |
CN111263352B (zh) | 车载设备的ota升级方法、系统、存储介质及车载设备 | |
CN109560931B (zh) | 一种基于无证书体系的设备远程升级方法 | |
US11321074B2 (en) | Vehicle-mounted device upgrade method and related apparatus | |
US20210256114A1 (en) | Over-The-Air Upgrade Method and Related Apparatus | |
CN112913189B (zh) | 一种ota升级方法及装置 | |
CN111147260A (zh) | 一种车辆密钥生成及发行方法、装置 | |
CN113885907A (zh) | 一种固件升级系统及方法 | |
CN116419217B (zh) | Ota数据升级方法、系统、设备及存储介质 | |
CN116107612B (zh) | 固件空中升级装置、充电桩、设备、方法及程序产品 | |
CN115242413A (zh) | 物联网设备固件安全升级方法、装置、电子设备及介质 | |
CN112311528A (zh) | 一种基于国密算法的数据安全传输方法 | |
CN116909603A (zh) | 车辆安全升级方法及系统 | |
CN111400771A (zh) | 目标分区的校验方法及装置、存储介质、计算机设备 | |
Salas | A secure framework for OTA smart device ecosystems using ECC encryption and biometrics | |
CN113434824B (zh) | 一种软件服务授权管理方法、装置、设备及存储介质 | |
CN114553542A (zh) | 一种数据包加密方法、装置及电子设备 | |
CN114143197A (zh) | 物联网设备ota升级方法、装置、设备及可读存储介质 | |
CN113704789A (zh) | 一种车载通讯安全处理方法、装置、设备及存储介质 | |
CN117932622B (zh) | 一种嵌入式设备的fota升级方法、装置、设备及存储介质 | |
CN112202725B (zh) | 业务的校验方法及装置 | |
WO2023276531A1 (ja) | 車載通信システム,リプロポリシーメタデータのデータ構造及びダウンロードメタデータのデータ構造 | |
CN116795400A (zh) | Ota升级方法、装置、设备及存储介质 | |
CN115913714A (zh) | 基于ota升级的信息安全校验方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |