一种密钥管理方法及装置制造方法及图纸

技术编号:33718476 阅读:25 留言:0更新日期:2022-06-08 21:09
一种密钥管理方法及装置,本申请实中,密钥管理装置能够将密钥存储至设备中的安全存储区域,该密钥为设备在安全启动、软件安装、或软件升级过程中所需要的密钥。之后,可以接收密钥更新请求,该密钥更新请求用于请求对密钥进行更新,该密钥更新请求中包括更新凭证,更新凭证是由信任平台签名、并发布的;密钥管理装置先对该更新凭证进行验证,在验证通过之后,根据该密钥更新请求对密钥进行更新。密钥管理装置能够对存储在安全存储区域的密钥进行更新,该密钥不再是不能被修改的,另外,在对密钥更新之前,还需要验证更新凭证,只有在对更新凭证验证通过的情况下,才能够对密钥进行更新,也使得密钥的更新方式更加安全。也使得密钥的更新方式更加安全。也使得密钥的更新方式更加安全。

【技术实现步骤摘要】
一种密钥管理方法及装置


[0001]本申请涉及通信
,尤其涉及一种密钥管理方法及装置。

技术介绍

[0002]在设备的安全启动、软件安装以及软件升级过程中均需对应的公钥,对需要启动的模块、待安装的安装包以及升级包进行验证,在验证通过后,才可以启动模块、安装软件以及升级软件,以保证安全启动、软件安装以及软件升级过程的安全性。
[0003]下面以安全启动为例进行说明,安全启动是指设备在启动过程中,前一个启动的模块(该模块可以理解为软件模块)对后一个需要启动的模块进行验证,若验证通过后,触发该后一个需要启动的模块启动,若验证不通过,则中止启动。
[0004]目前,在安全启动过程中对模块进行验证所采用的公钥存储在设备的处理器中的电子熔断器(eFuse)中,鉴于eFuse中的内容无法清除、修改,无法轻易变更存储在eFuse中的公钥,导致公钥无法更新,不能对该公钥进行管理。

技术实现思路

[0005]本申请提供一种密钥管理方法及装置,用以更新安全启动、软件安装以及软件升级过程中所需的公钥。
[0006]第一方面,本申请实施例提供了一种密钥管理方法,该方法可由设备中的密钥管理装置执行,在该方法中,密钥管理装置能够将密钥存储至设备中的安全存储区域,该密钥为设备在安全启动、软件安装、或软件升级过程中所需要的密钥。该安全存储区域位于该设备中的存储器中,在一定场景下,该安全存储区域内的数据可以被更新。在密钥管理装置存储了该密钥之后,可以接收密钥更新请求,该密钥更新请求用于请求对密钥进行更新,该密钥更新请求中包括更新凭证,更新凭证是由信任平台签名、并发布的;密钥管理装置先对该更新凭证进行验证,在验证通过之后,根据该密钥更新请求对密钥进行更新。这里是以直接管理密钥为例,在实际应用中,也可以采用类似的方式对密钥的相关信息(对密钥进行运算后的运算值,该运算可以是哈希运算,也可以为签名算法,还可以为其他运算)进行管理,这里无论是直接对密钥进行管理还是对密钥的相关信息进行管理其实质均是指对密钥进行管理。
[0007]通过上述方法,密钥管理装置能够对存储在安全存储区域的密钥进行更新,该密钥不再是不能被修改的,另外,在对密钥更新之前,还需要验证更新凭证,只有在对更新凭证验证通过的情况下,才能够对密钥进行更新,也使得密钥的更新方式更加安全。
[0008]在一种可能的实现方式中,存储在该安全存储区域中的密钥可以是对设备中需运行的软件代码进行验证所需的密钥。该设备除了需要运行的软件代码还需要运行固件代码,该固定代码是在设备启动过程中最先需要启动或运行的。对设备需运行的固件代码进行验证所需的固件密钥可以存储在安全存储区域,也可以存储在该设备的电子熔断器中,也即固件密钥和软件密钥存储在不同的区域中,电子熔断器中的存储的固件密钥不能被修
改。当然,该固件密钥也可以存储在其他不允许修改的存储区域中。
[0009]通过上述方法,对软件代码和固件代码验证所需的密钥分别存储在不同的位置,由于对软件代码验证所需的密钥存储在安全存储区域中,能够根据需要更新该密钥,已解除该设备与该软件代码的厂家的绑定关系。
[0010]在一种可能的实现方式中,当对设备进行安全启动时,密钥管理装置可以从电子熔断器中读取固件密钥,利用固件密钥对固件代码进行验证,具体的,对固件代码的签名(该签名是利用该固件密钥对应的私钥生成的)进行验证。所述软件代码和所述固件代码可以来自不同厂家。
[0011]在利用固件密钥对固件代码验证通过后,则允许该固件代码运行,在运行固件代码后,密钥管理装置可以从安全存储区域读取密钥,利用密钥对软件代码进行验证,具体的,对软件代码的签名(该签名是利用该密钥对应的私钥生成的)进行验证。在利用密钥对软件代码验证通过后,允许运行该软件代码。
[0012]当设备在安装该软件代码时,密钥管理装置可以从安全存储区域中获取该密钥,对该软代码的安装包进行验证,也即对该安装包上携带的签名进行验证,在验证通过后,允许安装该软件代码,也即通过该安装包安装该软件代码。
[0013]当设备在升级该软件代码时,密钥管理装置可以从安全存储区域中获取该密钥,对该软代码的升级包进行验证,也即对该升级包上携带的签名进行验证,在验证通过后,允许升级该软件代码,也即通过该升级包升级该软件代码。
[0014]通过上述方法,设备在运行软件代码、安装软件代码、或升级软件代码的过程中,可以从安全存储区域获取该密钥,使得能够对该软件代码进行验证,保证软件代码在运行、安装以及升级过程中的安全性。
[0015]在一种可能的实现方式中,密钥管理装置在将密钥存储至设备中的安全存储区域时,可以直接将密钥存储在安全存储区域,也可以先对密钥进行签名,将签名后的密钥存储至安全存储区域。这里并不限定对密钥签名所采用的私钥。
[0016]通过上述方法,密钥管理装置可以通过不同方式将密钥存储在安全存储区域,方式较为灵活,适用于不同场景。
[0017]在一种可能的实现方式中,密钥管理装置在对更新凭证进行验证时,可以确认更新凭证的签名是否来自信任平台,例如利用该信任平台的公钥对该签名进行验证,若更新凭证的签名是来自信任平台则验证通过,否则验证失败;若更新凭证还指示需要更新的密钥,密钥管理装置在对更新凭证进行验证时,除了确认更新凭证的签名是否来自信任平台,还可以确认更新凭证指示的需要更新的密钥与存储在安全存储区域的密钥是否一致,在确定更新凭证的签名来自信任平台以及更新凭证指示的需要更新的密钥与存储在安全存储区域的密钥一致的情况下,确定对更新凭证验证通过;在确定更新凭证的签名并非来自信任平台或更新凭证指示的需要更新的密钥与存储在安全存储区域的密钥不一致的情况下,确定对更新凭证验证失败。
[0018]通过上述方法,密钥管理装置在对更新凭证进行验证时,可以对更新凭证的签名以及更新凭证指示的内容进行确认,能够保证该更新凭证的有效性,进而,保证后续能够对密钥进行安全、有效的更新。
[0019]在一种可能的实现方式中,密钥管理装置对安全存储区域中的密钥进行更新之
后,可以将更新凭证标识为失效状态。这样可以避免再次接收到相同更新凭证的密钥更新请求,对密钥进行无效操作。
[0020]在一种可能的实现方式中,密钥管理装置还可以记录密钥的更新次数,也就是说,密钥管理装置在每次对安全存储区域中的密钥进行更新之后,还记录此次对密钥的更新,在记录的密钥更新次数上加一。密钥管理装置记录密钥的更新次数便于后续对密钥进行管理,如限制密钥所允许的更新次数。
[0021]在一种可能的实现方式中,密钥管理装置对安全存储区域中的密钥进行更新之前,可以先确定密钥的更新次数是否未小于预设次数,若密钥的更新次数小于预设次数,则密钥管理装置可以对密钥进行更新,若密钥的更新次数大于或等于预设次数,说明密钥的更新次数已经达到上限,密钥管理装置可以拒绝对密钥的更新。
[0022]通过上述方法,通过预设次数限制密钥允许的更新次数,便于密钥管理装置对密钥进本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种密钥管理方法,其特征在于,所述方法包括:将密钥存储至设备中的安全存储区域,所述密钥为所述设备在安全启动、软件安装、或软件升级过程中所需要的密钥;接收密钥更新请求,所述密钥更新请求中包括更新凭证,所述更新凭证是由信任平台签名、并发布的;在对所述更新凭证验证通过之后,对所述密钥进行更新。2.如权利要求1所述的方法,其特征在于,所述密钥是对所述设备中需运行的软件代码进行验证所需的密钥,所述设备中电子熔断器中存储有固件密钥,所述固件密钥为对所述设备需运行的固件代码进行验证所需的密钥,所述电子熔断器不包括所述安全存储区域。3.如权利要求2所述的方法,其特征在于,所述方法还包括:当对所述设备进行安全启动时,从所述电子熔断器中读取所述固件密钥,在利用所述固件密钥对所述固件代码验证通过后,运行所述固件代码;从所述安全存储区域读取所述密钥,在利用所述密钥对所述软件代码验证通过后,允许运行所述软件代码。4.如权利要求1~3任一所述的方法,其特征在于,所述将密钥存储至设备中的安全存储区域,包括:对所述密钥进行签名,将签名后的密钥存储至所述安全存储区域。5.如权利要求1~4任一所述的方法,其特征在于,所述更新凭证用于指示需要更新的密钥,对所述更新凭证验证通过,包括:确认所述更新凭证的签名来自所述信任平台;确认所述更新凭证指示的需要更新的密钥与存储在所述安全存储区域的密钥一致。6.如权利要求1~5任一项所述的方法,其特征在于,所述对安全存储区域中的密钥进行更新之后,还包括:将所述更新凭证标识为失效状态。7.如权利要求1~6任一所述的方法,其特征在于,所述对安全存储区域中的密钥进行更新之后,还包括:记录所述密钥的更新次数。8.如权利要求7所述的方法,其特征在于,所述对安全存储区域中的密钥进行更新之前,还包括:确定所述密钥的更新次数小于预设次数。9.如权利要求1~8任一所述的方法,其特征在于,所述安全存储区域还包括密钥黑名单,所述黑名单用于指示已失效的密钥。10.如权利要求1~9任一所述的方法,其特征在于,所述安全存储区域位于闪存或处理器中。11.一种密钥管理装置,其特征在于,所述装置包括:存储单元,用于将密钥存储至设备中的安全存储区域,所述密钥为所述设备在安全启动、软件安装、或软件升级过程中所需要的密钥;传输单元,用于接...

【专利技术属性】
技术研发人员:吴涛刘洪辉冉懋良陈战
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1