CN115208575A - 软件安全性的校验方法、设备及存储介质 - Google Patents

软件安全性的校验方法、设备及存储介质 Download PDF

Info

Publication number
CN115208575A
CN115208575A CN202210594174.XA CN202210594174A CN115208575A CN 115208575 A CN115208575 A CN 115208575A CN 202210594174 A CN202210594174 A CN 202210594174A CN 115208575 A CN115208575 A CN 115208575A
Authority
CN
China
Prior art keywords
certificate
software package
public key
hash value
root
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
CN202210594174.XA
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.)
Fibocom Wireless Inc
Original Assignee
Fibocom Wireless Inc
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 Fibocom Wireless Inc filed Critical Fibocom Wireless Inc
Priority to CN202210594174.XA priority Critical patent/CN115208575A/zh
Publication of CN115208575A publication Critical patent/CN115208575A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种软件安全性的校验方法、设备及存储介质。该方法包括获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包。由于能够采用第一证书和第二证书对软件包进行校验,并在校验通过后才执行软件包,所以可以保证执行软件包的安全性。

Description

软件安全性的校验方法、设备及存储介质
技术领域
本申请涉及计算机领域,尤其涉及一种软件安全性的校验方法、设备及存储介质。
背景技术
目前,大多数的威胁来源于用户所下载的内容。以下载软件的场景为例,在下载软件时,电子设备没有做安全下载和安全启动等验证,导致会有人在电子设备中恶意烧录没认证的软件,从而危害用户的软件信息安全。
发明内容
本申请提供了一种软件安全性的校验方法、设备及存储介质,用以解决相关技术中存在有人在电子设备中恶意烧录没认证的软件,导致的危害用户的软件信息安全的问题。
第一方面,提供一种软件安全性的校验方法,包括:
获取软件的软件包中的第一证书和第二证书,所述第一证书用于校验所述软件包的软件包公钥,所述第二证书用于校验所述软件包;
基于预先烧录的根公钥解密所述第一证书的签名,得到软件包公钥哈希值;
当基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确时,采用所述软件包公钥解密所述第二证书的签名,得到软件包哈希值;
当确定所述软件包哈希值与所述第二证书中的软件包哈希值相同时,执行所述软件包。
可选地,获取软件的软件包中的第一证书和第二证书之前,还包括:
获取所述软件的证书认证文件和加密证书文件,所述证书认证文件中包括证书认证文件公钥;
当基于所述预先烧录的根公钥,确定所述证书认证文件公钥有效时,采用所述证书认证文件公钥解密所述加密证书文件,获得证书文件;
根据所述证书文件,下载所述软件包。
可选地,基于所述预先烧录的根公钥,确定所述证书认证文件公钥有效,包括:
基于所述预先烧录的根公钥解密所述证书认证文件中的签名,得到解密证书认证文件公钥;
当所述解密证书认证文件公钥与所述证书文件公钥一致时,确定所述证书认证文件公钥有效。
可选地,基于所述预先烧录的根公钥解密所述证书认证文件中的签名,得到解密证书认证文件公钥之前,还包括:
获取所述证书认证文件中的根公钥;
计算所述证书认证文件中的根公钥的第一哈希值、以及所述预先烧录的根公钥的第二哈希值;
确定所述第一哈希值与所述第二哈希值相同。
可选地,基于预先烧录的根公钥解密所述第一证书的签名,得到所述软件包公钥的哈希值之前,还包括:
获取所述第一证书中的根公钥;
计算所述第一证书中的根公钥的第三哈希值、以及所述预先烧录的根公钥的第二哈希值;
确定所述第二哈希值和所述第三哈希值相同。
可选地,基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确,包括:
获取所述第一证书中的软件包公钥;
计算所述第一证书中的软件包公钥的哈希值;
当确定所述软件包公钥哈希值与所述第一证书中的软件包公钥的哈希值相同时,确定所述第一证书中的软件包公钥正确。
可选地,基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确后,采用所述软件包公钥解密所述第二证书的签名,得到软件包哈希值之前,还包括:
获取所述第二证书中的软件包公钥;
确定所述第二证书中的软件包公钥与所述第一证书中的软件包公钥相同。
第二方面,提供一种软件包安全性的校验方法,包括:
采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,所述根私钥与预先烧录到电子设备中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,所述软件包私钥和所述软件包公钥匹配;
基于所述第一证书的签名和所述软件包公钥,生成所述第一证书;基于所述第二证书的签名和所述软件包哈希值,生成所述第二证书;
当满足下发所述软件包的下发条件时,下发包括所述第一证书和所述第二证书的软件包。
第三方面,提供一种电子设备,包括:处理器、存储器和通信总线,其中,处理器和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现第一方面或第二方面所述的方法。
第四方面,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第二方面所述的方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包。由于能够采用第一证书和第二证书对软件包进行校验,并在校验通过后才执行软件包,所以可以保证执行软件包的安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中软件安全性的校验方法的一种流程示意图;
图2为本申请实施例中软件安全性的校验方法的又一种流程示意图;
图3为本申请实施例中软件安全性的校验系统的一种结构示意图;
图4为本申请实施例中软件安全性的校验装置的又一种结构示意图;
图5为本申请实施例中软件安全性的校验装置的又一种结构示意图;
图6为本申请实施例中电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种软件安全性的校验方法,该方法可应用于电子设备;该电子设备具体可以为能够实现通信功能的模组或包含该模组的终端设备等,该终端设备可以为移动终端或智能终端。移动终端具体可以为手机、平板电脑、笔记本电脑等中的至少一种;智能终端具体可以是智能汽车、智能手表、共享单车、智能柜等含有无线通信模组的终端;模组具体可以为无线通信模组,例如2G通信模组、3G通信模组、4G通信模组、5G通信模组、NB-IOT通信模组等中的任意一种。
如图1所示,该方法可以包括以下步骤:
步骤101、获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包。
由于DA(Download Agent,下载代理)文件指示了软件包的下载配置,比如DA文件可以指示软件包的大小、下载次序等,因此为了进一步保证软件的安全性,还可以在对第一证书和第二证书进行验证之前,对DA文件进行验证,以确保软件包的下载的安全性。
一个可选实施例中,获取软件的软件包中的第一证书和第二证书之前,获取软件的证书认证文件和加密证书文件,证书认证文件中包括证书认证文件公钥;当基于预先烧录的根公钥,确定证书认证文件公钥有效时,采用证书认证文件公钥解密加密证书文件,获得证书文件;根据证书文件,下载软件包。
本实施例中,采用证书认证文件中的签名,验证证书认证文件公钥的有效性。
一个可选实施例中,基于预先烧录的根公钥解密证书认证文件中的签名,得到解密证书认证文件公钥;当解密证书认证文件公钥与证书文件公钥一致时,确定证书认证文件公钥有效。
本实施例中,为了保证预先烧录的根公钥与证书认证文件中的签名的加密密钥匹配,在对证书认证文件中的签名进行解密之前,还可以进一步验证根公钥。
一个可选实施例中,获取证书认证文件中的根公钥;计算证书认证文件中的根公钥的第一哈希值、以及预先烧录的根公钥的第二哈希值;确定第一哈希值与第二哈希值相同。
应理解,这里当第一哈希值与第二哈希值相同时,确认证书认证文件中的根公钥与预先烧录的根公钥相同。
步骤102、基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值。
本实施例中,为了保证预先烧录的根公钥与第一证书的签名的加密密钥匹配,在对第一证书的签名进行解密之前,还可以进一步验证根公钥。
一个可选实施例中,获取第一证书中的根公钥;计算第一证书中的根公钥的第三哈希值、以及预先烧录的根公钥的第二哈希值;确定第二哈希值和第三哈希值相同。
应理解,当第二哈希值和第三哈希值相同时,确认第一证书中的根公钥与预先烧录的根公钥相同。
步骤103、当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值。
本实施例中,采用对第一证书解密得到的软件包公钥哈希值与第一证书中的软件包公钥匹配的方式,确定第一证书中的软件包公钥是否正确。
一个可选实施例中,获取第一证书中的软件包公钥;计算第一证书中的软件包公钥的哈希值;当确定软件包公钥哈希值与第一证书中的软件包公钥的哈希值相同时,确定第一证书中的软件包公钥正确。
本实施例中,还可以采采用第二证书中的软件包公钥校验第一证书中的软件包公钥。
一个可选实施例中,基于软件包公钥哈希值,确定第一证书中的软件包公钥正确后,采用软件包公钥解密第二证书的签名,得到软件包哈希值之前,获取第二证书中的软件包公钥;确定第二证书中的软件包公钥与第一证书中的软件包公钥相同。
步骤104、当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包。
本实施例中的执行软件包包括但不限于安装软件包和/或运行软件包。
本实施例提供的技术方案中,获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包。由于能够采用第一证书和第二证书对软件包进行校验,并在校验通过后才执行软件包,所以可以保证执行软件包的安全性。
本申请实施例提供一种软件安全性的校验方法,该方法可应用于软件提供平台;该软件提供平台可以包括终端或者服务器。该终端提可以为能够实现通信功能的模组或包含该模组的终端设备等,该终端设备可以为移动终端或智能终端。移动终端具体可以为手机、平板电脑、笔记本电脑等中的至少一种;智能终端具体可以是智能汽车、智能手表、共享单车、智能柜等含有无线通信模组的终端;模组具体可以为无线通信模组,例如2G通信模组、3G通信模组、4G通信模组、5G通信模组、NB-IOT通信模组等中的任意一种。
如图2所示,该方法可以包括以下步骤:
步骤201、采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,根私钥与预先烧录到电子设备中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,软件包私钥和软件包公钥匹配。
步骤202、基于第一证书的签名和软件包公钥,生成第一证书;基于第二证书的签名和软件包哈希值,生成第二证书。
步骤203、当满足下发软件包的下发条件时,下发包括第一证书和第二证书的软件包。
应用中,满足下发软件包的下发条件包括但不限于收到该软件包的下发请求。
本申请实施例提供的技术方案中,由于能够采用根私钥对软件包公钥的哈希值进行加密,并采用软件包私钥对软件包的软件包哈希值加密,因此使得电子设备在获得软件包后,能够基于第一证书和第二证书对软件包进行安全性校验。
以下结合一示例对上述技术方案进行解释说明,在该示例中,为了方便理解,第一证书以cert1表示,第二证书以cert2表示,软件包公钥以DAA public key表示,软件包私钥以DAA private key表示,软件包以image表示,软件包公钥哈希值以image public keyhash表示,预先烧录的根公钥以root public key表示且预先烧录的root public key存储于OTP中,根私钥以root private key表示,软件包中的数据包以image表示,软件包哈希值以image hash表示,证书认证文件以auth file表示,证书文件以DA表示。
具体实现时:
软件提供平台使用root private key对DAA public key进行签名,得到authfile中的签名。
auth file中本身会有一把root public key,电子设备在校验时先将rootpublic key取出算hash与OTP中的root public key hash对比,若通过代表auth file中的root public key正确。然后用这个root public key对auth file的签名进行验证,验证通过则auth file中的DAA public key是有效的,用于下一步对接收到的DA进行验证。
软件提供平台使用DAA private key对DA文件进行签名,得到加密证书文件。
电子设备使用auth file中的DAA public key对加密证书文件进行验证,验证通过,进入DA程序。
cert1中的root public key内部计算hash。
电子设备将cert1中得到的hash与OTP中的root public key hash对比,若相等,则cert1中的root public key是正确的root public key。
在软件提供平台,采用root private key对image public key hash进行签名,得到cert1中的签名。在电子设备,采用root public key对cert1中的签名进行解签得到image public key的hash值。
电子设备将解签得到的image public key的hash值与cert1中的image publickey计算的hash值对比,若相等,则cert1中的image public key是正确的image publickey。
如果cert1中的image public key与cert2中的image public key对比相等,则进入到cert2中的验证。
电子设备用image public key解签cert2得到image的hash值。
若解签cert2得到image的hash值与cert2中的image hash值对比相等,则执行软件包。
基于同一构思,本申请实施例中提供了一种软件包安全性的校验系统,该系统的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图3所示,该系统主要包括:
电子设备301和软件提供平台302;
电子设备301用于,获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包;
软件提供平台302用于,采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,根私钥与预先烧录到电子设备301中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,软件包私钥和软件包公钥匹配;基于第一证书的签名和软件包公钥,生成第一证书;基于第二证书的签名和软件包哈希值,生成第二证书;当满足下发软件包的下发条件时,下发包括第一证书和第二证书的软件包。
基于同一构思,本申请实施例中提供了一种软件包安全性的校验装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图4所示,该装置主要包括:
获取单元401,用于获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;
第一解密单元402,用于基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;
第二解密单元403,用于当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;
执行单元404,用于当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包。
可选地,该装置还用于:
获取软件的软件包中的第一证书和第二证书之前,获取软件的证书认证文件和加密证书文件,证书认证文件中包括证书认证文件公钥;
当基于预先烧录的根公钥,确定证书认证文件公钥有效时,采用证书认证文件公钥解密加密证书文件,获得证书文件;
根据证书文件,下载软件包。
可选地,该装置用于:
基于预先烧录的根公钥解密证书认证文件中的签名,得到解密证书认证文件公钥;
当解密证书认证文件公钥与证书文件公钥一致时,确定证书认证文件公钥有效。
可选地,该装置还用于:
基于预先烧录的根公钥解密证书认证文件中的签名,得到解密证书认证文件公钥之前,获取证书认证文件中的根公钥;
计算证书认证文件中的根公钥的第一哈希值、以及预先烧录的根公钥的第二哈希值;
确定第一哈希值与第二哈希值相同。
可选地,第一解密单元402用于:
获取第一证书中的根公钥;
计算第一证书中的根公钥的第三哈希值、以及预先烧录的根公钥的第二哈希值;
确定第二哈希值和第三哈希值相同。
可选地,第二解密单元403用于:
获取第一证书中的软件包公钥;
计算第一证书中的软件包公钥的哈希值;
当确定软件包公钥哈希值与第一证书中的软件包公钥的哈希值相同时,确定第一证书中的软件包公钥正确。
可选地,该装置还用于:
基于软件包公钥哈希值,确定第一证书中的软件包公钥正确后,采用软件包公钥解密第二证书的签名,得到软件包哈希值之前,获取第二证书中的软件包公钥;
确定第二证书中的软件包公钥与第一证书中的软件包公钥相同。
基于同一构思,本申请实施例中提供了一种软件包安全性的校验装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图5所示,该装置主要包括:
加密单元501,用于采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,根私钥与预先烧录到电子设备中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,软件包私钥和软件包公钥匹配;
生成单元502,用于基于第一证书的签名和软件包公钥,生成第一证书;基于第二证书的签名和软件包哈希值,生成第二证书;
下发单元503,用于当满足下发软件包的下发条件时,下发包括第一证书和第二证书的软件包。
基于同一构思,本申请实施例中还提供了一种电子设备,如图6所示,该电子设备主要包括:处理器601、存储器602和通信总线603,其中,处理器601和存储器602通过通信总线603完成相互间的通信。其中,存储器602中存储有可被至处理器601执行的程序,处理器601执行存储器602中存储的程序,实现如下步骤:
获取软件的软件包中的第一证书和第二证书,第一证书用于校验软件包的软件包公钥,第二证书用于校验软件包;基于预先烧录的根公钥解密第一证书的签名,得到软件包公钥哈希值;当基于软件包公钥哈希值,确定第一证书中的软件包公钥正确时,采用软件包公钥解密第二证书的签名,得到软件包哈希值;当确定软件包哈希值与第二证书中的软件包哈希值相同时,执行软件包;
或,
采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,根私钥与预先烧录到电子设备中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,软件包私钥和软件包公钥匹配;基于第一证书的签名和软件包公钥,生成第一证书;基于第二证书的签名和软件包哈希值,生成第二证书;当满足下发软件包的下发条件时,下发包括第一证书和第二证书的软件包。
上述电子设备中提到的通信总线603可以是外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线603可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器602可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器601的存储装置。
上述的处理器601可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述实施例中所描述的软件安全性的校验方法、系统、装置。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以时通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、微波等)方式向另外一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种软件安全性的校验方法,其特征在于,包括:
获取软件的软件包中的第一证书和第二证书,所述第一证书用于校验所述软件包的软件包公钥,所述第二证书用于校验所述软件包;
基于预先烧录的根公钥解密所述第一证书的签名,得到软件包公钥哈希值;
当基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确时,采用所述软件包公钥解密所述第二证书的签名,得到软件包哈希值;
当确定所述软件包哈希值与所述第二证书中的软件包哈希值相同时,执行所述软件包。
2.根据权利要求1所述的方法,其特征在于,获取软件的软件包中的第一证书和第二证书之前,还包括:
获取所述软件的证书认证文件和加密证书文件,所述证书认证文件中包括证书认证文件公钥;
当基于所述预先烧录的根公钥,确定所述证书认证文件公钥有效时,采用所述证书认证文件公钥解密所述加密证书文件,获得证书文件;
根据所述证书文件,下载所述软件包。
3.根据权利要求2所述的方法,其特征在于,基于所述预先烧录的根公钥,确定所述证书认证文件公钥有效,包括:
基于所述预先烧录的根公钥解密所述证书认证文件中的签名,得到解密证书认证文件公钥;
当所述解密证书认证文件公钥与所述证书文件公钥一致时,确定所述证书认证文件公钥有效。
4.根据权利要求3所述的方法,其特征在于,基于所述预先烧录的根公钥解密所述证书认证文件中的签名,得到解密证书认证文件公钥之前,还包括:
获取所述证书认证文件中的根公钥;
计算所述证书认证文件中的根公钥的第一哈希值、以及所述预先烧录的根公钥的第二哈希值;
确定所述第一哈希值与所述第二哈希值相同。
5.根据权利要求1所述的方法,其特征在于,基于预先烧录的根公钥解密所述第一证书的签名,得到所述软件包公钥的哈希值之前,还包括:
获取所述第一证书中的根公钥;
计算所述第一证书中的根公钥的第三哈希值、以及所述预先烧录的根公钥的第二哈希值;
确定所述第二哈希值和所述第三哈希值相同。
6.根据权利要求1所述的方法,其特征在于,基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确,包括:
获取所述第一证书中的软件包公钥;
计算所述第一证书中的软件包公钥的哈希值;
当确定所述软件包公钥哈希值与所述第一证书中的软件包公钥的哈希值相同时,确定所述第一证书中的软件包公钥正确。
7.根据权利要求1所述的方法,其特征在于,基于所述软件包公钥哈希值,确定所述第一证书中的软件包公钥正确后,采用所述软件包公钥解密所述第二证书的签名,得到软件包哈希值之前,还包括:
获取所述第二证书中的软件包公钥;
确定所述第二证书中的软件包公钥与所述第一证书中的软件包公钥相同。
8.一种软件包安全性的校验方法,其特征在于,包括:
采用根私钥对软件包中的软件包公钥哈希值进行加密,得到第一证书的签名,所述根私钥与预先烧录到电子设备中的根公钥匹配;以及,采用软件包私钥对软件包的软件包哈希值加密,得到第二证书的签名,所述软件包私钥和所述软件包公钥匹配;
基于所述第一证书的签名和所述软件包公钥,生成所述第一证书;基于所述第二证书的签名和所述软件包哈希值,生成所述第二证书;
当满足下发所述软件包的下发条件时,下发包括所述第一证书和所述第二证书的软件包。
9.一种电子设备,其特征在于,包括:处理器、存储器和通信总线,其中,处理器和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现权利要求1-7任一项所述的方法或权利要求8所述的方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的方法或权利要求8所述的方法。
CN202210594174.XA 2022-05-27 2022-05-27 软件安全性的校验方法、设备及存储介质 Pending CN115208575A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210594174.XA CN115208575A (zh) 2022-05-27 2022-05-27 软件安全性的校验方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210594174.XA CN115208575A (zh) 2022-05-27 2022-05-27 软件安全性的校验方法、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115208575A true CN115208575A (zh) 2022-10-18

Family

ID=83577080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210594174.XA Pending CN115208575A (zh) 2022-05-27 2022-05-27 软件安全性的校验方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115208575A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116521273A (zh) * 2023-07-04 2023-08-01 此芯科技(苏州)有限公司 一种双密钥安全启动方法、装置、存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106452783A (zh) * 2016-09-26 2017-02-22 上海兆芯集成电路有限公司 计算机系统及安全执行的方法
KR20170119645A (ko) * 2016-04-19 2017-10-27 주식회사 엔지스테크널러지 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치
CN113922966A (zh) * 2021-10-09 2022-01-11 上海盛本智能科技股份有限公司 一种基于加密存储硬件的安全应用安装方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170119645A (ko) * 2016-04-19 2017-10-27 주식회사 엔지스테크널러지 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치
CN106452783A (zh) * 2016-09-26 2017-02-22 上海兆芯集成电路有限公司 计算机系统及安全执行的方法
CN113922966A (zh) * 2021-10-09 2022-01-11 上海盛本智能科技股份有限公司 一种基于加密存储硬件的安全应用安装方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116521273A (zh) * 2023-07-04 2023-08-01 此芯科技(苏州)有限公司 一种双密钥安全启动方法、装置、存储介质及电子设备
CN116521273B (zh) * 2023-07-04 2023-09-29 此芯科技(苏州)有限公司 一种双密钥安全启动方法、装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
US10958436B2 (en) Methods contract generator and validation server for access control of contract data in a distributed system with distributed consensus
CN110677418B (zh) 可信声纹认证方法、装置、电子设备及存储介质
US9838205B2 (en) Network authentication method for secure electronic transactions
CN110519309B (zh) 数据传输方法、装置、终端、服务器及存储介质
CN111404696B (zh) 协同签名方法、安全服务中间件、相关平台及系统
KR101852791B1 (ko) 모바일 단말기를 이용한 공인인증서 로그인 서비스 시스템 및 방법
CN108234442B (zh) 获取合约的方法、系统及可读存储介质
CN108229144B (zh) 一种应用程序的验证方法、终端设备及存储介质
WO2015180689A1 (zh) 验证信息的获取方法及装置
CN112055019B (zh) 一种建立通信信道的方法及用户终端
CN111814132B (zh) 安全认证方法及装置、安全认证芯片、存储介质
CN110677382A (zh) 数据安全处理方法、装置、计算机系统及存储介质
JP6387908B2 (ja) 認証システム
CN112733121A (zh) 数据获取方法、装置、设备及存储介质
KR20130008939A (ko) 휴대 단말기에서 단말 고유 정보의 복제를 방지하는 장치 및 방법
CN112800392A (zh) 基于软证书的授权方法和装置、存储介质
CN115374405A (zh) 软件授权方法、许可授权方法、装置、设备和存储介质
CN112866987B (zh) 组网验证方法、设备及计算机可读存储介质
CN109302442B (zh) 一种数据存储证明方法及相关设备
CN115208575A (zh) 软件安全性的校验方法、设备及存储介质
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
CN114268447B (zh) 一种文件传输方法、装置、电子设备和计算机可读介质
CN113127844A (zh) 一种变量访问方法、装置、系统、设备和介质
CN110830264B (zh) 业务数据验证方法、服务器、客户端及可读存储介质
CN111953477B (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