用以安全地激活或撤销密钥的计算装置转让专利

申请号 : CN201680046706.9

文献号 : CN107925570B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 罗恩·凯达尔佑·朱郭旭

申请人 : 高通股份有限公司

摘要 :

所揭示的是一种用以安全地激活或撤销密钥的设备和方法。举例来说,所述设备可包括:存储装置,其用以存储多个预存储密钥;通信接口,其用以接收激活密钥命令和与所述预存储密钥中的一个相关联的证书;以及处理器。所述处理器可耦合到所述存储装置和所述通信接口,且可经配置以:实施所述激活密钥命令以利用所述预存储密钥和所述证书重启所述设备;以及确定所述重启是否成功。

权利要求 :

1.一种硬件设备,其包括:存储装置,其用以存储多个预存储密钥;通信接口,其用以从服务器接收激活密钥命令和与所述预存储密钥中的一个相关联的证书;以及处理器,其耦合到所述存储装置和所述通信接口,所述处理器经配置以:实施所述激活密钥命令以利用所述预存储密钥中的所述一个和从所述服务器接收的与所述预存储密钥中的所述一个相关联的所述证书重启所述设备;确定所述重启是否成功,其中,如果所述重启不成功,那么所述处理器经配置以恢复以先前使用的预存储密钥和对应的先前使用的证书操作,且其中,如果所述重启成功,那么所述处理器进一步经配置以存储所述证书用于进一步重启并撤销先前使用的预存储密钥。

2.根据权利要求1所述的设备,其中,如果所述重启成功,那么所述处理器进一步经配置以发布撤销密钥命令以撤销所述先前使用的预存储密钥。

3.根据权利要求1所述的设备,其中,所述多个预存储密钥中的两个或两个以上同时活跃,包含至少用于激活的预存储密钥和用于撤销的预存储密钥。

4.根据权利要求1所述的设备,其中所述处理器进一步经配置以防止未经授权的激活密钥命令和未经授权的撤销密钥命令。

5.根据权利要求1所述的设备,其中,撤销所述先前使用的预存储密钥进一步包括所述处理器命令与所述先前使用的预存储密钥相关联的硬件保险丝熔断。

6.根据权利要求1所述的设备,其中,所述通信接口是无线接口,且所述激活密钥命令以无线方式发射。

7.一种用以安全地激活或撤销密钥的方法,其包括:通过计算装置从服务器接收与存储在所述计算装置上的多个预存储密钥中的一个相关联的证书和激活密钥命令;以及实施所述激活密钥命令,包含:以所述预存储密钥中的所述一个和从所述服务器接收的与所述预存储密钥中的所述一个相关联的所述证书重启所述计算装置;确定所述重启是否成功,其中,如果所述重启不成功,那么所述方法进一步包括恢复以先前使用的预存储密钥和对应的先前使用的证书操作,且其中,如果所述重启成功,那么所述方法进一步包括存储所述证书用于进一步重启并撤销先前使用的预存储密钥。

8.根据权利要求7所述的方法,其中,所述多个预存储密钥中的两个或两个以上同时活跃,包含至少用于激活的预存储密钥和用于撤销的预存储密钥。

9.根据权利要求7所述的方法,其进一步包括防止未经授权的激活密钥命令和未经授权的撤销密钥命令。

10.根据权利要求7所述的方法,其中,撤销所述先前使用的预存储密钥进一步包括命令与所述先前使用的预存储密钥相关联的硬件保险丝熔断。

11.根据权利要求7所述的方法,其中,所述激活密钥命令以无线方式从服务器发射到所述计算装置。

12.一种非暂时性计算机可读媒体,其包含代码,所述代码在由计算装置的处理器执行时致使所述处理器:通过所述计算装置从服务器接收与存储在所述计算装置上的多个预存储密钥中的一个相关联的证书和激活密钥命令;以及实施所述激活密钥命令,包含:以所述预存储密钥中的所述一个和从所述服务器接收的与所述预存储密钥中的所述一个相关联的所述证书重启所述计算装置;确定所述重启是否成功,其中,如果所述重启不成功,那么所述计算机可读媒体进一步包括用以恢复以先前使用的预存储密钥和对应的先前使用的证书操作的代码,且其中,如果所述重启成功,那么所述计算机可读媒体进一步包括用以存储所述证书用于进一步重启并撤销先前使用的预存储密钥的代码。

13.根据权利要求12所述的计算机可读媒体,其中,所述多个预存储密钥中的两个或两个以上同时活跃,包含至少用于激活的预存储密钥和用于撤销的预存储密钥。

14.根据权利要求12所述的计算机可读媒体,其进一步包括用以防止未经授权的激活密钥命令和未经授权的撤销密钥命令的代码。

15.根据权利要求12所述的计算机可读媒体,其中,撤销所述先前使用的预存储密钥进一步包括用以命令与所述先前使用的预存储密钥相关联的硬件保险丝熔断的代码。

16.根据权利要求12所述的计算机可读媒体,其中,所述激活密钥命令以无线方式从服务器发射到所述计算装置。

17.一种计算机设备,其包括:用于存储多个预存储密钥的装置;用于从服务器接收与所述多个预存储密钥中的一个相关联的证书和激活密钥命令的装置;以及用于实施所述激活密钥命令的装置,包含:用于以所述预存储密钥中的所述一个和从所述服务器接收的与所述预存储密钥中的所述一个相关联的所述证书重启所述计算机设备的装置;用于确定所述重启是否成功的装置,其中,如果所述重启不成功,那么所述计算机设备进一步包括用于恢复以先前使用的预存储密钥和对应的先前使用的证书操作的装置,且其中,如果所述重启成功,那么所述计算机设备进一步包括用于存储所述证书用于进一步重启的装置,和用于撤销先前使用的预存储密钥的装置。

18.根据权利要求17所述的设备,其中,所述多个预存储密钥中的两个或两个以上同时活跃,包含至少用于激活的预存储密钥和用于撤销的预存储密钥。

19.根据权利要求17所述的设备,其进一步包括用于防止未经授权的激活密钥命令和未经授权的撤销密钥命令的装置。

说明书 :

用以安全地激活或撤销密钥的计算装置

[0001] 相关申请案的交叉参考
[0002] 本申请案是2015年8月26日申请的标题为“用以安全地激活或撤销密钥的计算装置(COMPUTING DEVICE TO SECURELY ACTIVATE OR REVOKE A KEY)”的第14/836,651号美国专利申请案的延续案且主张其优先权,所述专利申请案以引用的方式并入本文中。

技术领域

[0003] 本发明涉及一种安全地激活或撤销密钥的计算装置。

背景技术

[0004] 现代计算装置常常应用安全启动程序。通常通过将公共密钥锚定到硬件且通过签名证书将其联系到应用软件来采用此常见程序,所述签名证书保持整个软件应用图像的散列。公共密钥可与驻留在安全服务器中的专用密钥配对使得没有人可访问专用密钥,且专用密钥可产生签名证书以允许新的软件应用升级在计算装置上运行。
[0005] 令人遗憾的是,已经出现这样的情况:专用密钥已受损,且在此类事件中公司可能失去对其计算装置的控制。作为一实例,已经攻击专用密钥的黑客可将其自身的软件应用图像发射到计算装置以获得对计算装置的控制(例如,侵犯用户的隐私)。

发明内容

[0006] 所揭示的是一种用以安全地激活或撤销密钥的设备和方法。举例来说,所述设备可包括:存储装置,其用以存储多个预存储密钥;通信接口,其用以接收激活密钥命令和与预存储密钥中的一个相关联的证书;以及处理器。处理器可耦合到存储装置和通信接口,且可经配置以实施激活密钥命令以利用预存储密钥和证书重启设备;以及确定所述重启是否成功。在一个实施例中,如果重启成功,那么处理器经配置以存储证书用于进一步重启,且发布撤销密钥命令以撤销先前使用的预存储密钥。

附图说明

[0007] 图1是可在其中实践实施例的计算装置的图。
[0008] 图2是可在其中实践实施例的系统的图。
[0009] 图3是展示经授权或未经授权的启动过程的图。
[0010] 图4是说明用以确定是否激活新密钥的过程的图。
[0011] 图5是说明撤销公共密钥的图。
[0012] 图6是说明用以实施激活密钥命令的过程的实例的流程图。

具体实施方式

[0013] 词语“示范性”或“实例”在本文中用于意指“充当实例、例子或说明”。本文中描述为“示范性”或描述为“实例”的任何方面或实施例未必应被解释为比其它方面或实施例优选或有利。
[0014] 如本文中所使用,术语“计算系统或装置”指代任何形式的计算装置,包含但不限于膝上型计算机、平板计算机、智能电话、电视机、台式计算机、家用电器、蜂窝式电话、手表、可穿戴式装置、物联网(IoT)装置、个人电视机装置、个人数据助理(PDA)、掌上型计算机、无线电子邮件接收器、具多媒体因特网功能的蜂窝式电话、全球定位系统(GPS)接收器、无线游戏控制器、汽车装置、交互式游戏装置、笔记本计算机、智能本、上网本、移动电视机装置、相机、信息娱乐装置、网关等,或任何计算装置或数据处理设备。应了解,术语计算装置、计算系统、设备等可互换使用。
[0015] 在图1中说明如将在下文中详细地描述的可用于激活证书的实例计算装置100。计算装置100展示为包括可经由总线105电耦合(或可在适当时以其它方式通信)的硬件元件。硬件元件可包含一或多个处理器110,包含(不限于)一或多个通用处理器和/或一或多个专用处理器(例如数字信号处理芯片、图形加速处理器等);一或多个输入装置115(例如,键盘、小键盘、触摸屏、鼠标等);一或多个输出装置120,其包含至少显示装置121,且可进一步包含(不限于)扬声器、打印机等。此外,计算装置100可包含广泛多种传感器122。传感器122可包含:时钟、环境光传感器(ALS)、生物计量传感器(例如,血压监视器等)、加速计、陀螺仪、磁力计、定向传感器、指纹传感器、天气传感器(例如,温度、风力、湿度、气压等)、全球定位传感器(GPS)、红外(IR)传感器、近程传感器、近场通信(NFC)传感器、麦克风、相机。应了解,计算装置100可包含任何类型的传感器。在一个实施例中,可在下文中待描述的激活和撤销功能中利用的硬件元件可包含安全处理器、硬件安全性核心、密码-引擎等。
[0016] 计算装置100可进一步包含以下各项(和/或与以下各项通信):一或多个非暂时性存储装置125,所述非暂时性存储装置125可包括(但不限于)本地及/或网络可访问的存储装置,和/或可包含(但不限于)磁盘驱动器、驱动阵列、光学存储装置、例如随机存取存储器(“RAM”)和/或只读存储器(“ROM”)等固态存储装置,其可为可编程的、可快闪更新的和/或其类似者。此类存储装置可经配置以实施任何适当数据存储库,包含但不限于各种文件系统、数据库结构和/或类似物。
[0017] 计算装置100还可包含通信子系统和/或接口130,其可包含(不限于)模式、网卡(无线或有线)、红外通信装置、无线通信装置和/或芯片组(例如蓝牙装置、802.11装置、Wi-Fi装置、WiMax装置、蜂窝式通信装置等)和/或其类似者。通信子系统和/或接口130可准许与网络、其它计算机系统和/或本文中所描述的任何其它装置交换数据。在许多实施例中,计算装置100将进一步包括工作存储器135,其可包含RAM或ROM装置,如上文所描述。
[0018] 计算装置100还可包括固件元件、软件元件,展示为当前定位于工作存储器135内,包含操作系统140、应用145、装置驱动程序、可执行库和/或其它代码。在一个实施例中,应用可经设计以实施方法和/或配置系统,来实施实施例,如本文所描述。仅举例来说,相对于下文论述的方法描述的一或多个程序可被实施为可由计算装置(和/或计算装置内的处理器)执行的代码和/或指令;在一方面中,随后,根据本文中所描述的实施例,此类代码和/或指令可用于配置和/或调适计算装置100以根据所描述的方法执行一或多个操作。
[0019] 这些指令及/或代码的集合可能存储在非暂时性计算机可读存储媒体(例如上文所描述的存储装置125)上。在一些状况下,存储媒体可能并入在例如计算机系统100等计算机系统内。在其它实施例中,存储媒体可能与计算机系统分离(例如,可装卸式媒体(例如,光盘)),和/或提供于安装包中,使得存储媒体可用以编程、配置和/或调适其上存储有指令/代码的通用计算机。这些指令可能呈可由计算机化计算装置100执行的可执行代码的形式,及/或可能呈源及/或可安装代码的形式,所述源及/或可安装代码在计算装置100上编译及/或安装后(例如,使用多种通常可用编译程序、安装程序、压缩/解压缩公用程序等中的任一个),随后呈可执行代码的形式。
[0020] 所属领域的技术人员将明白,可根据特定要求作出实质性变化。举例来说,还可能使用定制硬件,和/或特定元件可能在硬件、固件、软件或其组合中实施,以实施本文中所描述的实施例。另外,可采用到其它计算装置(例如网络输入/输出装置)的连接。
[0021] 各方面可涉及一种用以激活用于计算装置100的新证书的设备和方法。确切地说,各方面可涉及一种用以转换到利用存储在计算装置100上的预存储密钥的新信任根(RoT)和从服务器发射到计算装置100的新证书的设备或方法。
[0022] 在一个实施例中,如下文将更详细地描述,计算装置100可包含多个预存储密钥和通信接口130。存储装置125可存储所述多个预存储密钥。下文中将描述用于所述多个预存储密钥的不同类型的存储装置。通信接口130可从远程服务器接收激活密钥命令和与预存储密钥中的一个相关联的证书(例如,下文称为新证书)。应注意,新证书由新密钥签名,且不是新密钥本身。换句话说,激活可能已经在计算装置100上但非活跃的密钥。一旦活跃,就需要更换相关联证书以便与新密钥一起工作,如将描述。如先前描述,处理器110可耦合到存储装置125和通信接口130。计算装置100的处理器110可经配置以:实施激活密钥命令以利用计算装置的预存储密钥和从服务器接收的新证书重启计算装置100。如果重启成功,那么处理器110可经配置以存储新证书用于结合利用预存储密钥而进一步重启,且可撤销使用先前使用的预存储密钥。另一方面,如果重启并不成功,那么处理器110可经配置以恢复以先前使用的预存储密钥和对应的先前使用的证书操作。在一个实施例中,处理器110可以是特定类型的处理硬件元件,其可在下文中待描述的激活和撤销功能中利用,例如安全处理器、硬件安全性核心、密码-引擎等。
[0023] 额外参看图2,展示计算装置100与远程服务器200结合。远程服务器200可包含处理器210、存储器212和用以与计算装置100通信的通信接口230。在一个实施例中,服务器200可以是合适的计算装置以经由无线或有线链路250向计算装置100发射:激活密钥命令;
撤销旧密钥命令;以及新证书。这些命令将在下文更详细地论述。应了解,服务器200可以是具有处理器、存储器和通信接口以执行这些功能的适当计算装置。此外,应了解,服务器200应具有某种机密以利用计算装置100启用这些类型的命令。举例来说,新证书可由服务器
200的专用密钥签名,所述专用密钥与计算装置100的预存储公共密钥中的一个相关联。因此,公共密钥可与驻留在安全服务器200中的专用密钥配对。这是可利用的一种类型的不对称公共/专用加密技术。然而,应了解,可利用任何合适类型的不对称或对称技术。
[0024] 计算装置100经由通信接口130可经由链路250接收激活密钥命令;撤销旧密钥命令;以及新证书。在处理器110的控制下,计算装置100可实施激活密钥命令。激活密钥命令可包含命令利用存储在计算装置上的新预存储密钥和从服务器200接收的新证书重启计算装置100。计算装置100接着可确定重启是否成功。如果重启成功,那么处理器110可进一步命令存储新证书用于结合使用新预存储密钥而进一步重启,且还可撤销先前使用的预存储密钥。另一方面,如果重启不成功,那么处理器110可经配置以恢复以先前使用的预存储密钥和对应的先前使用的证书操作。
[0025] 可额外参看图3提供实例300。作为一实例,可启动应用(例如,操作系统或针对远程计算装置的特定应用)。如图3所示,在由处理器110启动期间,安全散列算法306可施加到应用图像304以创建摘要308。接下来,应用摘要308的第一迭代可与产品ID串接310,且此值可经历进一步安全散列算法312以计算快闪应用摘要314。此外,处理器110可基于签名证书324正由信任根(RoT)330的公共密钥中的一个解密来计算证书摘要350。举例来说,展示四个公共密钥:公共密钥1 332、公共密钥2 334、公共密钥3 336和公共密钥4 338。在此实例中,利用第一先前使用的预存储公共密钥(密钥1 332)以产生证书摘要350。签名可用散列
342检验(块340)。在任何情况下,处理器110实施比较函数360以将快闪摘要314与证书摘要
350比较,且如果图像验证匹配,那么应用得以验证(通过362)且被允许启动(例如,继续启动或运行来自经验证图像304的代码)。然而,如果否,那么验证失败(失败362),且不允许应用启动。因此,应用的重启成功或不成功。
[0026] 如先前已描述,令人遗憾的是存在这样的情况:专用密钥已经受损,且在此类事件中,可能失去对计算装置的控制。作为一实例,已经攻击专用密钥的黑客可将其自身的软件应用图像发射到计算装置以获得对计算装置的控制(例如,侵犯用户的隐私)。
[0027] 根据一个实施例,激活密钥命令和新证书可由服务器200发送到计算装置100,使得可利用已经存储于计算装置100中的预存储公共密钥结合新证书324来控制应用的启动。
[0028] 在此实施例中,另外参看图4,可实施过程400,其中可利用新签名证书324和新预存储公共密钥(例如,公共密钥2 334)。举例来说,过程400说明可实施的不同类型的阶段。首先,当前阶段402说明先前程序,其中利用原始信任根(RoT)且不实施激活密钥命令和撤销密钥命令(例如,用0标记)。
[0029] 根据此实例,处理器110可实施激活密钥命令阶段404,其中利用新预存储公共密钥(例如,公共密钥2 334)连同从服务器200发送的新接收签名证书324。在阶段404中,激活新公共密钥(公共密钥2 334)且用从服务器200接收的新签名证书324替换旧签名证书。应了解,可利用适当口令和签名或其它密码方式来实现此目的。接下来,在阶段406处,处理器110利用RoT 300利用公共密钥2 334和新签名证书324执行重启,且确定其是否成功。应了解,可利用适当口令和签名来实现此目的。作为一实例,参看图3,在此实例中,处理器110命令重启计算装置以利用从服务器200接收的新签名证书324重启应用。应用图像304再次施加安全散列算法306以计算产品ID串接到的摘要308,且此数据再次施加另一安全散列算法
312以计算快闪摘要314。此外,处理器110基于新签名证书324正由新激活公共密钥2 334解密以产生证书摘要350来计算证书摘要350。所述签名可用散列342检验(块340)。在任何情况下,处理器110实施比较函数360以比较快闪摘要314与证书摘要350,且如果图像验证匹配,那么应用得以验证(通过362)且被允许启动。然而,如果否,那么验证失败(失败362),且不允许应用启动。因此,应用的重启成功或不成功。通过这种方式,测试新签名证书324和新激活公共密钥2 334是否成功用于重启。
[0030] 如果重启成功,在阶段408处,新签名证书324由处理器110永久地存储且用于所有进一步重启,且激活RoT的公共密钥2 334。此外,RoT的公共密钥1 332由撤销命令撤销且被删除或失效而无法再次使用,如下文将更详细地描述。另一方面,在阶段410处,如果重启不成功,那么处理器110经配置以恢复以RoT的先前使用的预存储公共密钥1 332和对应的先前使用的签名证书操作。通过这种方式,如果出于某一原因利用新签名证书重启应用并不成功,那么可简单地利用早期的当前阶段402以及原始公共密钥和原始签名证书。
[0031] 应了解,在先前描述的程序期间,预存储密钥(例如,密钥1 332和密钥2 334)中的两个或两个以上可同时活跃。通过这种方式,激活和撤销可分离。并且,应了解,尽管已描述激活阶段继之以撤销阶段的实例,但应了解,可利用任何合适的排序,例如撤销阶段且接着是激活阶段,或任何合适的排序。此外,可在所述过程期间利用多个活跃密钥和经撤销密钥,先前描述的过程仅仅是一个实例,且可利用任何合适的过程。此外,应了解,处理器110(例如,安全处理器、硬件安全性核心、密码-引擎等)可经配置以防止未经授权的激活密钥命令和未经授权的撤销密钥命令。举例来说,激活和撤销密钥命令可在服务器200处用适当专用密钥签名,且由计算装置100的处理器110以恰当成对公共密钥授权。然而,应了解,可在硬件或软件中利用用于验证激活和撤销密钥命令的任何合适的授权技术。
[0032] 通过利用此方法,过程400实现安全根转变,而不依赖于转变期间的任何通信(其可能对故障敏感),且不依赖于快闪存储器区域来存储多个应用图像(其也可能对故障敏感或尺寸受限)。应了解,此功能性可用于具有有限存储器和处理能力的远程物联网(IoT)装置(例如,恒温器、灯、远程传感器、烟雾检测器等)。因此,在计算装置为远程装置(例如IoT装置)的例子中,此过程可能极其有用。
[0033] 确切地说,对于远程计算装置100(例如IoT装置)(其中可基于来自远程服务器200的激活命令远程实施这些操作,而无任何人类辅助,且在许多情况下甚至所有者未感知到这些操作),可在专用密钥可能已经泄漏且黑客可能潜在地控制这些远程计算装置的情况下利用新公共密钥和新签名证书的使用。应了解,在IoT装置的操作中,此实施方案可涵盖数百万远程装置。因此,用于新签名证书和新公共密钥的使用的激活命令将始终以如先前过程中描述的后退(fall back)成功地发生,使得不可能出现“死”装置。通过这种方式,先前描述的过程的实施例通过将旧公共密钥的撤销与新公共密钥的激活分离且考虑到其中计算装置判定新公共密钥成功且仅当其成功时才撤销旧公共密钥的安全级,提供极其有益的实施方案。即使新签名证书和新公共密钥失败,也可依赖于旧公共密钥和旧签名证书。
[0034] 应了解,计算装置100和服务器200的先前描述的通信接口可以是无线接口,其中经由无线链路250发射激活密钥命令、新签名证书和撤销旧密钥命令。这种情况可能是,计算装置100为具有有限存储器和处理器的远程装置(例如IoT装置),且此可包含数百万不同远程装置。然而,应了解,还可利用有线链路。此外,应了解,可针对任何类型的计算装置利用先前描述的过程,且先前描述仅为实例。并且,应了解,一旦重启已成功,新签名证书已被接受,新公共密钥被激活且旧公共密钥被撤销,处于处理器110的控制下的计算装置100就可将确认消息发射到服务器200,使得服务器200可维持远程计算装置100现正利用新签名证书和新公共密钥用于验证目的的记录。
[0035] 另外参看图5,将说明撤销先前使用的预存储公共密钥的图示。如将描述,在一个实施例中,处理器110可命令与先前使用的预存储公共密钥相关联的硬件保险丝熔断。如图5的实例中可看出,可实施系统500,其中,可在硬件设计510中实施四个公共密钥330(例如,公共密钥1 332;公共密钥2 334;公共密钥3 336;公共密钥4 338),其中,每一密钥是活跃密钥、经撤销密钥或非活跃密钥中的任一个。作为一实例,可经由一次性可编程(OTP)存储器实施活跃密钥、经撤销密钥或非活跃密钥。在此实例中,如将描述,公共密钥1 332可被撤销,公共密钥2 334可被激活,而公共密钥336和338可保持非活跃。通过这种方式,每一密钥(例如,活跃、经撤销、非活跃)的状态由每一OTP块存储。在此实例中,如先前已描述,可设定设定成一的撤销密钥命令向量502,其中公共密钥1 332被撤销,这可经由线530看见。在此实例中,与先前使用的预存储公共密钥1 332相关联的硬件保险丝熔断。在此实例中,先前使用的预存储公共密钥1 332决不可再次使用。此可基于正经由设定成一的激活密钥命令向量504激活新预存储公共密钥2 334,在此情况下,将利用公共密钥2 334来重启计算装置
100上的应用(参看线520)。因此,在一个实例中,公共密钥可经由激活密钥命令向量504激活且经由撤销密钥命令向量502撤销。此外,在经撤销密钥的情况下,硬件保险丝可熔断使得先前使用的预存储密钥决不可再次利用。应了解,先前实例利用四个公共密钥330(例如,公共密钥1 332;公共密钥2 334;公共密钥3 336;公共密钥4 338)的信任根作为实例实施方案。然而,应了解,可利用任何合适数目的密钥连同对应的激活密钥命令和撤销密钥命令。正利用的公共密钥1和公共密钥2的实例仅为实例。还可利用公共密钥3、4等。此外,可根据先前描述的过程利用任何合适数目的可用公共密钥。因此,OTP块(有时被称作eFuse)可用于以非可修改方式存储公共密钥或其摘要。应了解,如果密钥在产生时已知且固定,那么替代的存储方式可以是利用ROM。应了解,可利用任何合适类型的“存储装置”。
[0036] 另外参看图6,将在下文中论述用以实施先前描述的实施例的方法过程600。在框602处,计算装置100从服务器200接收激活密钥命令。在框604处,计算装置100从服务器200接收与存储在计算装置100上的多个预存储密钥中的一个相关联的签名证书。在框606处,计算装置100实施激活密钥命令。确切地说,在框608处,计算装置100以预存储公共密钥和新签名证书重启应用。接下来,在决策框610处,计算装置100确定重启是否成功。如果重启成功,那么计算装置100撤销先前使用的预存储公共密钥且存储新签名证书,并以新签名证书和预存储公共密钥实施进一步重启(框614)。另一方面,如果重启不成功,那么计算装置
100经配置以恢复以先前使用的预存储公共密钥和对应的先前使用的签名证书操作(框
612)。
[0037] 应了解,先前描述的本发明的方面可结合由装置(例如,计算装置100)的处理器(例如,处理器110)执行指令而实施,如先前描述。确切地说,装置的电路,包含但不限于处理器,可在程序、例程或执行根据本发明的实施例的方法或过程(例如,图2-6的过程和功能)的指令的执行的控制下操作。举例来说,此程序可在固件或软件(例如存储于存储器和/或其它位置中)中实施,且可由处理器和/或装置的其它电路实施。此外,应了解,术语处理器、微处理器、电路、控制器等是指能够执行逻辑、命令、指令、软件、固件、功能性等的任何类型的逻辑或电路。
[0038] 应了解,当装置为是无线装置时,其可经由通过无线网络的一或多个无线通信链路通信,所述无线通信链路基于或以其它方式支持任何合适的无线通信技术。例如,在一些方面中,无线装置及其它装置可以与包含无线网络的网络相关联。在一些方面中,网络可包括人体局域网络或个人局域网络(例如,超宽带网络)。在一些方面中,网络可包括局域网或广域网。无线装置可支持或以其它方式使用多种无线通信技术、协议或标准中的一或多个,例如,3G、LTE、先进LTE、4G、5G、CDMA、TDMA、OFDM、OFDMA、WiMAX及WiFi。类似地,无线装置可支持或以其它方式使用各种对应的调制或多路复用方案中的一或多种。无线装置可因此包含适当组件(例如,空中接口)以经由一或多个无线通信链路使用以上或其它无线通信技术建立和通信。举例来说,装置可包括具有相关联的发射器和接收器组件(例如,发射器与接收器)的无线收发器,所述无线收发器可包含有助于通过无线媒体的通信的各种组件(例如,信号产生器和信号处理器)。众所周知,无线装置因此可无线地与其它移动装置、蜂窝式电话、其它有线和无线计算机、因特网网站等通信。
[0039] 本文中的教示可并入到多种设备(例如,装置)中(例如,在其内实施或由其执行)。举例来说,本文教示的一或多个方面可并入到电话(例如,蜂窝式电话)、个人数据助理(“PDA”)、平板计算机、可穿戴式装置、物联网(IoT)装置、移动计算机、膝上型计算机、娱乐装置(例如,音乐或视频装置)、头戴装置(例如,头戴受话器、耳机等)、医疗装置(例如,生物计量传感器、心率监视器、计步器、EKG装置等)、用户I/O装置、计算机、有线计算机、固定计算机、台式计算机、服务器、销售点装置、机顶盒或任何其它类型的计算装置中。这些装置可具有不同的功率和数据要求。
[0040] 在一些方面中,无线装置可包括用于通信系统的接入装置(例如,Wi-Fi接入点)。此接入装置可提供例如经由有线或无线通信链路到另一网络(例如,广域网,例如因特网或蜂窝式网络)的连接性。相应地,接入装置可使另一装置(例如,Wi-Fi站)能够接入另一网络或某一其它功能性。
[0041] 所属领域的技术人员将理解,可以使用多种不同技术和技艺中的任一种来表示信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
[0042] 所属领域的技术人员将进一步了解,结合本文中所揭示的实施例描述的各种说明性逻辑块、模块、电路和算法步骤可被实施为电子硬件、计算机软件、固件或两者的组合。为清晰地说明硬件、固件或软件的此可互换性,上文已大体就其功能性描述了各种说明性组件、块、模块、电路和步骤。此功能性是实施为硬件、固件还是软件取决于特定应用和施加于整个系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但这样的实施决策不应被解释为会引起脱离本发明的范围。
[0043] 结合本文中所揭示的实施例描述的各种说明性逻辑块、模块和电路可以通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、芯片上系统(SoC)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或经设计以执行本文中所描述的功能的其任何组合来实施或执行。通用处理器可以是微处理器或可以是任何类型的处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如DSP与微处理器的组合、多个微处理器的组合、一或多个微处理器结合DSP核心,或任何其它此类配置。
[0044] 结合本文中所揭示的实施例描述的方法或算法的步骤可直接体现在硬件中、固件中、由处理器执行的软件模块中,或其组合中。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息以及将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器和存储媒体可以驻留在ASIC中。ASIC可驻留于用户终端中。在替代方案中,处理器及存储媒体可作为离散组件驻留于用户终端中。
[0045] 在一或多个示范性实施例中,所描述的功能可实施在硬件、软件、固件或其任何组合中。如果以软件实施为计算机程序产品,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体发射。计算机可读媒体包含计算机存储媒体及通信媒体两者,通信媒体包含促进将计算机程序从一处传送到另一处的任何媒体。存储媒体可以是可由计算机存取的任何可用媒体。借助于实例而非限制,此类计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于携载或存储呈指令或数据结构的形式的所需程序代码且可由计算机存取的任何其它媒体。并且,适当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或如红外线、无线电以及微波等无线技术从网站、服务器或其它远程源发射软件,那么同轴电缆、光纤电缆、双绞线、DSL或如红外线、无线电以及微波等无线技术包含于媒体的定义中。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
[0046] 提供对所揭示的实施例的先前描述以使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对这些实施例的各种修改,且在不脱离本发明的精神或范围的情况下,本文所界定的一般原理可应用于其它实施例。因此,本发明并不希望限于本文中所展示的实施例,而是应被赋予与本文中所揭示的原理和新颖特征一致的最广范围。