掌桥专利:专业的专利平台
掌桥专利
首页

一种密码芯片嵌入式应用升级方法及装置

文献发布时间:2023-06-19 11:19:16


一种密码芯片嵌入式应用升级方法及装置

技术领域

本发明涉及应用升级技术领域,尤其涉及一种密码芯片嵌入式应用升级方法及装置。

背景技术

密码芯片是指实现了一种或多种密码算法,使用密码体制来保护密钥和敏感信息的集成电路芯片。密码芯片的核心通常是可运行密码算法的智能CPU芯片。当前,密码芯片已广泛应用于政务、金融、公安、国防、民政、通信、交通、卫生、教育、物流、水电气等领域,这些领域与公共安全和经济社会发展相关,是维持和保障网络与信息体系安全的核心基础。

随着密码芯片的广泛使用,密码芯片要适应多种场景,因此,一颗密码芯片上可能会安装多个第三方应用。

然而,在应用是第三方开发的情况下,对于应用的升级,存在非授权应用升级的风险,从而给用户的设备及个人信息安全带来安全隐患。

发明内容

本发明提供了一种密码芯片嵌入式应用升级方法及装置,用于解决应用升级存在非授权升级的技术问题。

本发明提供了一种密码芯片嵌入式应用升级方法,应用于密码芯片嵌入式平台,所述方法包括:

当用户触发应用升级操作时,对所述用户进行身份认证;

在认证通过后,接收所述用户输入的预设应用升级包的第一度量值;

接收所述应用升级包;其中,所述应用升级包中携带有所述应用升级包的版本信息;

对所述应用升级包进行完整性度量,获取所述应用升级包的第二度量值;

采用所述第一度量值、所述第二度量值和所述版本信息对所述应用升级包进行验证;

当验证通过时,安装所述应用升级包。

可选地,还包括:

当对所述应用升级包验证失败时,删除所述应用升级包。

可选地,所述采用所述第一度量值、所述第二度量值和所述版本信息对所述应用升级包进行验证的步骤,包括:

对比所述第一度量值和所述第二度量值;

当所述第一度量值等于所述第二度量值时,确定所述应用升级包对应的目标应用;

获取所述目标应用的当前版本信息;

对比所述版本信息和所述当前版本信息,通过对比结果对所述应用升级包进行验证。

可选地,所述当验证通过时,安装所述应用升级包的步骤,包括:

当所述对比结果为所述版本信息高于所述当前版本信息时,判定验证通过,安装所述应用升级包。

本发明还提供了一种密码芯片嵌入式应用升级装置,应用于密码芯片嵌入式平台,所述装置包括:

身份认证模块,用于当用户触发应用升级操作时,对所述用户进行身份认证;

第一度量值接收模块,用于在认证通过后,接收所述用户输入的预设应用升级包的第一度量值;

应用升级包接收模块,用于接收所述应用升级包;其中,所述应用升级包中携带有所述应用升级包的版本信息;

第二度量值获取模块,用于对所述应用升级包进行完整性度量,获取所述应用升级包的第二度量值;

验证模块,用于采用所述第一度量值、所述第二度量值和所述版本信息对所述应用升级包进行验证;

安装模块,用于当验证通过时,安装所述应用升级包。

可选地,还包括:

删除模块,用于当对所述应用升级包验证失败时,删除所述应用升级包。

可选地,所述验证模块,包括:

第一对比子模块,用于对比所述第一度量值和所述第二度量值;

目标应用确定子模块,用于当所述第一度量值等于所述第二度量值时,确定所述应用升级包对应的目标应用;

当前版本信息获取子模块,用于获取所述目标应用的当前版本信息;

验证子模块,用于对比所述版本信息和所述当前版本信息,通过对比结果对所述应用升级包进行验证。

可选地,所述安装模块,包括:

安装子模块,用于当所述对比结果为所述版本信息高于所述当前版本信息时,判定验证通过,安装所述应用升级包。

本发明还提供了一种电子设备,所述设备包括处理器以及存储器:

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令执行如上任一项所述的密码芯片嵌入式应用升级方法。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行如上任一项所述的密码芯片嵌入式应用升级方法。

从以上技术方案可以看出,本发明具有以下优点:本发明通过当用户触发应用升级操作时,对所述用户进行身份认证;在认证通过后,接收所述用户输入的预设的待安装嵌入式应用的第一度量值;接收所述应用升级包;其中,所述应用升级包中携带有所述应用升级包的版本信息;对所述应用升级包进行完整性度量,获取所述应用升级包的第二度量值;采用所述第一度量值、所述第二度量值和所述版本信息对所述应用升级包进行验证;当验证通过时,安装所述应用升级包。避免了非授权的应用升级,提高了应用升级的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的一种密码芯片嵌入式应用升级方法的步骤流程图;

图2为本发明另一实施例提供的一种密码芯片嵌入式应用升级方法的步骤流程图;

图3为本发明实施例提供的一种密码芯片嵌入式应用升级装置的结构框图。

具体实施方式

本发明实施例提供了一种密码芯片嵌入式应用升级方法及装置,用于解决应用升级存在非授权升级的技术问题。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1,图1为本发明实施例提供的一种密码芯片嵌入式应用升级方法的步骤流程图。

本发明提供的一种密码芯片嵌入式应用升级方法,应用于密码芯片嵌入式平台,方法可以包括以下步骤:

步骤101,当用户触发应用升级操作时,对用户进行身份认证;

密码芯片是指实现了一种或多种密码算法,使用密码体制来保护密钥和敏感信息的集成电路芯片。密码芯片的核心通常是可运行密码算法的智能CPU芯片。当前,密码芯片已广泛应用于政务、金融、公安、国防、民政、通信、交通、卫生、教育、物流、水电气等领域,这些领域与公共安全和经济社会发展相关,是维持和保障网络与信息体系安全的核心基础。

身份验证又称“验证”、“鉴权”,是指通过一定的手段,完成对用户身份的确认。在实际应用中,身份验证可以使用包括但不限于对称密码技术、非对称密码技术等来实现。

在本发明实施例中,密码芯片嵌入式平台可以通过对用户进行身份认证,来避免非法用户对密码芯片的修改。

步骤102,在认证通过后,接收用户输入的预设应用升级包的第一度量值;

在本发明实施例中,在用户身份认证通过后,用户可以向密码芯片嵌入式平台发送预设应用升级包的第一度量值,以用于后续密码芯片嵌入式平台对应用升级包进行合法性验证。

步骤103,接收应用升级包;其中,应用升级包中携带有应用升级包的版本信息;

在本发明实施例中,为了升级应用,需要获取应用升级包。在一个示例中,应用升级包可以从第三用应用平台获取。其中,所获取的应用升级包中携带有该应用升级包的版本信息。用于后续判断是否需要安装该应用升级包。

步骤104,对应用升级包进行完整性度量,获取应用升级包的第二度量值;

完整性是指,存储在数据库中的所有数据值均正确的状态。如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性。

在本发明实施例中,在获取到应用升级包后,可以对应用升级包进行完整性度量,得到应用升级包的第二度量值。

步骤105,采用第一度量值、第二度量值和版本信息对应用升级包进行验证;

步骤106,当验证通过时,安装应用升级包。

在本发明实施例中,在获取到第一度量值、第二度量值和应用升级包的版本信息后,可以基于第一度量值、第二度量值和应用升级包的版本信息,对应用升级包进行授权安装验证。当验证通过时,可选择安装该应用升级包。

本发明通过当用户触发应用升级操作时,对用户进行身份认证;在认证通过后,接收用户输入的预设的待安装嵌入式应用的第一度量值;接收应用升级包;其中,应用升级包中携带有应用升级包的版本信息;对应用升级包进行完整性度量,获取应用升级包的第二度量值;采用第一度量值、第二度量值和版本信息对应用升级包进行验证;当验证通过时,安装应用升级包。避免了非授权的应用升级,提高了应用升级的安全性。

请参阅图2,图2为本发明另一实施例提供的一种密码芯片嵌入式应用升级方法的步骤流程图。其具体可以包括以下步骤:

步骤201,当用户触发应用升级操作时,对用户进行身份认证;

在本发明实施例中,密码芯片嵌入式平台可以通过对用户进行身份认证,来避免非法用户对密码芯片的修改。

在具体实现中,身份验证可以使用包括但不限于对称密码技术、非对称密码技术等来实现。

其中,对称密码是指发件人和收件人使用其共同拥有的单个密钥进行加解密,这种密钥既用于加密,也用于解密,叫做机密密钥,也成对称密钥或会话密钥。能够提供信息机密性、完整性的服务。

基于对称密码体制下的认证要求示证方和验证方共享密钥,通过共享密钥来维系彼此的信任关系,实际上认证就是建立某种信任关系的过程。在一个只有少量用户的封闭式网络系统中,各用户之间的双人共享密钥的数量有限,可以采用挑战-应答方式来实现认证;对于规模较大的网络系统,一般采用密钥服务器的方式来实现认证,即依靠可信的第三方完成认证。

在本发明实施例中,可以采用基于挑战-应答方式的认证协议进行用户身份认证。基于挑战-应答方式的认证协议实际上是由验证方生成一个大的随机数据串,即挑战,将挑战发送给示证方,示证方使用共享密钥加密挑战,然后回送给验证方,验证方通过解密密文得到挑战,通过验证挑战的正确与否,来认证示证方的身份。

在一个示例中,用户A和密码芯片嵌入式平台B通信为了核实对方的身份,B发送给A一个挑战Nb,A收到后使用A和B之间的共享密钥k对Nb进行加密,然后将密文发送给B,B使用k还原密文判断还原的内容与挑战Nb是否一致。在这个过程中B可以核实A的身份,因为只有A才能够使用k加密Nb。

非对称密码,是指通信中的双方分别持有公开密钥和私有密钥,由其中的一方采用私有密钥对特定数据进行加密,而对方采用公开密钥对数据进行解密,如果解密成功,就认为用户是合法用户,否则就认为是身份验证失败。

使用基于非对称密码算法的身份验证的服务有:SSL、数字签名等等。

在本发明实施例中,用户可以通过密码芯片嵌入式平台提供的基于对称密码或非对称密码的指令进行身份认证,以避免非法用户升级第三方应用。

步骤202,在认证通过后,接收用户输入的预设应用升级包的第一度量值;

在本发明实施例中,在用户身份认证通过后,用户可以向密码芯片嵌入式平台发送预设应用升级包的第一度量值,以用于后续密码芯片嵌入式平台对应用升级包进行合法性验证。

在一个示例中,第一度量值可以通过对待安装嵌入式应用进行哈希计算得到。

步骤203,接收应用升级包;其中,应用升级包中携带有应用升级包的版本信息;

在本发明实施例中,为了升级应用,需要获取应用升级包。在一个示例中,应用升级包可以从第三用应用平台获取。其中,所获取的应用升级包中携带有该应用升级包的版本信息。用于后续判断是否需要安装该应用升级包。

在一个示例中,第三方平台可以通过密码芯片嵌入式平台提供的指令,将应用升级包传输给密码芯片嵌入式平台。

步骤204,对应用升级包进行完整性度量,获取应用升级包的第二度量值;

在本发明实施例中,在获取到应用安装包后,可以对应用安装包进行完整性度量,得到待安装嵌入式应用的第二度量值。

在具体实现中,可以通过国密算法SM3对应用安装包进行完整性度量,得到待安装嵌入式应用的第二度量值。

步骤205,采用第一度量值、第二度量值和版本信息对应用升级包进行验证;

在本发明实施例中,采用第一度量值、第二度量值和版本信息对应用升级包进行验证的步骤,可以包括:

对比第一度量值和第二度量值;

当第一度量值等于第二度量值时,确定应用升级包对应的目标应用;

获取目标应用的当前版本信息;

对比版本信息和当前版本信息,通过对比结果对应用升级包进行验证。

在具体实现中,在获取第一度量值和第二度量值后,可以对比第一度量值和第二度量值是否相等,来判断应用升级包的合法性,当应用升级包合法时,可确定应用升级包对应的目标应用,并获取目标应用的当前版本信息,通过当前版本信息和应用升级包的版本信息,来判断是否安装应用升级包。

步骤206,当验证通过时,安装应用升级包;

在本发明实施例中,步骤206可以包括:

当对比结果为版本信息高于当前版本信息时,判定验证通过,安装应用升级包。

在具体实现中,当判定应用升级包合法后,可以通过比对目标应用的当前版本信息和应用升级包的版本信息来确定是否安装应用升级包。当应用升级包的版本信息高于目标应用的当前版本信息时,表征目标应用有升级数据,可进行升级。此时可以安装应用升级包来完成应用升级。

步骤207,当对应用升级包验证失败时,删除应用升级包。

在本发明实施例中,当应用升级包验证失败时,即应用升级包的版本信息小于或等于目标应用的当前版本信息,则表征目标应用没有升级数据,此时可以删除应用升级包。

本发明通过当用户触发应用升级操作时,对用户进行身份认证;在认证通过后,接收用户输入的预设的待安装嵌入式应用的第一度量值;接收应用升级包;其中,应用升级包中携带有应用升级包的版本信息;对应用升级包进行完整性度量,获取应用升级包的第二度量值;采用第一度量值、第二度量值和版本信息对应用升级包进行验证;当验证通过时,安装应用升级包。避免了非授权的应用升级,提高了应用升级的安全性。

请参阅图3,图3为本发明实施例提供的一种密码芯片嵌入式应用升级装置的结构框图。

本发明实施例提供了一种密码芯片嵌入式应用升级装置,应用于密码芯片嵌入式平台,装置包括:

身份认证模块301,用于当用户触发应用升级操作时,对用户进行身份认证;

第一度量值接收模块302,用于在认证通过后,接收用户输入的预设应用升级包的第一度量值;

应用升级包接收模块303,用于接收应用升级包;其中,应用升级包中携带有应用升级包的版本信息;

第二度量值获取模块304,用于对应用升级包进行完整性度量,获取应用升级包的第二度量值;

验证模块305,用于采用第一度量值、第二度量值和版本信息对应用升级包进行验证;

安装模块306,用于当验证通过时,安装应用升级包。

在本发明实施例中,还包括:

删除模块,用于当对应用升级包验证失败时,删除应用升级包。

在本发明实施例中,验证模块305,包括:

第一对比子模块,用于对比第一度量值和第二度量值;

目标应用确定子模块,用于当第一度量值等于第二度量值时,确定应用升级包对应的目标应用;

当前版本信息获取子模块,用于获取目标应用的当前版本信息;

验证子模块,用于对比版本信息和当前版本信息,通过对比结果对应用升级包进行验证。

在本发明实施例中,安装模块306,包括:

安装子模块,用于当对比结果为版本信息高于当前版本信息时,判定验证通过,安装应用升级包。

本发明实施例还提供了一种电子设备,设备包括处理器以及存储器:

存储器用于存储程序代码,并将程序代码传输给处理器;

处理器用于根据程序代码中的指令执行本发明实施例的密码芯片嵌入式应用升级方法。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行本发明实施例的密码芯片嵌入式应用升级方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种密码芯片嵌入式应用升级方法及装置
  • 一种密码芯片嵌入式应用卸载方法及装置
技术分类

06120112881127