CN117494079B - 一种镜像权转移方法、安全启动方法及相关装置 - Google Patents

一种镜像权转移方法、安全启动方法及相关装置 Download PDF

Info

Publication number
CN117494079B
CN117494079B CN202311790578.7A CN202311790578A CN117494079B CN 117494079 B CN117494079 B CN 117494079B CN 202311790578 A CN202311790578 A CN 202311790578A CN 117494079 B CN117494079 B CN 117494079B
Authority
CN
China
Prior art keywords
token
mirror
position number
mirroring
image
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
Application number
CN202311790578.7A
Other languages
English (en)
Other versions
CN117494079A (zh
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.)
Feiteng Technology Changsha Co ltd
Phytium Technology Co Ltd
Original Assignee
Feiteng Technology Changsha Co ltd
Phytium Technology Co Ltd
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 Feiteng Technology Changsha Co ltd, Phytium Technology Co Ltd filed Critical Feiteng Technology Changsha Co ltd
Priority to CN202311790578.7A priority Critical patent/CN117494079B/zh
Publication of CN117494079A publication Critical patent/CN117494079A/zh
Application granted granted Critical
Publication of CN117494079B publication Critical patent/CN117494079B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提出一种镜像权转移方法、安全启动方法及相关装置,涉及计算机应用技术领域。该镜像权转移方法可以包括:响应于令牌写入请求,在令牌存储区域写入新镜像权令牌;其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥,所述可信根密钥用于所述计算设备的安全启动过程。本申请提供的技术方案能够使得镜像文件的更换更加灵活。

Description

一种镜像权转移方法、安全启动方法及相关装置
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种镜像权转移方法、安全启动方法及相关装置。
背景技术
现有技术中,当用户想要更换安全启动(也即安全引导)过程涉及到的一些镜像文件(如固件的镜像文件)时,需要通过物权证明(如设备的购买发票等凭证),请求芯片厂商或设备厂商对新镜像文件进行一些处理,如对镜像文件进行打包操作等。之后才能将新镜像文件烧录至闪存中,完成镜像文件的更换。此种镜像文件的更换方式,程序繁琐,且限制较多,若用户丢失物权证明,则难以进行安全启动过程中的镜像文件的更换。
发明内容
基于上述现有技术的缺陷和不足,本申请提出一种镜像权转移方法、安全启动方法及相关装置,能够使得镜像权的更换更加灵活。
根据本申请实施例的第一方面,提供了一种镜像权转移方法,应用于计算设备,所述方法包括:
响应于令牌写入请求,在令牌存储区域写入新镜像权令牌;
其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥,所述可信根密钥用于所述计算设备的安全启动过程。
根据本申请实施例的第二方面,提供了一种安全启动方法,应用于计算设备,所述方法包括:
响应于安全启动请求,执行安全启动过程;
在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验;其中,所述待检验镜像权令牌为镜像权发生转移时存储至所述令牌存储区域的,用于指示镜像权发生转移,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种,每一所述待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥;
在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全启动过程所需的可信根密钥。
根据本申请实施例的第三方面,提供了一种镜像权转移装置,应用于计算设备,所述装置包括:
令牌写入模块,用于响应于令牌写入请求,在令牌存储区域写入新镜像权令牌;
其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥,所述可信根密钥用于所述计算设备的安全启动过程。
根据本申请实施例的第四方面,提供了一种安全启动装置,应用于计算设备,所述装置包括:
启动模块,用于响应于安全启动请求,执行安全启动过程;
检验模块,用于在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验;其中,所述待检验镜像权令牌为镜像权发生转移时存储至所述令牌存储区域的,用于指示镜像权发生转移,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种,每一所述待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥;
密钥获取模块,用于在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全启动过程所需的可信根密钥。
根据本申请实施例的第五方面,提供了一种电子设备,包括:存储器和处理器;
所述存储器与所述处理器连接,用于存储程序;
所述处理器用于通过运行所述存储器中的程序,实现如第一方面所述的镜像权转移方法或实现如第二方面所述的安全启动方法。
根据本申请实施例的第六方面,提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如第一方面所述的镜像权转移方法或实现如第二方面所述的安全启动方法。
本申请提供的技术方案中,将镜像权令牌作为镜像权转移的证明信息,以表示镜像权发生转移,并且新镜像权所有者可以根据自身需求选择和打包镜像文件,并在打包过程中在镜像权令牌中设置安全启动过程所需的可信根密钥,之后将打包好的镜像文件烧录至计算设备中即可完成镜像文件的更换,这样,则可不必再请求芯片厂商或设备厂商更换镜像文件,使得镜像文件的更换更加灵活,且镜像权的转移也无需物权证明,使得镜像文件的更换更加便捷。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种镜像权转移方法的流程示意图。
图2为本申请实施例提供的可信启动链的示意图。
图3为本申请实施例提供的令牌存储区域的示意图。
图4为本申请实施例提供的一种安全启动方法的流程示意图。
图5为本申请实施例提供的一种镜像权转移方法的框图。
图6为本申请实施例提供的一种安全启动装置的框图。
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
申请概述
安全启动(即安全引导)是保证计算设备(如计算机)运行环境安全可信的重要机制,一般由硬件生产商(如芯片厂商)或设备制造商在设备中内置初始化启动代码作为可信固件,可信固件在出厂后不可修改。设备启动引导过程中,可信固件对加载的镜像文件进行电子签名检查,验签正确才会继续引导运行。该机制有效抑制了攻击者篡改镜像文件的能力,已成为业界安全规范。
然而,计算设备的使用人不同,对安全启动过程中的镜像文件的需求可能会有所不同。例如,对于保密性要求高的行业(如科研行业),需要安全性更高镜像文件;对于数据处理量较大的行业(如金融行业),需要对软件系统性能更高的镜像文件等。
当计算设备更换使用用户时,后面的用户可能会有更换安全启动过程中的镜像文件的需求,此时则需要后面的用户通过物权证明(如设备的购买发票等凭证),请求芯片厂商或设备厂商对新镜像文件进行一些处理,如对镜像文件进行打包操作等,并将用于安全启动过程中的可信根密钥写入计算设备的存储部件(如一次性可编程存储部件)中。之后,用户才能将处理好的新镜像文件烧录至闪存中,完成镜像文件的更换。此种镜像文件的更换方式,程序繁琐,且限制较多,若用户丢失物权证明,则难以进行镜像文件的更换。
为了解决前述问题,本申请实施例中提供了关于镜像权转移的技术方案,下面将结合附图,对本申请提供的技术方案进行示例性描述。
示例性方法
以应用于计算设备为例,本申请实施方式提供了一种镜像权转移方法,该方法可以包括:
步骤101:响应于令牌写入请求,在令牌存储区域写入新镜像权令牌。
本申请实施例中所述的镜像权包括对计算设备的安全启动过程涉及的多个镜像文件的选择权利、打包权利中的至少一种。这里所述的镜像文件可以包括安全启动过程中涉及的一些固件的镜像文件,简称固件镜像。
对镜像文件的选择权利是指镜像权所有者可以根据自身需求选择镜像文件的权利。例如,对于安全启动过程中某一引导层级的固件镜像,可以由多个镜像供应商提供,镜像权所有者则可以根据自身需求,在多个镜像供应商提供的此引导层级的固件镜像中进行选择。
对镜像文件的打包权利是指镜像权所有者可以对镜像文件进行打包处理,使镜像文件形成安全可靠,并可烧录至闪存中的文件。固件的镜像文件需要在计算设备处于关机状态下,通过外部设备烧录至计算设备中。
其中,打包过程可以包括生成可信启动链的过程,而生成可信启动链的过程包括可信根密钥的设置过程,如下所述:
具体地,镜像权所有者可通过自签名证书,形成可信启动链,该可信启动链的起点则为可信根密钥,为了更好地对此进行理解,下面以图2为例,按照从下至上的顺序进行说明。
如图2所示,图中的可信OS(Operating System,操作系统)固件镜像哈希(即Hashof Trusted OS Firmware image)为对可信OS固件镜像文件进行哈希运算得到的镜像哈希。
可信OS内容证书(即Trusted OS Content certificate)用于对镜像哈希进行保护,该证书由镜像供应商所有的私钥进行了加密处理。用于对可信OS内容证书进行验签的公钥为保存在可信OS密钥证书(即Trusted OS Key certificate)中的可信OS公钥(即Trusted OS Public Key),该证书可由可信OS所有者私钥(即Trusted OS owner PrivateKey)进行加密处理,以对保存在该证书中的公钥进行保护。在本申请实施例中,可信OS所有者私钥可由镜像权所有者设置。
用于对可信OS密钥证书进行验签的公钥为保存在可信密钥证书(即Trusted Keycertificate)中的可信世界公钥(即Trusted World Public Key),在该证书中还可包括其他公钥,如调试公钥(即Debug Public Key)、非可信世界公钥(即Non-Trusted WorldPublic Key)等。可信OS密钥证书可由OEM(Original Equipment Manufacturer,原始设备制造商)私钥(即OEM Private Key)进行加密处理,以对保存在该证书中的公钥进行保护。在本申请实施例中,OEM私钥可由镜像权所有者设置。
用于对可信密钥证书进行验签的公钥为可信根公钥(即Root of Trust PbulicKey),与可信根公钥对应的可信根私钥(即Root of Trusted Private Key)可由镜像权所有者设置。这里所述的可信根公钥即为本申请实施例中所述的可信根密钥。
由前述内容可知,在安全启动过程,首先需要获得可信根公钥,对可信密钥证书进行验签。在可信密钥证书验签通过后,从可信密钥证书中获得可信世界公钥,并通过可信世界公钥对可信OS密钥证书进行验签。在对可信OS密钥证书验签通过后,从可信OS密钥证书中获得可信OS公钥。最后,利用可信OS公钥对可信OS内容证书进行验签,并在验签通过后,获得可信OS固件镜像哈希,以用于对镜像文件进行验签,如此完成一个可信启动链。由此也可知,可信根密钥的作用可以包括用于获取对镜像文件进行验签的验签数据(如镜像文件的哈希值、镜像文件的散列摘要等)。
在前述过程中,镜像权所有者可以根据自身需求设置安全启动过程所需的可信根密钥,具体是指安全启动过程用于引导加载镜像文件的可信根密钥。这里所述的可信根密钥可以是指非对称加密算法中的公钥,与该公钥对应的私钥由镜像权所有者所有。
综上,可信根密钥是保证计算设备运行环境安全可信的重要机制,现有技术中可信根密钥掌握在芯片厂商或设备厂商,因此镜像权由芯片厂商或设备厂商所有,所以需要由芯片厂商或设备厂商完成对镜像文件的一些处理操作,而在本申请实施例中,通过镜像权令牌,可以使得新镜像权所有者设置属于自己的可信根密钥,使得用户拥有可信根密钥,例如每次发生镜像权转移时,可以签发一个新的镜像权令牌,以指示镜像权的转移,并且在新镜像权令牌中添加新镜像权所有者设置的可信根密钥(即可信根公钥),以用于安全启动过程。这样,用户则可以在不经芯片厂商或设备厂商的同意下,自主完成对镜像文件的一些选择操作、打包操作等,从而完成对镜像文件的更换,在满足用户差异化需求的同时,使得镜像文件的更换更加灵活,且镜像权的转移也无需物权证明,使得镜像文件的更换更加便捷。
可选地,令牌存储区域可以是一次性可编程(One Time Programmable,OTP)存储部件(以下简称OTP存储部件)中具有不可删除和篡改特性的存储区域。由于此类存储区域具有一经写入不可清除和更改的特性,因此,将镜像权令牌存储至OTP存储部件中的该存储区域,能够有效防止镜像权令牌被恶意删除,或镜像权令牌中的内容被恶意篡改的问题,提高镜像权令牌的安全性。
可选地,镜像权所有者可以是芯片厂商,也可以是设备厂商,还可以是设备用户。其中,芯片厂商为初始镜像权所有者,因此令牌存储区域中的第一个镜像权令牌属于芯片厂商,该令牌中包括属于芯片厂商的可信根密钥。镜像权可以由芯片厂商转移给设备厂商,此时则在令牌存储区写入属于设备厂商的镜像权令牌,该令牌中包括属于设备厂商的可信根密钥。之后,镜像权可由设备厂商转移给设备用户,此时则在令牌存储区写入属于设备用户的镜像权令牌,该令牌中包括属于设备用户的可信根密钥。在一些情况下,镜像权也可以由芯片厂商转移给设备用户。例如,用户可以基于对设备的合法物权证明向芯片厂商申请镜像权,如用户从设备厂商购买计算设备后,可以依据物权证明直接向芯片厂商申请镜像权,又如,作为计算设备的二手用户,也可以依据物权证明向芯片厂商申请镜像权。
可选地,镜像权的转移可以是以物权为基础进行的,即谁拥有设备所有权,则谁拥有镜像权。例如,用户甲从设备厂商处购买得到计算设备,则镜像权应由设备厂商转移至用户甲。用户乙从用户甲处购买得到计算设备,则镜像权由用户甲转移至用户乙。这样在尊重设备所有者的合法物权的同时,也可以满足不同设备所有者对镜像文件管理策略的动态调整。
可选地,镜像权令牌可以是原镜像权所有者签发给新镜像权所有者的,也可以是原设备所有者签发给新镜像权所有者的,统称为令牌签发者。原镜像权所有者也可以是原设备所有者,同理,原设备所有者也可以是原镜像权所有者。例如,用户乙从用户甲处购买得到计算设备,则用户乙既是原设备所有者,也是原镜像权所有者。
其中,令牌签发者可以通过对计算设备操作,在计算设备内生成镜像权令牌,并存储至计算设备内的非令牌存储区域,当然,新镜像权所有者也可以根据自身需求,更换镜像权令牌的存储位置。当新镜像权所有者具有镜像文件更换需求时,可以将计算设备内的镜像权令牌写入令牌存储区域,以使镜像权令牌生效。
可选地,令牌签发者在签发新镜像权令牌时,可利用其自身拥有的可信根私钥(也即令牌签发者拥有的镜像权令牌中的可信根公钥对应的私钥)对新镜像权令牌进行签名。在安全启动过程中,则需要先确定当前令牌签发拥有的镜像权令牌,然后从该镜像权令牌中获得可信根公钥,用于对新镜像权令牌进行验签,这样只有获得正确的用于对令牌验签的可信根公钥,才能对新镜像权令牌验签成功,进而获得安全启动过程所需的新可信根密钥,以防止他人随意写入镜像权令牌至令牌存储区,达到恶意转移镜像权的目的,提高镜像权令牌的安全性。
可选地,镜像权令牌中的可信根密钥可以是用于加载除ATF(ARM TrustedFirmware,ARM可信固件)镜像文件外的其他镜像文件的安全启动过程,也即除ATF镜像文件外,其他镜像文件的选择、打包等事宜(可总称为镜像权或安全镜像权),可以移交给其他镜像权所有者。
可选地,计算设备可提供镜像权令牌的写入功能,镜像权所有者可通过此功能将镜像权令牌写入令牌存储区域。
例如,用户可通过对计算设备的第一输入操作(如对功能控件的点击操作)启动令牌写入功能。计算设备响应于该第一输入操作,在启动令牌写入功能的同时,显示令牌写入页面。之后,用户可通过对令牌写入页面的第二输入操作(如在该页面输入镜像权令牌内容,或是将预先生成的镜像权令牌拖动至该页面的目标区域等),将镜像权令牌写入令牌存储区。
在一种可能的实施方式中,令牌存储区域包括多个存储区,每个存储区用于存储一个镜像权令牌。
一般芯片厂商为初始镜像权所有者,也即初始设备所有者,因此令牌存储区域的第一个镜像权令牌(也即初始镜像权令牌)为属于芯片厂商,该令牌中除了包括初始可信根密钥(可用于对ATF镜像文件进行验签),还可包括以下至少一种信息:芯片唯一标识、用于存储镜像权令牌的存储区的最大数量以及权限标志。对于权限标志,用于指示允许或禁止进行镜像权的转移。例如,若权限标志=0,则表示镜像权转移功能开启,也即允许进行镜像权的转移;若权限标志=1,则表示镜像权转移功能关闭,也即禁止进行镜像权的转移。
如图3所示,示意了一种令牌存储区域,在该令牌存储区域中包括n个存储区,分别为存储区(1)~存储区(n)。在存储区(1)中存储的是属于芯片厂商的镜像权令牌,该令牌中包括以下信息:RPK(即可信根密钥)、UID(即芯片唯一标识)、max_id(即用于存储镜像权令牌的存储区的最大数量)、TAG(即权限标志)。
其中,当令牌存储区域写满时,设备所有者可以请求芯片厂商将TAG字段置为true,以禁止夺权和转移镜像权。
除了属于芯片厂商的镜像权令牌,令牌存储区域还可以存储因镜像权转移而形成的新镜像权令牌,如令牌存储区域中的第二个存储区可以存储芯片厂商签发给设备厂商的新镜像权令牌(此时设备厂商为设备所有者),或是芯片厂商签发给设备用户的新镜像权令牌。
其中,新镜像权令牌中除了包括镜像权所有者设置的可信根密钥(如图3中的PK),还可以包括其他一些信息,具体如下所述:
新镜像权令牌中还可以包括以下至少一项:第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志、数字签名信息。
其中,第一存储位置编号为当前令牌签发者(即当前令牌的签发者)拥有的镜像权令牌在令牌存储区的存储位置编号,用于标识令牌签发者。如图3所示,第一存储位置编号可以以“Pre_id”表示,存储区(2)中的Pre_id可以取值为1,表示令牌签发者拥有的镜像权令牌为存储区(1)中的镜像权令牌。在一些情况下,令牌签发者即为原镜像权所有者,例如,存储区(2)中的Pre_id取值为1的情况下,令牌签发者即为原镜像权所有者。
其中,第二存储位置编号为新镜像权所有者拥有的镜像权令牌在令牌存储区的存储位置编号。如图3所示,第二存储位置编号可以以“cur_id”表示,例如,存储区(2)中的cur_id可以取值为2,表示新镜像权所有者拥有的镜像权令牌为存储区(2)中存储的镜像权令牌。
其中,权利转移控制标志用于指示允许或禁止新镜像权令牌所有者转移镜像权,可以用“NLK”表示。NLK可以为Bool类型数据,若NLK=1(即NLK=true),则表示禁止新镜像权令牌所有者转移镜像权;若NLK=0(即NLK=false),则表示允许新镜像权令牌所有者转移镜像权。例如,镜像权从用户甲转移为用户乙,若用户甲签发给用户乙的镜像权令牌中NLK=0,则表示允许用户乙将镜像权转移给其他用户;若NLK=1,则表示禁止用户乙将镜像权转移给其他用户。
其中,种子标志用于指示新镜像权所有者是否拥有对计算设备的物权,即新镜像权所有者是否为设备所有者,可以用“RT”表示。RT可以为Bool类型数据,若RT =1(即RT =true),则表示新镜像权所有者拥有对计算设备的物权;若RT=0(即RT=false),则表示新镜像权所有者不拥有对计算设备的物权。
通过种子标志可以实现镜像权的永久性转移和暂时性转移。对于暂时性转移,例如,属于组织(如公司、学校等)的设备(即组织为设备所有者),可以供组织内的成员使用,此时,组织管理者可以签发一个镜像权令牌给成员,并将令牌中的RT设置为0,保留对设备的物权,仅将镜像权转移给成员。当组织需要回收镜像权时,则可以再签发一个镜像权令牌,令牌中的RT设置为1,将镜像权从成员处回收回来,而不需要由成员签发镜像权令牌实现镜像权转移,此时,令牌签发者为原设备所有者,而非原镜像权所有者,原镜像权所有者为组成成员。对于永久性转移,例如,用户乙从用户甲处购买得到一台计算设备,则用户甲在签发镜像权令牌给用户乙时,则需将令牌中的RT设置为1,以表示将计算设备的物权完全转移给用户乙,即用户乙为设备所有者,此种情况下,令牌签发者既为原设备所有者,也为原镜像权所有者。
可选地,在一些实施例中,在令牌中的RT设置为0的情况下,新镜像权所有者在得到设备所有者同意的情况下,可以将镜像权再次授予其他用户,此时,令牌签发者为原镜像权所有者,而非原设备所有者。但新镜像权所有者签发给其他用户的令牌中,RT需设置为0,且原设备所有者可以随时回收镜像权。
可选地,在一些实施例中,在令牌中的RT设置为0的情况下,还可以是新镜像权所有者不可以再将镜像权再次授予其他用户,只能由设备所有者签发新的镜像权令牌给其他用户,并且将令牌中的RT设置为0,直至因发生物权转移而进行镜像权转移时,将新镜像权令牌中的RT设置为1为止。
其中,回滚标志用于指示允许或禁止使用出厂镜像文件进行恢复出厂设置,可以用“AR”表示。AR可以为Bool类型数据,若AR =1(即AR=true),则表示禁止使用出厂镜像文件进行恢复出厂设置;若AR=0(即AR=false),则表示允许使用出厂镜像文件进行恢复出厂设置。
可选地,可以用“para”表示权利转移控制标志、种子标志以及回滚标志三个标志,如图3所示,在存储区(2)中镜像权令牌中,para包括:NLK、RT和AR三个标志。
其中,数字签名信息用于对镜像权令牌进行验签。如图3所示,数字签名信息可以用“sign”表示,该数字签名信息可以是根据目标信息生成的,这里所述的目标信息可以包括:新镜像权令牌中除所述数字签名信息外的至少一种其他信息。例如,其他信息可以包括但不限于:可信根密钥、第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志中的至少一种信息,即:可以对可信根密钥、第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志中的至少一种信息进行签名处理,得到该数字签名信息,优选对新镜像权令牌中除数字签名信息外的所有其他信息进行签名处理,得到该数字签名信息。在对镜像权令牌验签时,只有当基于新镜像权令牌中除数字签名信息外的所有其他信息得到的签名信息,与令牌中的数字签名信息一致,令牌才能通过验签,证明其合法性,以提高镜像权令牌的安全性。
可选地,目标信息除了可以包括新镜像权令牌中除所述数字签名信息外的至少一种其他信息,还可以包括芯片唯一标识,当其他信息验签无误且数字签名信息中的芯片唯一标识与计算设备中的芯片唯一标识相同的情况下,说明镜像权令牌通过数字签名验签。
可选地,形成数字签名信息的加密密钥可以是当前令牌的签发者拥有的镜像权令牌中的可信根密钥(即可信根公钥)对应的可信根私钥,相应的,对数据签名信息的解密密钥则为当前令牌的签发者拥有的镜像权令牌中的可信根密钥。
本申请实施例除了提供一种基于镜像权令牌实现镜像权转移的方法,还提供了一种关于镜像权令牌的安全启动方法,以用于对令牌存储区域中的镜像权令牌的合法性进行检验,从而获得可用的可信根密钥。
如图4所示,该安全启动方法可以包括:
步骤401:响应于安全启动请求,执行安全启动过程。
这里所述的安全启动请求可以是计算设备在开机启动过程中触发的,也可以是计算设备在重新启动过程中触发的,还可以是在其他需要执行安全启动的情形下触发的。
本申请实施例中的安全启动过程可以是链式安全引导过程,即由片上镜像开始逐级加载、验证和引导下一级镜像,换言之,每个镜像文件在安全引导中对应固定的引导层级(即引导次序),从而提升整个启动过程的安全性。这里所述的镜像文件可以是安全启动过程中涉及的固件的镜像文件。
步骤402:在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验。
这里所述的待检验镜像权令牌为镜像权发生转移时存储至令牌存储区域的,用于指示镜像权发生转移。每一待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥。关于镜像权和镜像权令牌的解释说明具体可参见前述实施例,这里便不再赘述。
由于安全启动过程所需的可信根密钥存储在镜像权令牌中,而令牌存储区域可能存储有多个镜像权令牌,并且多个镜像权令牌中可能包括非法镜像权令牌。非法镜像权令牌可能导致最终获得的可信根密钥也是非法的,进而影响整个安全启动过程,例如,在安全启动过程使用非法可信根密钥引导加载了非法镜像文件,从而发生攻击事件。为了避免此类情况发生,本申请实施例在进入安全启动过程中后以及在对一些镜像文件引导加载前,可以先对令牌存储区域中的镜像权令牌的合法性进行检验。
由前述实施例中可知,芯片厂商为初始镜像权所有者(也可以理解为设备的初始所有者),因此令牌存储区域中的第一个镜像权令牌属于芯片厂商,该镜像权令牌的可靠性高,可无需检验其合法性。本申请实施例所需检验的镜像权令牌是指发生镜像权转移时新形成的镜像权令牌,因此,待检验镜像权令牌为镜像权发生转移时存储至令牌存储区域的镜像权令牌。
步骤403:在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全引导过程所需的可信根密钥。
其中,第一镜像权令牌为待检验镜像权令牌中最近一次存储至令牌存储区的,也是当前镜像权所有者拥有的镜像权令牌。
当待检验镜像权令牌的合法性通过检验的情况下,说明所有待检验镜像权令牌均是可信的,此时则可以在最近一次存储至令牌存储区域的镜像权令牌中获得可信根密钥,用于安全启动过程对镜像文件的引导加载。
本申请实施例提供的技术方案,支持镜像权的转移,使得镜像权所有者可以根据自身需求更换镜像文件,在满足用户差异化需求的同时,也使得镜像文件的更换更加灵活。与此同时,由于镜像权令牌可以由用户自己写入令牌存储区域,易发生写入非法令牌的问题,因此为了提高安全性,在安全启动过程通过对镜像权令牌的合法性进行检验,有利于避免在安全启动过程发生恶意攻击的情况。
在一种可能的实施方式中,在步骤402:在对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验之前,该安全启动方法还可以包括:
步骤A1:根据预设的权限标志,确定是否对令牌存储区中存储的镜像权令牌的合法性进行检验,权限标志用于指示允许或禁止镜像权转移。
步骤A2:在权限标志指示允许镜像权转移的情况下,执行步骤402。
步骤A3:在权限标志指示禁止镜像权转移的情况下,在初始镜像权令牌中获取安全引导过程所需的可信根密钥。
若权限标志=0(即权限标志=false),则表示镜像权变更功能开启,也即允许进行镜像权的转移,令牌存储区域中可能包括因镜像权转移而写入的镜像权令牌,因此此时可执行步骤402。
若权限标志=1(即权限标志=true),则表示镜像权变更功能关闭,也即禁止进行镜像权的转移,此时不管令牌存储区域是否包括其他镜像权令牌,均不对其进行检验,而是在初始镜像权令牌中获取安全引导过程所需的可信根密钥。
其中,该初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者(即芯片厂商)。
可选地,该权限标志可以存储在令牌存储区域内,也可以存储在其他安全性高的存储空间内。在存储在令牌存储区域内的情况下,具体可以存储在初始镜像权令牌中,如图3所示,存储区(1)中存储的为初始镜像权令牌,该令牌中的TAG即为该权限标志。
在一种可能的实施方式中,每一待检测镜像权令牌中除了可以包括可信根密钥外,还可以包括以下至少一种信息:第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志。关于每种信息的解释说明,具体可参见前述实施例,这里便不再赘述。
在一些实施例中,在待检验镜像权令牌中包括第一存储位置编号的情况下,该安全启动方法还可以包括:
步骤B1:从令牌存储区域的尾部开始,确定第一个第一存储位置编号为起始位置编号的第二镜像权令牌。
步骤B2:将第二镜像权令牌之后的镜像权令牌,确定为待检验镜像权令牌。
首先需要说明的是,在向令牌存储区域存储镜像权令牌时,是按照存储区从前至后的顺序存储的。
这里所述的起始位置编号为初始镜像权令牌的存储位置编号,若一个镜像权令牌中的第一存储位置编号为起始位置编号,说明该镜像权令牌是初始镜像权所有者签发的,向初始镜像权所有者申请镜像权一般需要物权证明,由此得到的镜像权令牌可信度高,从该镜像权令牌开始到最后一个镜像权令牌应当是一个完整的授权闭环,因此,需要对该令牌之后的镜像权令牌进行合法性检查,所以将该第二镜像权令牌之后的镜像权令牌确定为待检验镜像权令牌。
例如,从令牌存储区域的尾部开始,逐一检查每一镜像权令牌的pre_id(即第一存储位置编号)字段,直到查找到第一个pre_id字段不为0的镜像权令牌,将其所在存储区标记为last_id(表示最新的镜像权令牌)。之后,继续向前查找,直到查找到第一个pre_id字段为1的镜像权令牌,将其所在存储区标记为begin_id,与此同时,还可标识begin_id存储区内的镜像权令牌的所有者为最新设备实际所有者FT。在此之后,则可以从begin_id标识的存储区的下一存储区开始,逐一检查令牌的合法性。
可选地,前述令牌存储区域的尾部可以是指预先设置的用于存储镜像权令牌的存储区的最大编号对应的存储区。
该最大编号可以存储在令牌存储区域内,具体可以存储在初始镜像权令牌中,如图3所示,存储区(1)中存储的为初始镜像权令牌,该令牌中的max_id指示的编号即为该最大编号。可以理解的是,该最大编号也可以存储在其他位置,在需要时能够从中获取该最大编号信息即可。
可选地,在步骤B1与步骤B2的基础上,在待检验镜像权令牌中包括第二存储位置编号的情况下,步骤402:对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,可以包括:
步骤4021:确定每一待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号。
步骤4022:在任意一个待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号的情况下,确定至少一个待检验镜像权令牌的合法性未通过检验。
一般,在待检验镜像令牌中,镜像权令牌是由前一镜像权令牌所有者签发的(除用户跳过前一镜像权令牌所有者直接向芯片厂商申请镜像权令牌等一些特殊情况,此种情况对应第二镜像权令牌),因此,对待检验镜像权令牌的合法性检查可以包括判断每一待检验镜像权令牌是否由前一个镜像权所有者签发。若任意一个待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号,说明所述至少一个待检验镜像权令牌中包括非法令牌,存在安全隐患,则检验失败,终止启动。
可选地,在步骤B1与步骤B2的基础上,在待检验镜像权令牌中包括第二存储位置编号和种子标志的情况下,步骤402:对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,可以包括:
步骤C1:确定每一待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号或第三镜像权令牌中的第二存储位置编号。
其中,第三镜像权令牌为存储于当前待检验镜像权令牌之前的第一个种子标志指示新镜像权所有者拥有对计算设备的物权的镜像权令牌。例如,当前待检验镜像权令牌为令牌A,则判断令牌A中的第一存储位置编号是否为令牌A前面第一个种子标志=1的镜像权令牌(对应第三镜像权令牌)的存储位置编号(对应第二存储位置编号)。
步骤C2:在任意一个待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号且不为第三镜像权令牌中的第二存储位置编号的情况下,确定至少一个待检验镜像权令牌的合法性未通过检验。
前述实施例中提到,通过种子标志可以实现镜像权的暂时性转移,在此期间,而新镜像权所有者可以继续将镜像权转移给其他用户,但设备所有者可以在未取得当前镜像权所有者的情况下,签发一个新的镜像权令牌来达到回收镜像权的目的,此时,该新的镜像权令牌的签发者并非前一镜像权所有者,也即新的镜像权令牌中的第一存储位置编号不是前一镜像权令牌中的第二存储位置编号,因此,还需要判断待检验镜像权令牌中的第一存储位置编号是否为第三镜像权令牌中的第二存储位置编号。
若待检验镜像权令牌中的第一存储位置编号既不为前一镜像权令牌中的第二存储位置编号,也不为第三镜像权令牌中的第二存储位置编号,则说明该待检验镜像权令牌存在安全隐患,则检验失败,终止启动。
在一些实施例中,在待检验镜像权令牌中包括权利转移控制标志的情况下,步骤402:对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,可以包括:
在第四镜像权令牌中的权利转移控制标志指示禁止新镜像权所有者转移镜像权的情况下,若第四镜像权令牌之后还包括第五镜像权令牌,则确定至少一个待检验镜像权令牌的合法性未通过检验。
其中,第四镜像令牌为所述至少一个待检验镜像权令牌中的其中一个。第五镜像权令牌为第四镜像权令牌的下一个镜像权令牌,且第五镜像权令牌中的第一存储位置编号为第四镜像权令牌中的第二存储位置编号。
若一个镜像权令牌中的权利转移控制标志指示禁止新镜像权所有者转移镜像权,且该镜像权令牌之后的下一镜像权令牌是由该新镜像权所有者签发(即下一镜像权令牌的第一存储位置编号为上一镜像权令牌中的第二存储位置编号),说明下一镜像权令牌是非法的,则检验失败,终止启动。
如图3所示,假设存储区(2)中的NLK=1,且存储区(3)中的Pre_id与存储区(2)中Cur_id相同,则表示存储区(3)中的镜像权令牌是存储区(2)中的镜像权令牌所有者签发的,但由于该用户并没有权利转移权利,因此,存储区(3)中的镜像权令牌是非法的,在对令牌进行检验时会失败,并终止引导。
可选地,该权利转移控制标志可以与种子标志结合使用,例如,在通过种子标志实现镜像权的暂时性转移时,原镜像权所有者在签发镜像权令牌时,除了可以将种子标志置为0(表示新镜像权所有者不具有对计算设备的物权),还可以将权利转移控制标志置为1,禁止新镜像权所有者转移镜像权,达到只有设备所有者才能转移镜像权的目的。
可选地,在确定待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号的情况下,也可以结合权利转移控制标志进行判断,如果待检验镜像权令牌中的第一存储位置编号为前一镜像权令牌中的第二存储位置编号,但前一镜像权令牌中的权利转移控制标志指示禁止新镜像权所有者转移镜像权,则说明该待检验镜像权令牌不合法。
在一些实施例中,在待检验镜像权令牌中包括数字签名信息的情况下,步骤402:对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,可以包括:
步骤D1:根据每个待检验镜像权令牌中的数字签名信息,对对应的待检验镜像权令牌进行验签。
步骤D2:在任意一个待检验镜像权令牌验签失败的情况下,确定所述至少一个待检验镜像权令牌的合法性未通过检验。
在待检验镜像权令牌中包括数字签名信息,还需通过该数字签名信息对待检验镜像权令牌进行验签检验。若令牌未通过验签,说明该令牌是非法的,存在安全隐患,则检验失败,终止引导。
可选地,形成数字签名信息的加密密钥为原镜像权所有者拥有的镜像权令牌中的可信根密钥(即可信根公钥)对应的可信根私钥,相应的,对数据签名信息的解密密钥则为原镜像权所有者拥有的镜像权令牌中的可信根密钥。
相应的,在步骤D1之前,该安全启动方法还可以包括:获取每个待检验镜像权令牌中的数字签名信息的解密密钥。
其中,这里所述的解密密钥为待检验镜像权令牌对应的令牌签发者拥有的镜像权令牌中的可信根密钥。
需要说明的是,可以先通过数字签名信息对待检验镜像权令牌进行验签,在验签通过后,再依据令牌中包括的其他信息(如第一存储位置编号、第二存储位置编号、种子标志等),对待检验镜像权令牌的合法性进行进一步的检验。
另外,在对待检验镜像权令牌的合法性进行检验时,可以按照令牌存储区域从前到后的顺序进行。
其中,在每一待检验镜像权令牌通过数字签名验签后,检查该待检验镜像权令牌的种子标志,若种子标志指示新镜权所有者拥有计算设备的物权,即种子标志= True,则将前述FT值更新为该待检验镜像权令牌的第二存储位置编号,如此,可利用最新的FT值,执行步骤C1和步骤C2。
在一些实施例中,在待检验镜像权令牌中包括回滚标志,且所述至少一个待检验镜像权令牌的合法性均通过检验的情况下,该安全启动方法还可以包括:
在待加载的镜像文件为出厂镜像文件的情况下,根据回滚标志,确定是否引导加载出厂镜像文件。
通过回滚标志可以控制允许或禁止使用出厂镜像文件进行恢复出厂设置,因此,在待检验镜像权令牌中包括回滚标志,且待加载的镜像文件为出厂镜像文件的情况下,可以通过回滚标志确定是否引导加载出厂镜像文件。通过回滚标志,可以满足用户合法的回滚需求。
其中,OTP存储部件中存储有出厂镜像摘要,可以以此判断待加载的镜像文件是否为出厂镜像文件,例如,将OTP存储部件中存储的出厂镜像摘要与镜像文件对应的镜像摘要进行对比,在相同时,说明该镜像文件为出厂镜像文件,反之,则不为出厂镜像文件。
以上即为对本申请实施例提供的镜像权转移方法以及安全启动方法的描述。
综上所述,本申请实施例提供的技术方案,可以赋予用户更大的自由度,由用户自主选择镜像文件,并完成镜像文件打包,从而给与用户更大的镜像文件更换权。此外,用户可以基于合法物权动态夺取相应设备的镜像权,物权人可以自行转移对设备的镜像权,而无需请求芯片厂商。其中,物权的转移可以随着设备交易自然完成,而镜像权的转移则可以随着物权的转移而被原物权人彻底放弃,并移交给新物权人,转移后原物权人丧失所有权利。当然,物权人也可以在保留物权的条件下授予新用户镜像权,并可以随时回收设备并终止镜像权的授权。最后,本申请实施例提供的技术方案需要连网进行,安全性高。
示例性装置
相应的,本申请实施例还提供了一种镜像权转移装置,应用于计算设备。
如图5所示,该装置可以包括:
令牌写入模块501,用于响应于令牌写入请求,在令牌存储区域写入新镜像权令牌。
其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥,所述可信根密钥用于所述计算设备的安全启动过程。
可选地,所述新镜像权令牌中还包括以下至少一种信息:第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志。
所述新镜像权令牌中包括第一存储位置编号,所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号。
所述新镜像权令牌中包括第二存储位置编号,所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号。
所述新镜像权令牌中包括所述权利转移控制标志,所述权利转移控制标志用于指示允许或禁止所述新镜像权令牌所有者转移镜像权。
所述新镜像权令牌中包括种子标志,所述种子标志用于指示新镜像权所有者是否为拥有所述计算设备的物权。
所述新镜像权令牌中包括回滚标志,所述回滚标志用于指示允许或禁止使用出厂镜像文件进行恢复出厂设置。
可选地,所述令牌存储区域中还存储有初始镜像权令牌,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者,所述初始镜像权令牌中包括初始可信根密钥和权限标志,所述权限标志用于指示允许或禁止进行镜像权的转移。
本实施例提供的镜像权转移装置,与本申请上述实施例所提供的镜像权转移方法属于同一申请构思,可执行本申请上述任意实施例所提供的镜像权转移方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请上述实施例提供的镜像权转移方法的具体处理内容,此处不再加以赘述。
本申请实施例还提供了另一种安全启动装置,应用于计算设备。
如图6所示,该装置可以包括:
启动模块601,用于响应于安全启动请求,执行安全启动过程。
检验模块602,用于在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验。
其中,所述待检验镜像权令牌为镜像权发生转移时存储至所述令牌存储区域的,用于指示镜像权发生转移,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种,每一所述待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥。
第一密钥获取模块603,用于在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全引导过程所需的可信根密钥。
其中,所述第一镜像权令牌为所述待检验镜像权令牌中最近一次存储至所述令牌存储区的。
可选地,所述待检验镜像权令牌中还包括以下至少一种信息:第一存储位置编号、第二存储位置编号、权利转移控制标志、种子标志、回滚标志。
所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号。
所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号。
所述权利转移控制标志用于指示允许或禁止新镜像权所有者转移镜像权。
所述种子标志用于指示新镜像权所有者是否拥有所述计算设备的物权。
所述回滚标志用于指示允许或禁止使用出厂镜像文件进行恢复出厂设置。
可选地,在所述待检验镜像权令牌中包括第一存储位置编号的情况下,所述装置还包括:
第一确定模块,用于从所述令牌存储区的尾部开始,确定第一个第一存储位置编号为起始位置编号的第二镜像权令牌。
其中,所述起始位置编号为初始镜像权令牌的存储位置编号,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者。
第二确定模块,用于将所述第二镜像权令牌之后的镜像权令牌,确定为所述待检验镜像权令牌。
可选地,在所述待检验镜像权令牌中包括第二存储位置编号的情况下,所述检验模块603可以具体用于:
确定每一所述待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号;
在任意一个所述待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号的情况下,确定所述至少一个待检验镜像权令牌的合法性未通过检验。
可选地,在所述待检验镜像权令牌中包括第二存储位置编号和种子标志的情况下,所述检验模块603可以具体用于包括:
确定每一所述待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号或第三镜像权令牌中的第二存储位置编号;其中,所述第三镜像权令牌为存储于当前待检验镜像权令牌之前的第一个种子标志指示新镜像权所有者拥有所述计算设备的物权的镜像权令牌;
在任意一个所述待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号或所述第三镜像权令牌中的第二存储位置编号的情况下,确定所述至少一个待检验镜像权令牌的合法性未通过检验。
可选地,在所述待检验镜像权令牌中包括权利转移控制标志的情况下,所述检验模块603可以具体用于:
在第四镜像权令牌中的所述权利转移控制标志指示禁止新镜像权所有者转移镜像权的情况下,若所述第四镜像权令牌之后还包括第五镜像权令牌,则确定所述至少一个待检验镜像权令牌的合法性未通过检验;
其中,所述第四镜像令牌为所述至少一个待检验镜像权令牌中的其中一个;所述第五镜像权令牌为所述第四镜像权令牌的下一个镜像权令牌,且所述第五镜像权令牌中的第一存储位置编号为所述第四镜像权令牌中的第二存储位置编号。
可选地,在所述待检验镜像权令牌中包括所述回滚标志,且所述至少一个待检验镜像权令牌的合法性均通过检验的情况下,所述装置还包括:
在待加载的镜像文件为出厂镜像文件的情况下,根据所述回滚标志,确定是否引导加载所述出厂镜像文件。
可选地,在所述对令牌存储区存储的至少一个待检验镜像权令牌的合法性进行检验之前,所述装置还包括:
第三确定模块,用于根据预设的权限标志,确定是否对所述令牌存储区中存储的镜像权令牌的合法性进行检验;其中,所述权限标志用于指示允许或禁止镜像权转移;
执行模块,用于在所述权限标志指示允许镜像权转移的情况下,执行所述对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验的步骤;
第二密钥获取模块,用于在所述权限标志指示禁止镜像权转移的情况下,在初始镜像权令牌中获取安全引导过程所需的可信根密钥;其中,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者。
本实施例提供的安全启动装置,与本申请上述实施例所提供的安全启动方法属于同一申请构思,可执行本申请上述任意实施例所提供的安全启动方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请上述实施例提供的安全启动方法的具体处理内容,此处不再加以赘述。
示例性电子设备
本申请实施例还提供了一种电子设备,如图7所示,该电子设备包括:存储器700和处理器710。
存储器700与处理器710连接,用于存储程序。
处理器710用于通过运行存储器700中存储的程序,实现上述实施例中的安全启动方法。
具体地,上述电子设备还可以包括:通信接口720、输入设备730、输出设备740和总线750。
处理器710、存储器700、通信接口720、输入设备730和输出设备740通过总线相互连接。其中:
总线750可包括一通路,在计算机系统各个部件之间传送信息。
处理器710可以是通用处理器,例如通用中央处理器(CPU)、微处理器等,也可以是特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
处理器710可包括主处理器,还可包括基带芯片、调制解调器等。
存储器700中保存有执行本发明技术方案的程序,还可以保存有操作系统和其他关键业务。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体地,存储器700可以包括只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器、flash等等。
输入设备730可包括接收用户输入的数据和信息的装置,例如键盘、鼠标、摄像头、扫描仪、光笔、语音输入装置、触摸屏、计步器或重力感应器等。
输出设备740可包括允许输出信息给用户的装置,例如显示屏、打印机、扬声器等。
通信接口720可包括使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WLAN)等。
处理器710执行存储器700中所存放的程序,以及调用其他设备,可用于实现本申请上述实施例所提供的安全启动方法的各个步骤。
示例性计算机程序产品和存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本申请实施例中描述的安全启动方法中的步骤。
计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是存储介质,其上存储有计算机程序,计算机程序被处理器执行本申实施例中描述的安全启动方法中的步骤。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减,各实施例中记载的技术特征可以进行替换或者组合。
本申请各实施例种装置及终端中的模块和子模块可以根据实际需要进行合并、划分和删减。
本申请所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,模块或子模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个子模块或模块可以结合或者可以集成到另一个模块,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块或子模块可以是或者也可以不是物理上分开的,作为模块或子模块的部件可以是或者也可以不是物理模块或子模块,即可以位于一个地方,或者也可以分布到多个网络模块或子模块上。可以根据实际的需要选择其中的部分或者全部模块或子模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块或子模块可以集成在一个处理模块中,也可以是各个模块或子模块单独物理存在,也可以两个或两个以上模块或子模块集成在一个模块中。上述集成的模块或子模块既可以采用硬件的形式实现,也可以采用软件功能模块或子模块的形式实现。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件单元,或者二者的结合来实施。软件单元可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (16)

1.一种镜像权转移方法,其特征在于,应用于计算设备,所述方法包括:
响应于令牌写入请求,在令牌存储区域写入新镜像权令牌;
其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥、第一存储位置编号和第二存储位置编号,所述可信根密钥用于所述计算设备的安全启动过程,所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第一存储位置编号和所述第二存储位置编号用于在所述计算设备的安全启动过程中对所述令牌存储区域中的镜像权令牌的合法性进行检验。
2.根据权利要求1所述的镜像权转移方法,其特征在于,所述新镜像权令牌中还包括以下至少一种信息:权利转移控制标志、种子标志、回滚标志;
所述权利转移控制标志用于指示允许或禁止所述新镜像权令牌所有者转移镜像权;
所述种子标志用于指示新镜像权所有者是否为拥有所述计算设备的物权;
所述回滚标志用于指示允许或禁止使用出厂镜像文件进行恢复出厂设置。
3.根据权利要求1或2所述的镜像权转移方法,其特征在于,所述令牌存储区域中还存储有初始镜像权令牌,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者,所述初始镜像权令牌中包括初始可信根密钥和权限标志;
所述权限标志用于指示允许或禁止进行镜像权的转移。
4.一种安全启动方法,其特征在于,应用于计算设备,所述方法包括:
响应于安全启动请求,执行安全启动过程;
在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验;其中,所述待检验镜像权令牌为镜像权发生转移时存储至所述令牌存储区域的,用于指示镜像权发生转移,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种,每一所述待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥、第一存储位置编号和第二存储位置编号,所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号;
在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全启动过程所需的可信根密钥;
所述对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,包括:
基于所述第一存储位置编号和所述第二存储位置编号,对所述至少一个待检验镜像权令牌的合法性进行检验。
5.根据权利要求4所述的安全启动方法,其特征在于,所述待检验镜像权令牌中还包括以下至少一种信息:权利转移控制标志、种子标志、回滚标志。
6.根据权利要求5所述的安全启动方法,其特征在于,
所述权利转移控制标志用于指示允许或禁止新镜像权所有者转移镜像权;
所述种子标志用于指示新镜像权所有者是否拥有所述计算设备的物权;
所述回滚标志用于指示允许或禁止使用出厂镜像文件进行恢复出厂设置。
7.根据权利要求5或6所述的安全启动方法,其特征在于,所述方法还包括:
从所述令牌存储区的尾部开始,确定第一个第一存储位置编号为起始位置编号的第二镜像权令牌;其中,所述起始位置编号为初始镜像权令牌的存储位置编号,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者;
将所述第二镜像权令牌之后的镜像权令牌,确定为所述待检验镜像权令牌。
8.根据权利要求7所述的安全启动方法,其特征在于,所述基于所述第一存储位置编号和所述第二存储位置编号,对所述至少一个待检验镜像权令牌的合法性进行检验,包括:
确定每一所述待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号;
在任意一个所述待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号的情况下,确定所述至少一个待检验镜像权令牌的合法性未通过检验。
9.根据权利要求7所述的安全启动方法,其特征在于,在所述待检验镜像权令牌中包括种子标志的情况下,所述对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,包括:
确定每一所述待检验镜像权令牌中的第一存储位置编号是否为前一镜像权令牌中的第二存储位置编号或第三镜像权令牌中的第二存储位置编号;其中,所述第三镜像权令牌为存储于当前待检验镜像权令牌之前的第一个种子标志指示新镜像权所有者拥有所述计算设备的物权的镜像权令牌;
在任意一个所述待检验镜像权令牌中的第一存储位置编号不为前一镜像权令牌中的第二存储位置编号且不为所述第三镜像权令牌中的第二存储位置编号的情况下,确定所述至少一个待检验镜像权令牌的合法性未通过检验。
10.根据权利要求5或6所述的安全启动方法,其特征在于,在所述待检验镜像权令牌中包括权利转移控制标志的情况下,所述对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验,包括:
在第四镜像权令牌中的所述权利转移控制标志指示禁止新镜像权所有者转移镜像权的情况下,若所述第四镜像权令牌之后还包括第五镜像权令牌,则确定所述至少一个待检验镜像权令牌的合法性未通过检验;
其中,所述第四镜像令牌为所述至少一个待检验镜像权令牌中的其中一个;所述第五镜像权令牌为所述第四镜像权令牌的下一个镜像权令牌,且所述第五镜像权令牌中的第一存储位置编号为所述第四镜像权令牌中的第二存储位置编号。
11.根据权利要求5或6所述的安全启动方法,其特征在于,在所述待检验镜像权令牌中包括所述回滚标志,且所述至少一个待检验镜像权令牌的合法性通过检验的情况下,所述方法还包括:
在待加载的镜像文件为出厂镜像文件的情况下,根据所述回滚标志,确定是否引导加载所述出厂镜像文件。
12.根据权利要求4所述的安全启动方法,其特征在于,在所述对令牌存储区存储的至少一个待检验镜像权令牌的合法性进行检验之前,所述方法还包括:
根据预设的权限标志,确定是否对所述令牌存储区中存储的镜像权令牌的合法性进行检验;其中,所述权限标志用于指示允许或禁止镜像权转移;
在所述权限标志指示允许镜像权转移的情况下,执行所述对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验的步骤;
在所述权限标志指示禁止镜像权转移的情况下,在初始镜像权令牌中获取安全启动过程所需的可信根密钥;其中,所述初始镜像权令牌为存储至所述令牌存储区域中的第一个镜像权令牌,属于初始镜像权所有者。
13.一种镜像权转移装置,其特征在于,应用于计算设备,所述装置包括:
令牌写入模块,用于响应于令牌写入请求,在令牌存储区域写入新镜像权令牌;
其中,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种;所述新镜像权令牌用于指示镜像权发生转移,所述新镜像权令牌中包括新镜像权所有者设置的可信根密钥、第一存储位置编号和第二存储位置编号,所述可信根密钥用于所述计算设备的安全启动过程,所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第一存储位置编号和所述第二存储位置编号用于在所述计算设备的安全启动过程中对所述令牌存储区域中的镜像权令牌的合法性进行检验。
14.一种安全启动装置,其特征在于,应用于计算设备,所述装置包括:
启动模块,用于响应于安全启动请求,执行安全启动过程;
检验模块,用于在安全启动过程中,对令牌存储区域存储的至少一个待检验镜像权令牌的合法性进行检验;其中,所述待检验镜像权令牌为镜像权发生转移时存储至所述令牌存储区域的,用于指示镜像权发生转移,所述镜像权包括对镜像文件的选择权利和打包权利中的至少一种,每一所述待检验镜像权令牌中包括新镜像权所有者设置的可信根密钥,第一存储位置编号和第二存储位置编号,所述第一存储位置编号为当前令牌签发者拥有的镜像权令牌在所述令牌存储区域的存储位置编号,所述第二存储位置编号为新镜像权所有者拥有的镜像权令牌在所述令牌存储区域的存储位置编号;
密钥获取模块,用于在所述至少一个待检验镜像权令牌的合法性通过检验的情况下,在第一镜像权令牌中获取安全引导过程所需的可信根密钥;
所述检验模块具体用于:基于所述第一存储位置编号和所述第二存储位置编号,对所述至少一个待检验镜像权令牌的合法性进行检验。
15.一种电子设备,其特征在于,包括:存储器和处理器;
所述存储器与所述处理器连接,用于存储程序;
所述处理器用于通过运行所述存储器中的程序,实现如权利要求1至3中任一项所述的镜像权转移方法,或如权利要求4至12中任一项所述的安全启动方法。
16.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如权利要求1至3中任一项所述的镜像权转移方法,或如权利要求4至12中任一项所述的安全启动方法。
CN202311790578.7A 2023-12-25 2023-12-25 一种镜像权转移方法、安全启动方法及相关装置 Active CN117494079B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311790578.7A CN117494079B (zh) 2023-12-25 2023-12-25 一种镜像权转移方法、安全启动方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311790578.7A CN117494079B (zh) 2023-12-25 2023-12-25 一种镜像权转移方法、安全启动方法及相关装置

Publications (2)

Publication Number Publication Date
CN117494079A CN117494079A (zh) 2024-02-02
CN117494079B true CN117494079B (zh) 2024-03-26

Family

ID=89674887

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311790578.7A Active CN117494079B (zh) 2023-12-25 2023-12-25 一种镜像权转移方法、安全启动方法及相关装置

Country Status (1)

Country Link
CN (1) CN117494079B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1963758A (zh) * 2005-11-07 2007-05-16 三星电子株式会社 用于安全更新和启动代码镜像的方法和装置
CN102289627A (zh) * 2010-06-11 2011-12-21 英特尔公司 固件映象的多拥有者部署
CN103886246A (zh) * 2012-12-22 2014-06-25 三星电子株式会社 支持认证装置安全引导的动态改变的方法和设备
KR20140082542A (ko) * 2012-12-22 2014-07-02 삼성전자주식회사 보안부팅을 위한 인증수단의 변경을 지원하는 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090193211A1 (en) * 2008-01-24 2009-07-30 Broadcom Corporation Software authentication for computer systems
US9842212B2 (en) * 2014-11-03 2017-12-12 Rubicon Labs, Inc. System and method for a renewable secure boot
US11893118B2 (en) * 2021-05-25 2024-02-06 Microsoft Technology Licensing, Llc Transfer of ownership of a computing device via a security processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1963758A (zh) * 2005-11-07 2007-05-16 三星电子株式会社 用于安全更新和启动代码镜像的方法和装置
CN102289627A (zh) * 2010-06-11 2011-12-21 英特尔公司 固件映象的多拥有者部署
CN103886246A (zh) * 2012-12-22 2014-06-25 三星电子株式会社 支持认证装置安全引导的动态改变的方法和设备
KR20140082542A (ko) * 2012-12-22 2014-07-02 삼성전자주식회사 보안부팅을 위한 인증수단의 변경을 지원하는 방법 및 장치

Also Published As

Publication number Publication date
CN117494079A (zh) 2024-02-02

Similar Documents

Publication Publication Date Title
EP2854066B1 (en) System and method for firmware integrity verification using multiple keys and OTP memory
CN109313690B (zh) 自包含的加密引导策略验证
US7853780B2 (en) Core initialization code validation
US7917762B2 (en) Secure execution environment by preventing execution of unauthorized boot loaders
CN102279760B (zh) 利用初始保护组件来进行设备引导
JP5992457B2 (ja) オペレーティングシステムのコンフィグレーション値の保護
KR101190479B1 (ko) 티켓 인증 보안 설치 및 부트
EP2727040B1 (en) A secure hosted execution architecture
US8689318B2 (en) Trusted computing entities
US20130055335A1 (en) Security enhancement methods and systems
JP2008537224A (ja) 安全な起動方法およびシステム
KR102030858B1 (ko) 디지털 서명 권한자 의존형 플랫폼 기밀 생성 기법
US10936722B2 (en) Binding of TPM and root device
US20090287917A1 (en) Secure software distribution
EP3583536B1 (en) Securely defining operating system composition without multiple authoring
KR101805310B1 (ko) Tpm 기반의 사용자 장치 및 이를 이용한 펌웨어 갱신 방법
JP2021179982A (ja) シリコンデバイスファームウェア上のロールバック攻撃を防止するセキュリティシステム、および、方法
US20090199017A1 (en) One time settable tamper resistant software repository
KR20220090537A (ko) 정책 적용을 위한 가상 환경 유형 검증
CN112511306A (zh) 一种基于混合信任模型的安全运行环境构建方法
Regenscheid BIOS protection guidelines for servers
US10095855B2 (en) Computer system and operating method therefor
CN117494079B (zh) 一种镜像权转移方法、安全启动方法及相关装置
CN116089967B (zh) 数据防回滚方法和电子设备
Yao et al. Configuration

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