嵌入式程序的安全升级方法、装置、设备及存储介质制造方法及图纸

技术编号:24019713 阅读:52 留言:0更新日期:2020-05-02 04:49
本申请提供一种嵌入式程序的安全升级方法、装置、设备及存储介质。该方法包括:在引导程序的运行过程中,获取所述应用程序的升级数据;对所述升级数据进行校验;若校验通过,则根据所述升级数据对所述应用程序进行升级。本申请可在原有程序损坏的情况下实现程序升级。

Security upgrade method, device, equipment and storage medium of embedded program

【技术实现步骤摘要】
【国外来华专利技术】嵌入式程序的安全升级方法、装置、设备及存储介质
本申请实施例涉及安全技术,尤其涉及一种嵌入式程序的安全升级方法、装置、设备及存储介质。
技术介绍
随着互联网技术(Internet Technology,IT)的不断发展,基于嵌入式芯片开发的各种嵌入式程序越来越多,这使得信息安全的占比也越来越重,安全芯片的使用范围也越来越广。目前市场上大多的安全芯片,其程序升级大多需依托于原有的程序。一旦芯片受到攻击或外部环境的变化,使得程序发生损坏,则芯片承载的软件服务便无法正常使用,且无法进行升级因此,对于嵌入式设备,特别是安装有安全芯片的嵌入式设备,如何在程序在损坏情况下,还可实现程序升级,显得格外重要。
技术实现思路
本申请实施例提供一种嵌入式程序的安全升级方法、装置、设备及存储介质,以提高程序运行过程中的信息安全性。本申请实施例提供一种嵌入式程序的安全升级方法,所述方法包括:在引导程序的运行过程中,获取应用程序的升级数据;对所述升级数据进行校验;若校验通过,则根据所述升级数据对所述应用程序进行升级。本申请实施例还提供一种嵌入式程序的安全升级装置,所述装置包括:获取模块,用于在引导程序的运行过程中,获取应用程序的升级数据;校验模块,用于对所述升级数据进行校验;升级模块,用于若校验通过,则根据所述升级数据对所述应用程序进行升级。本申请实施例还提供一种嵌入式设备,包括:存储器和处理器;所述存储器和所述处理器通过总线连接;所述存储器,用于存储程序指令;所述处理器,用于调用所述存储器存储的所述程序指令时,执行上述嵌入式程序的安全升级方法。本申请实施例还提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的嵌入式程序的安全升级方法。本申请实施例提供的嵌入式程序的安全升级方法、装置、设备及存储介质,可通过在引导程序的运行过程中,获取应用程序的升级数据,并对该升级数据进行校验,若校验通过,则根据该升级数据对该应用程序进行升级。该嵌入式程序的安全升级方法中,可在引导程序的运行过程中获取该应用程序的升级数据,继而实现应用程序的升级,由于引导程序运行过程中,通常应用程序还未启动,因此,该方法中应用程序的升级可无需依托于原有的程序,即便原有程序发生损坏,依然可实现应用程序的升级。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种嵌入式芯片的硬件架构示意图;图2为本申请实施例一提供的嵌入式程序的安全升级方法的流程图;图3为本申请实施例二提供的嵌入式程序的安全升级方法的流程图;图4为本申请实施例提供的一种嵌入式程序的安全升级方法中应用程序的升级数据的结构图;图5为本申请实施例三提供的嵌入式程序的安全升级方法的流程图;图6为本申请实施例四提供的嵌入式程序的安全升级方法的流程图;图7为本申请实施例五提供的嵌入式程序的安全升级方法的流程图;图8为本申请实施例六提供的嵌入式程序的安全升级方法的流程图;图9为本申请实施例提供的一种嵌入式程序的安全升级装置的结构示意图;图10为本申请实施例提供的一种嵌入式设备的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。本申请下述各实施例提供的嵌入式程序的安全升级方法、装置、设备及存储介质可应用于具有嵌入式芯片的设备中。该具有嵌入式芯片的设备可称为嵌入式设备。先对嵌入式芯片的硬件架构进行说明。图1为本申请实施例提供的一种嵌入式芯片的硬件架构示意图。如图1所示,嵌入式芯片中可包括:中央处理器(Central Processing Unit,CPU)、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存存储器(Flash Memory)、输入/输出(Input/Output,I/O)接口、安全措施电路、密码协处理器、随机数生成器、时钟电路以及复位电路。其中,该闪存存储器还可以为带电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)。该具有嵌入式芯片的设备中,CPU、ROM、RAM、闪存存储器、I/O接口、安全措施电路、密码协处理器、随机数生成器、时钟电路以及复位电路,分别于设备总线连接。其中,安全措施电路还与密码协处理器连接。在该嵌入式芯片中,还可包括:单次可编程存储器,该单次可编程存储器可以为电熔丝(eFuse)存储器或者一次可编程(One Time Programle)存储器。该单次可编程存储器,可在芯片出厂时灌入数据,其后,仅可只读。其中,随机数生成器可生成用于派生密钥的随机数,密码协处理器可配合CPU实现,加密、解密、校验等过程的实现。需要说明的是,当上述嵌入式程序的安全升级方法中,任一校验失败、程序运行错误或者数据异常时,可通过设备的输入输出接口。输出错误状态,用以排查错误或异常原因。如下结合上述图1所示的嵌入式芯片,通过多个实例对本申请实施例提供的嵌入式程序的安全升级方法进行说明。图2为本申请实施例一提供的嵌入式程序的安全升级方法的流程图。该嵌入式程序的安全升级方法可应用于具有嵌入式芯片的设备中。该嵌入式程序的安全升级方法可通过软件的方式实现,也可通过软件和硬件结合的方式实现。如图2所示,该方法可包括:S201、在引导程序的运行过程中,获取应用程序的升级数据。该方法中,可在引导程序的运行过程中,当接收到应用程序的升级触发事件时,便可触发进入应用程序的升级流程,获取该应用程序的升级数据。在该应用程序的升级流程中,可通过升级通道从主控设备/云端获取该应用程序的升级数据。该升级通道例如可以为有线接口的升级通道,也可以为无线接口的升级通道下载通道。其中,上述主控设备可以为个人计算机(Pers本文档来自技高网
...

【技术保护点】
一种嵌入式程序的安全升级方法,其特征在于,所述方法包括:/n在引导程序的运行过程中,获取应用程序的升级数据;/n对所述升级数据进行校验;/n若校验通过,则根据所述升级数据对所述应用程序进行升级。/n

【技术特征摘要】
【国外来华专利技术】一种嵌入式程序的安全升级方法,其特征在于,所述方法包括:
在引导程序的运行过程中,获取应用程序的升级数据;
对所述升级数据进行校验;
若校验通过,则根据所述升级数据对所述应用程序进行升级。


根据权利要求1所述的方法,其特征在于,所述获取所述应用程序的升级数据,包括:
当检测到所述应用程序的升级触发事件,获取所述应用程序的升级数据。


根据权利要求2所述的方法,其特征在于,所述当检测到所述应用程序的升级触发事件,获取所述应用程序的升级数据包括:
在所述引导程序的运行过程中,通过检测预设的升级接口的状态,以判断是否接收到所述升级触发事件;或者,
在所述引导程序的运行过程中,通过检测闪存存储器中所述应用程序的数据是否存在异常,以判断是否接收到所述升级触发事件。


根据权利要求1所述的方法,其特征在于,所述获取所述应用程序的升级数据还包括:
根据预设的升级接口信息,对升级接口进行初始化;
通过所述升级接口获取所述升级数据。


根据权利要求1所述的方法,其特征在于,所述对所述升级数据进行校验包括:
对所述升级数据进行循环冗余校验;
若校验通过,则根据所述升级数据对所述应用程序进行升级。


根据权利要求1所述的方法,其特征在于,所述升级数据包括:签名信息,所述根据所述升级数据对所述应用程序进行升级,包括:
根据所述签名信息,对所述应用程序进行签名校验;
若校验通过,对所述应用程序进行升级。


根据权利要求1-5中任一项所述的方法,其特征在于,所述升级数据还包括:所述应用程序的参数信息、所述应用程序的公钥信息,和所述应用程序的加密数据;所述根据所述升级数据对所述应用程序进行升级,还包括:
根据所述应用程序的参数信息及所述应用程序的公钥信息,对所述应用程序的加密数据进行解密,得到解密后的数据,所述解密后的数据包括所述应用程序的目标版本信息;
根据所述目标版本信息,对所述应用程序进行版本校验;
若校验通过,则对所述应用程序进行升级。


根据权利要求1-5中任一项所述的方法,其特征在于,所述升级数据还包括:数字校验码;所述根据所述升级数据对所述应用程序进行升级,还包括:
根据所述数字校验码,对所述应用程序进行完整性校验;
若校验通过,则对所述应用程序进行升级。


根据权利要求1-5中任一项所述的方法,其特征在于,所述根据所述升级数据对所述应用程序进行升级,还包括:
将所述升级数据,写入闪存存储器中的至少一个存储区中。


根据权利要求9所述的方法,其特征在于,所述将所述升级数据,写入闪存存储器中的至少一个存储区中,包括:
将所述升级数据,写入所述闪存存储器中的每个存储区中,并替换所述每个存储区所存储的所述应用程序的数据。


根据权利要求10所述的方法,其特征在于,所述方法还包括:
读取所述每个存储区存储的所述升级数据;
对所述每个存储区读取的所述升级数据进行校验;
若存在至少一个存储区校验通过,则确定所述应用程序升级成功;
若所述至少一个存储区均校验不通过,则确定所述应用程序升级失败。


一种嵌入式程序的安全升级装置,其特征在于,包括:
获取模块,用于在引导程序的运行过程中,获...

【专利技术属性】
技术研发人员:李庆斌陈德坤韦健
申请(专利权)人:深圳市汇顶科技股份有限公司
类型:发明
国别省市:广东;44

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

1