设备配置和编程数据的确定

申请号 CN201180070634.9 申请日 2011-05-06 公开(公告)号 CN103502991B 公开(公告)日 2016-10-12
申请人 诺基亚技术有限公司; 发明人 J-E·埃克贝里; H·卡加;
摘要 本 发明 涉及一种方法,其包括:确定用于标识设备的配置的公共标识符;确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;以及确定用于将所述设备配置与所述编程数据的被 许可 组合相关联的包括所述公共标识符和所述共同配置证书标识符的 硬件 证书。此外,所述方法还包括:生成对应于被允许提供的所述设备配置的所述硬件证书的专用 包装 ;利用公共密钥对所述硬件证书的专用包装进行加密;以及把带有标识符的所述硬件证书的已加密专用包装存储到所述设备的被动式 存储器 。
权利要求

1.一种信息确定方法,其包括:
确定用于标识设备的配置的公共标识符;
确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;
确定用于将所述设备配置与所述编程数据的被许可组合相关联的包括所述公共标识符和所述共同配置证书标识符的硬件证书;
生成对应于被允许提供的所述设备配置的所述硬件证书的专用包装
利用公共密钥对所述硬件证书的专用包装进行加密;以及
把带有标识符的所述硬件证书的已加密专用包装存储到所述设备的被动式存储器
2.根据权利要求1所述的方法,其还包括:
定义对于以下层级的至少其中之一的标识符:零售商、运营商和
3.根据权利要求1或2所述的方法,其还包括:
利用共同密钥为所述共同配置证书签名。
4.根据权利要求1或2所述的方法,其还包括:
为所述设备定义专用集成电路标识符;以及
确定包括所述专用集成电路标识符的所述硬件证书。
5.根据权利要求1或2所述的方法,其还包括:
利用共同密钥为所述硬件证书签名。
6.根据权利要求1或2所述的方法,其中,所述编程数据是从包括以下各项的组当中选择的:
固件
操作系统软件
配置数据;
应用软件
多媒体内容;以及
驱动。
7.根据权利要求1或2所述的方法,其还包括:
定义用于标识所述设备的静态配置的静态标识符。
8.根据权利要求1或2所述的方法,其还包括:
定义用于标识所述设备的动态配置的动态标识符。
9.根据权利要求8所述的方法,其中,所述设备的动态配置对于固定的时间段是活动的。
10.根据权利要求1或2所述的方法,其还包括:
把带有所述标识符的所述硬件证书的已加密专用包装无线传送到所述设备的被动式存储器。
11.根据权利要求1或2所述的方法,其中,所述设备的被动式存储器包括可以通过无线方式访问并且由外部设备供电的嵌入式射频(RF)存储器标签。
12.一种信息确定方法,其包括:
基于标识符从设备的无线存储器检测硬件证书的已加密专用包装;
利用私有密钥对所述硬件证书的已加密专用包装进行解密;
从所述硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书;
把编程数据和所选硬件证书写入到所述设备的被动式存储器;以及
从所述设备的被动式存储器删除未被选择的硬件证书。
13.根据权利要求12所述的方法,其还包括:
利用共同密钥为所述编程数据签名,所述共同密钥被用于所述设备配置与所述编程数据的所有被许可组合。
14.根据在前权利要求12到13当中的任一条所述的方法,其中,所述编程数据是从包括以下各项的组当中选择的:
固件;
操作系统软件
配置数据;
应用软件;
多媒体内容;以及
驱动。
15.根据权利要求12或13所述的方法,其还包括:
检测用于标识所述设备的静态配置的静态标识符。
16.根据权利要求12或13所述的方法,其还包括:
检测用于标识所述设备的动态配置的动态标识符。
17.根据权利要求16所述的方法,其中,所述设备的动态配置对于固定时间段是活动的。
18.根据权利要求12或13所述的方法,其还包括:
把所述编程数据和所选硬件证书无线传送到所述设备的被动式存储器。
19.根据权利要求12或13所述的方法,其中,所述设备的被动式存储器包括可以通过无线方式访问并且由外部设备供电的嵌入式射频(RF)存储器标签。
20.一种信息确定装置,其包括:
被配置成与设备进行通信的无线短距离通信接口
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成利用所述至少一个处理器使得所述装置至少:
确定用于标识所述设备的配置的公共标识符;
确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;
确定用于将所述设备配置与所述编程数据的被许可组合相关联的包括所述公共标识符和所述共同配置证书标识符的硬件证书;
生成对应于被允许提供的所述设备配置的所述硬件证书的专用包装;
利用公共密钥对所述硬件证书的专用包装进行加密;以及
把带有标识符的所述硬件证书的已加密专用包装存储到所述设备的被动式存储器。
21.一种信息确定装置,其包括:
被配置成与设备进行通信的无线短距离通信接口
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成利用所述至少一个处理器使得所述装置至少:
基于标识符从所述设备的无线存储器检测硬件证书的已加密专用包装;
利用私有密钥对所述硬件证书的已加密专用包装进行解密;
从所述硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书;
把编程数据和所选硬件证书写入到所述设备的被动式存储器;以及
从所述设备的被动式存储器删除未被选择的硬件证书。
22.一种信息确定设备,其包括:
无线短距离通信接口;
至少一个处理器;以及
包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成利用所述至少一个处理器使得所述设备至少:
利用所述无线短距离通信接口把带有标识符的硬件证书的已加密专用包装接收到被动式存储器;
利用所述无线短距离通信接口基于所述标识符从无线存储器传送所述硬件证书的已加密专用包装;
利用所述无线短距离通信接口把编程数据和所选硬件证书接收到所述被动式存储器;
以及
基于所接收到的指示从所述被动式存储器删除未被选择的硬件证书。

说明书全文

设备配置和编程数据的确定

技术领域

[0001] 本发明总体上涉及设备配置和编程数据的确定。本发明特别(而非排他性地)涉及为所述设备的被动式存储器生成编程数据和硬件证书。

背景技术

[0002] 当今设备(例如移动终端等等)的制造需要利用特定信息对存储器组件进行永久性和/或临时性编程。这样的信息例如可以包括固件操作系统、应用软件或多媒体内容。所述多媒体内容例如还可以包括内容集合、绑内容或者由用户选择的内容等等。
[0003] 可以在制造期间把软件下载到设备上,例如通过利用需要将在所述设备上存在的初步刷写(flashing)算法、物理连接以及已连接的电供给的机制来施行刷写。传统上在把所有组件放置到产品中之后在生产线末端处的编程站中施行被下载到产品中的软件。还可以在后来的一些阶段重新编程所述软件。此外还存在这样的解决方案:在把组件放置到印刷电路板(PWB)上之前,在分开的编程站中把软件编程到存储器芯片上。
[0004] 取决于所使用的固件和设备的配置,可以把所述设备提供为若干不同变型(variant)。在某些情况下,所述设备的一种变型可以只在控制该设备的软件类型方面有所不同。
[0005] 在电子设备的情况下,例如所述设备的物理设计可能对于一种产品的所有变型都是相同的,但是其中一些基本控制特征可能以不同方式操作。通常来说,制造商的每一位顾客(其通常是服务提供商、零售商、运营商或)可能需要一种具有不同特征的不同变型。
[0006] 在例如移动设备之类的大规模产品的制造过程中,各种变型的再加工已成为实践中的常见做法。由于不准确的销售预测,大量的一种或更多种变型可能会作为增加的库存而被储存在配送中心。因此可能需要把所产生的一种变型的移动设备快速转变成另一种变型以供另一家服务提供商使用。
[0007] 但是所有这些传统的规程都产生特定缺陷。所述编程步骤只能在制造过程中的预定时间施行,这一点也适用于任何种类的测试/调试。此外,传统的方法需要进行直接的(即有线)连接,从而需要专用的装备,并且会由于建立接触所需的时间而延缓制造周期。此外,在包装好成品之后无法施行适配,例如更新固件等等。
[0008] 在传统上,对于不同变型的编程步骤只有在制造过程中的预定时间才能施行。此外,传统的方法需要进行直接的(即有线)连接,从而需要专用的装备,并且会由于建立接触(contact)所需的时间而延缓制造周期。此外,在包装好成品之后无法施行适配,例如更新固件等等。

发明内容

[0009] 根据本发明的第一示例性方面,提供一种方法,其包括:
[0010] 确定用于标识设备的配置的公共标识符;
[0011] 确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;
[0012] 确定用于将设备配置与编程数据的被许可组合相关联的包括公共标识符和共同配置证书标识符的硬件证书;
[0013] 生成对应于被允许提供的设备配置的硬件证书的专用包装;
[0014] 利用公共密钥对硬件证书的专用包装进行加密;以及
[0015] 把带有标识符的硬件证书的已加密专用包装存储到设备的被动式存储器。
[0016] 所述方法还可以包括定义对应于以下层级的至少其中之一的标识符:零售商、运营商和云。可以利用一个共同密钥为共同配置证书签名。可以为设备定义专用集成电路标识符,并且可以确定包括专用集成电路标识符的硬件证书。此外,可以利用一个共同密钥为硬件证书签名。
[0017] 所述编程数据可以从包括以下各项的一组当中选择:
[0018] 固件;
[0019] 操作系统软件
[0020] 配置数据;
[0021] 应用软件
[0022] 多媒体内容;以及
[0023] 驱动。
[0024] 所述方法还可以包括定义用于标识设备的静态配置的静态标识符,以及定义用于标识设备的动态配置的动态标识符。设备的动态配置可以对于一个固定时间段是活动的。可以通过无线方式把带有所述标识符的硬件证书的已加密专用包装传送到设备的被动式存储器。设备的被动式存储器可以包括可以通过无线方式访问并且由外部设备供电的嵌入式射频(RF)存储器标签。
[0025] 根据本发明的第二示例性方面,提供一种方法,其包括:
[0026] 基于标识符从设备的无线存储器检测硬件证书的已加密专用包装;
[0027] 利用私有密钥对硬件证书的已加密专用包装进行解密;
[0028] 从硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书;
[0029] 把编程数据和所选硬件证书写入到设备的被动式存储器;以及
[0030] 从设备的被动式存储器删除未被选择的硬件证书。
[0031] 所述方法还可以包括利用一个共同密钥为编程数据签名,所述共同密钥被用于设备配置与编程数据的所有被许可组合。所述编程数据可以从包括以下各项的一组当中选择:
[0032] 固件;
[0033] 操作系统软件;
[0034] 配置数据;
[0035] 应用软件;
[0036] 多媒体内容;以及
[0037] 驱动。
[0038] 可以检测用于标识设备的静态配置的静态标识符,并且可以检测用于标识设备的动态配置的动态标识符。设备的动态配置可以对于一个固定时间段是活动的。
[0039] 所述方法还可以包括通过无线方式把编程数据和所选硬件证书传送到设备的被动式存储器。此外,设备的被动式存储器可以包括可以通过无线方式访问并且由外部设备供电的嵌入式射频(RF)存储器标签。
[0040] 根据本发明的第三示例性方面,提供一种装置,其包括:
[0041] 至少一个处理器;以及
[0042] 包括计算机程序代码的至少一个存储器,所述至少一个存储器和计算机程序代码被配置成利用所述至少一个处理器使得所述装置至少施行以下步骤:
[0043] 确定用于标识设备的配置的公共标识符;
[0044] 确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;
[0045] 确定用于将设备配置与编程数据的被许可组合相关联的包括公共标识符和共同配置证书标识符的硬件证书;
[0046] 生成对应于被允许提供的设备配置的硬件证书的专用包装;
[0047] 利用公共密钥对硬件证书的专用包装进行加密;以及
[0048] 把带有标识符的硬件证书的已加密专用包装存储到设备的被动式存储器。
[0049] 根据本发明的第四示例性方面,提供一种装置,其包括:
[0050] 至少一个处理器;以及
[0051] 包括计算机程序代码的至少一个存储器,所述至少一个存储器和计算机程序代码被配置成利用所述至少一个处理器使得所述装置至少施行以下步骤:
[0052] 基于标识符从设备的无线存储器检测硬件证书的已加密专用包装;
[0053] 利用私有密钥对硬件证书的已加密专用包装进行解密;
[0054] 从硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书;
[0055] 把编程数据和所选硬件证书写入到设备的被动式存储器;以及
[0056] 从设备的被动式存储器删除未被选择的硬件证书。
[0057] 根据本发明的第五示例性方面,提供一种设备,其包括:
[0058] 至少一个处理器;以及
[0059] 包括计算机程序代码的至少一个存储器,所述至少一个存储器和计算机程序代码被配置成利用所述至少一个处理器使得所述设备至少施行以下步骤:
[0060] 利用无线短距离通信接口把带有标识符的硬件证书的已加密专用包装接收到被动式存储器;
[0061] 利用无线短距离通信接口基于所述标识符从无线存储器传送硬件证书的已加密专用包装;
[0062] 利用无线短距离通信接口把编程数据和所选硬件证书接收到被动式存储器;以及[0063] 基于所接收到的指示从被动式存储器删除未被选择的硬件证书。
[0064] 根据本发明的第六示例性方面,提供一种具体实现在计算机可读介质上的包括计算机可执行程序代码的计算机程序,当由装置的至少一个处理器执行时,所述计算机可执行程序代码使得所述装置施行以下步骤:
[0065] 确定用于标识设备的配置的公共标识符;
[0066] 确定用于验证编程数据的包括共同配置证书标识符的共同配置证书;
[0067] 确定用于将设备配置与编程数据的被许可组合相关联的包括公共标识符和共同配置证书标识符的硬件证书;
[0068] 生成对应于被允许提供的设备配置的硬件证书的专用包装;
[0069] 利用公共密钥对硬件证书的专用包装进行加密;以及
[0070] 把带有标识符的硬件证书的已加密专用包装存储到设备的被动式存储器。
[0071] 根据本发明的第七示例性方面,提供一种具体实现在计算机可读介质上的包括计算机可执行程序代码的计算机程序,当由装置的至少一个处理器执行时,所述计算机可执行程序代码使得所述装置施行以下步骤:
[0072] 基于标识符从设备的无线存储器检测硬件证书的已加密专用包装;
[0073] 利用私有密钥对硬件证书的已加密专用包装进行解密;
[0074] 从硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书;
[0075] 把编程数据和所选硬件证书写入到设备的被动式存储器;以及
[0076] 从设备的被动式存储器删除未被选择的硬件证书。
[0077] 任何前述存储器介质可以包括数字数据存储装置,比如数据盘或软盘、光学存储装置、磁性存储装置、全息存储装置、光-磁存储装置、相变存储器、电阻随机存取存储器、磁性随机存取存储器、固体电解质存储器、电性随机存取存储器、有机存储器聚合物存储器。所述存储器介质可以被形成到除了容纳存储器之外不具有其他重要功能的设备中,或者可以被形成为具有其他功能的设备的一部分,其中包括(但不限于)计算机的存储器、芯片组以及电子设备的子套件。
[0078] 前面示出了本发明的不同的非限定性、示例性方面和实施例。前面的实施例仅仅是被用来解释可以在本发明的实现方式中利用的所选方面或步骤。一些实施例可能仅仅是参照本发明的特定示例性方面给出的。应当认识到,相应的实施例也可以适用于其他示例性方面。附图说明
[0079] 下面将参照附图仅以举例的方式来描述本发明,其中:
[0080] 图1示出了系统架构的一些细节;
[0081] 图2示出了包括根据本发明的各个示例性实施例的安全性证书的关系图;
[0082] 图3示出了对应于根据本发明的一个示例性实施例的专用硬件证书包装产生机制的结构;
[0083] 图4示出了根据本发明的一个示例性实施例确定硬件证书和编程数据的一些细节;
[0084] 图5给出了可以在其中应用本发明的各个实施例的设备和外部读取器/写入器装置的示例性方框图
[0085] 图6示出了对应于读取器/写入器装置和设备的嵌入式射频(RF)存储器标签的一个示例性实施例;
[0086] 图7示出了根据本发明的一个示例性实施例的操作的流程图;以及
[0087] 图8示出了根据本发明的一个示例性实施例的操作的另一幅流程图。

具体实施方式

[0088] 在后面的描述中,相同的附图标记指代相同的元件。
[0089] 图1示出了根据本发明的一个示例性实施例的系统架构100的一些细节。制造商110例如为零售商130-150或运营商160-180制造设备,比如用户装备120。用户装备120例如可以包括移动电话、膝上型计算机、个人数字助理或互联网平板。
[0090] 根据本发明的一个示例性实施例,提供对于用户装备硬件的后期个性化进入其变型。这样的变型可以针对特定运营商或设备型号。在理想情况下,变型的发行可以尽可能延后进行,甚至迟至运营商160-180的仓库,或者在零售商130-150的销售办公室进行。这样的发行可以提供制造变型方面的灵活性,而且还使得有可能向用户装备提供更新的软件版本,甚至测试软件版本。
[0091] 用户装备120可以在未初始化的情况下从制造商110被装运到零售商130-150和运营商160-180。零售商130-150和运营商160-180的仓库可以位于世界各地。在未初始化状态下,甚至可以交换或转售用户装备120。从而可以在各个仓库之间转运用户装备120,以便平衡供需变化。只有在用户装备设备120被纳入使用时,可以向所述设备提供固件变型。甚至可以在设备断电时将固件变型镜像写入到设备存储器,甚至可能穿过销售包装直接写入。可以利用短距离无线技术来利用这样的固件刷写,比如射频(RF)存储器标签系统。通过在无需为设备供电的情况下进行固件刷写可以节省处理成本。此外,这样的方法可以使得制造商110免于向零售商130-150和运营商160-180装运标记站(即刷写装置),所述标记站将允许像在制造商110工厂刷写用户装备120那样进行固件提供。
[0092] 此外,如果把用户装备120从一家运营商160改变165到另一家运营商170,可以把运营商的变型安全地重刷到固件。例如如果利用适当的零售商标识或运营商标识把用户装备从一个运营商域递送到另一个运营商域,则这样的重刷是可能的。此外,如果允许用户装备120独立于零售商,则例如可以替换地有利用云标识针对基于云的镜像所使用的相同机制。
[0093] 这里所使用的术语“软件版本”可以是指整个软件应用的一个版本,或者仅仅是软件应用的一部分或一个组件。这里所使用的术语“证书”可以是指能够利用任何已知的方案(例如私有/公共密钥方案)对其进行签名的任何已签名数据
[0094] 图2示出了包括根据本发明的各个示例性实施例的安全性证书的关系图。在这方面,在一种用于管理软件版本的方案中可以包括硬件证书205和共同配置证书225(其通常被称作安全性证书)。在一些示例性实施例中,硬件证书205和共同配置证书225的实现方式允许更新或升级软件版本。此外,在一些示例性实施例中,硬件证书205和共同配置证书225的实现方式还防止改变到早前的或者不合期望的软件版本。
[0095] 采用硬件证书205和共同配置证书225的示例性实施例提供了设备的唯一公共标识符与特定软件版本之间的安全联系,以便确保由所述设备利用适当的软件版本。在这方面,硬件证书205可以与设备更加紧密地关联,并且共同配置证书225可以与软件版本更加紧密地关联。硬件证书205与共同配置证书225之间的关系可以被安全地认证,并且可以促进设备上的软件更新并且同时还提供安全性特征。
[0096] 一般来说,根据一些示例性实施例,在把已更新软件版本引入到设备上时,可以在该设备上更新共同配置证书225。硬件证书205的标准可以被用来验证共同配置证书225是适当的,从而验证软件版本对于设备是适当的。在确定适当的软件版本被安装在设备上之后,可以许可由该设备执行所述软件。在这方面,软件版本对于设备可能是适当的原因不仅在于所述软件是已更新版本,而且还在于所述软件版本对于该设备的特定配置(例如设备变型)是适当的。
[0097] 在这方面,可以通过设备的唯一公共标识符来标识设备的特定配置。举例来说,可以在存储设备的配置信息的数据库中查询所述公共标识符。但是硬件证书205和共同配置证书225的实现方式可以促进更新软件,从而使得不需要对于每一次新软件安装都验证设备的公共标识符。相反,通过利用比设备的唯一公共标识符更为通用的标准,硬件证书205与共同配置证书225之间的示例性认证处理可以提供对于软件版本的更新,并且不存在每一次在设备上安装新软件版本时都涉及所述唯一公共标识符的复杂性。通过这种方式,在安装新软件版本时可以简化设备的制造,这是因为不需要经由所述唯一公共标识符来验证每一次安装。
[0098] 再次参照图2,公共标识符200可以是驻留在能够执行软件应用的硬件装置上的硬编码的或者不可修改的数值。公共标识符200可以被存储在例如只读存储器装置之类的集成电路上。在一些示例性实施例中,可以利用私有密钥对公共标识符200进行签名和/或将公共标识符200与私有密钥相关联。此外,公共标识符200对于特定的相关联的设备可以是唯一的。这样,公共标识符200可以被用来标识设备或设备变型的特定配置。
[0099] 软件应用245可以是用于由与公共标识符200相关联的设备执行的任何软件应用。在一些示例性实施例中,软件应用245可以是用于设备的操作系统。软件应用245可以具有和/或包括软件版本250,其可以是一个数字、日期、大小(例如以千字节计的大小等等)或其组合等等。可以利用私有密钥对软件版本250进行签名和/或把软件版本250与私有密钥相关联,以便促进对于软件应用245的安全认证。硬件证书205对于硬件设备(例如计算机、移动终端等等)可以是唯一的,并且可以被存储在设备的存储器中。硬件证书205可以与以下各项相关联或者包括以下各项:公共标识符210,共同配置证书标识符215,以及共同配置证书版本标准220。
[0100] 根据本发明的一个示例性实施例,共同配置证书225可以与内容260相关联。内容260可以是将由与公共标识符200相关联的设备使用的任何内容。在一些示例性实施例中,内容260可以是用于设备的多媒体内容。内容260可以具有和/或包括内容标识符265,其可以是一个数字、日期、大小(例如以千字节计的大小等等)或其组合等等。可以利用私有密钥对内容标识符265进行签名和/或把内容标识符265与私有密钥相关联,以便促进对于内容
260的安全认证。
[0101] 内容标识符265可以是被用来确定内容260是否具有对应于共同配置证书225的适当版本的标准。内容标识符265可以贡献附加的一层安全性,以便确保共同配置证书225不会被与不适当的内容标识符相结合地使用。这样,通过使用内容标识符265,可以检测到不适当的内容并且可以阻止执行所述内容。在一些示例性实施例中,内容标识符265可以包括对应于内容260的阈值版本数值。可以利用私有密钥对内容标识符265进行签名和/或把内容标识符265与私有密钥相关联,以便促进安全认证。
[0102] 硬件证书205的公共标识符210可以与设备的公共标识符200匹配。硬件证书205的公共标识符210与设备的公共标识符200之间的关系可以被用来认证硬件证书205。在一些示例性实施例中,可以利用私有密钥对公共标识符210进行签名和/或把公共标识符210与私有密钥相关联,以便促进对于硬件证书205的安全认证。如果无法通过公共标识符210认证硬件证书,则可以防止在设备上执行软件。
[0103] 共同配置证书标识符215可以是能够被用于认证共同配置证书225的一个数值。如果无法通过共同配置证书标识符215认证共同配置证书225,则可以阻止执行与该共同配置证书相关联的软件。可以利用私有密钥对共同配置证书标识符215进行签名和/或把共同配置证书标识符215与私有密钥相关联,以便促进对于共同配置证书225的安全认证。共同配置证书版本标准220可以是被用来确定共同配置证书225是否具有适当版本的标准。在这方面,共同配置证书版本标准220可以被配置成使得所述标准可以确定共同配置证书225是否与具有适当版本的软件或内容相关联以及是否被配置成对应于适当的设备变型。所谓适当的版本例如可以是最新的软件应用版本,在零售商处设定的捆绑选择内容,应用/内容的受限制版本,或者试用版本。通过使用共同配置证书版本标准220,可以检测到不适当的共同配置证书,并且可以阻止执行与不适当的共同配置证书相关联的软件。在一些示例性实施例中,共同配置证书版本标准220可以包括对应于共同配置证书225的阈值版本数值。在这方面,其版本数值高于或等于所述阈值版本数值的共同配置证书可以满足共同配置证书版本标准220的至少一个方面。可以利用私有密钥对共同配置证书版本标准220进行签名和/或把共同配置证书版本标准220与私有密钥相关联,以便促进在应用所述标准之前的安全认证。共同配置证书225可以与软件应用245相关联。在一些示例性实施例中,共同配置证书可以在特定软件应用的所有安装之间都是共同的。共同配置证书225可以被存储在设备的存储器中。共同配置证书225可以包括共同配置证书标识符230、共同配置证书版本235、内容标识标准255和软件版本标准240。
[0104] 共同配置证书标识符230可以是能够被用于利用硬件证书205来认证共同配置证书225的一个数值。在这方面,在一些示例性实施例中,如果硬件证书的共同配置证书标识符215与共同配置证书225的共同配置证书标识符230匹配,则共同配置证书225可以被认证。如果无法通过共同配置证书标识符230认证共同配置证书,则可以阻止执行与该共同配置证书相关联的软件。与共同配置证书标识符215类似,可以利用私有密钥对共同配置证书标识符230进行签名和/或把共同配置证书标识符230与私有密钥相关联,以便促进对于共同配置证书225的安全认证。
[0105] 如前所述,共同配置证书版本235可以被应用于硬件证书205的共同配置证书版本标准220,以便确定共同配置证书版本235是否满足共同配置证书版本标准220。如果共同配置证书版本无法满足共同配置证书版本标准220,则可以导致阻止执行与共同配置证书相关联的软件。与共同配置证书版本标准220类似,可以利用私有密钥对共同配置证书版本235进行签名和/或把共同配置证书版本235与私有密钥相关联,以便促进对于共同配置证书版本235的安全认证。共同配置证书225可以属于特定共同配置证书平台。此外,利用本发明的实施例从而允许平台管理功能。
[0106] 软件版本标准240可以是被用来确定软件版本250是否是对应于共同配置证书225的适当版本的标准。软件版本标准240可以贡献附加的一层安全性,以便确保共同配置证书225不会被与不适当的软件版本相结合地使用。这样,通过使用软件版本标准240,可以检测到不适当的软件应用并且可以阻止执行所述软件应用。在一些示例性实施例中,软件版本标准240可以包括对应于软件版本250的阈值版本数值。在这方面,其版本数值高于或等于所述阈值版本数值的软件应用可以满足软件版本标准240。可以利用私有密钥对软件版本标准240进行签名和/或把软件版本标准240与私有密钥相关联,以便促进在把所述标准应用于软件版本250之前的安全认证。
[0107] 根据本发明的一个示例性实施例,不同的变型可以包括应用变型、服务变型(捆绑或分开)、运营商变型、固件变型、用户变型、操作系统变型、设备层级变型、由用户选择的设备集合变型、基础设施变型以及甚至云变型。
[0108] 变型固件例如可以被理解为图2中的软件应用245。变型版本250被复制到共同配置证书225。在设备设立时检查共同配置证书225和固件镜像245中的身份或版本之间的匹配,并且所述身份或版本必须是相同的。进行这一检查的根本原因是不应当允许用户在购买之后改变所述变型。可以利用属于某种特定类型的所有设备之间的一个共同密钥对共同配置证书225进行签名。共同配置证书225还可以具有自身的共同配置证书标识符230。
[0109] 此外,可以把共同配置证书标识符230复制在硬件证书205中,硬件证书205可以把设备中的各个身份唯一地绑定到公共标识符210。公共标识符210例如可以是唯一的专用集成电路标识符(ASIC id)。硬件证书205可以包含利用整个硬件平台的共同密钥进行签名的共同配置证书标识符230和专用集成电路标识符(ASIC id)210。在引导(boot)设备时可以检查各个身份的匹配。
[0110] 在需要施行出厂后镜像供应(provisioning)的情况下,只要所述变型不会从最初所意图的变型发生改变,就可以进行变型镜像的重刷。这意味着可以施行镜像更新。
[0111] 一般来说,在顾客最终得到设备之前的某一非常晚的阶段决定变型会带来由于硬件证书205的存在而引入的问题。由于硬件证书205可以被绑定到设备的专用集成电路(ASIC)并且通过共同配置证书225还可以绑定变型类型,因此对于设备最终可能具有的任何可能的变型类型都需要这样的证书。
[0112] 一种可能的解决方案可以是在设备中包括对应于该硬件的所有可能变型的硬件证书205。这样可以得到一种可行的解决方案,但是会允许末端用户(或者在工厂与末端顾客之间处置所述设备的任何实体)把所述设备的变型改变到对于该设备硬件可用的任何其他变型。另一种可能的解决方案可以是对于制造商服务器包括主动后端协议,其在被给出设备的公共标识符200时按需生成对应于该设备的相关硬件证书205。这种解决方案需要世界各地的仓库与制造商安全性后端之间的开放通道。此外还需要对于刷写实体的信任,这是因为制造商应当在某种程度上信任公共标识符200。运营商或零售商例如可以具有针对刷写的已授权证书或者已授权刷写装置。
[0113] 根据本发明的一个示例性实施例,提供一种用于对设备供应变型(从而是变型镜像)的安全系统。所述供应可以在后期的某一阶段进行,比如在运营商场址处进行。可以利用变化的确保等级并且利用在写入所期望的变型镜像之后从设备存储器中擦除所有其他硬件证书205的已加密集合的机制来实施所述系统。所述供应可以被利用在设备层级、基础设施层级或云层级,从而安全地区分变型选择。具有零售商标识符、运营商标识符和云标识符的被允许的硬件证书205可以在制造阶段被存储到设备存储器,并且可以在把设备纳入使用时去除未被使用的硬件证书。
[0114] 图3示出了对应于根据本发明的一个示例性实施例的专用硬件证书包装产生设备的结构。根据本发明的一个示例性实施例,可以向制造商的安全性服务器标识运营商和零售商。这样的标识伴随有运营商/零售商公共密钥(PKOx)315并且可能还伴随有概述密钥有效性的伴随证书(未示出)。可以作为证书处理的一部分来商定运营商公共密钥315,但是一种替换方案是由制造商向运营商提供智能卡,并且卡上具有相应的运营商私有密钥(SKOx)325。
[0115] 根据本发明的一个示例性实施例,在制造设备的硬件时(所谓的标记),制造商工厂中的安全性服务器可以对于被允许在所述硬件上运行的所有已知设备变型生成硬件证书301-303。产生对应于对给定运营商/零售商而言被允许供应的各种变型的硬件证书301-303的专用包装310。可以利用对应于目标运营商或目标零售商的公共密钥(PKOx)315对这样的包装310进行加密。其中添加有运营商/零售商标识符的已加密包装被写入到设备的存储器。所述存储器可以是无需在分销商仓库中对所述设备通电就能够访问的被动式存储器。这样的存储器例如可以包括嵌入式射频(RF)存储器标签。可以对于具有该硬件的设备的所有已知的m家分销商(运营商或零售商)重复前述处理。最终,所述设备的被动式存储器可以包括在该被动式存储器中的m个不同的已加密包装。
[0116] 根据本发明的一个示例性实施例,可以从制造商的工厂装运所述设备并且最终到达分销商仓库。甚至可以在各个仓库之间对所述设备进行再配送。当最后将设备销售给末端顾客时,装配有被动式存储器写入器(例如射频(RF)存储器标签写入器)、秘密密钥(SKOx)325和变型镜像331-333的分销商能够把具有适当的硬件证书301-303的所期望的变型镜像331-333写入到所述变型设备的被动式存储器。在一个示例性实施例中,被动式存储器写入器可以首先读取已加密包装320(其被利用分销商标识符标记),并且利用秘密密钥(SKOx)325解密包装320。从已解密的内容当中选择对应于分销商意图写入到所述设备的被动式存储器的变型镜像的硬件证书301-303。镜像331-333、硬件证书301-303并且很有可能还有共同配置证书可以被写入到所述设备的被动式存储器(例如嵌入式射频(RF)存储器标签)。利用这样的所存储的信息,设备可以从被动式存储器引导。或者所述信息的至少一部分可以被存储到设备的其他存储器以便允许引导所述设备。此外,分销商可以在写入所期望的变型镜像331-333之后从被动式存储器擦除所有其他已加密硬件证书包装。从而其他分销商无法在后来重新标记相同的设备。
[0117] 如果秘密密钥(SKOx)325被制造商提供在智能卡上,则出于增强的安全性目的可以把安全审核日志和控制建立到所述智能卡中。智能卡可以返回对应于给定的专用集成电路标识符(ASIC id)或公共标识符的仅仅一份变型的硬件证书301-303。可以把共同配置证书(CCC)绑定到每一个变型镜像,并且可以假定其与该变型镜像相组合。因此,可以把共同配置证书(CCC)作为公共信息对待,并且其或者被预先写入到所述设备或者与变型镜像相伴。
[0118] 根据本发明的一个示例性实施例,硬件证书可以启用静态和动态变型部分。静态变型部分可以包括在制造阶段被存储到设备存储器的所有可能的运营商和零售商变型,并且在后来的某一阶段当把所述变型纳入使用时被选择性地取回。这样的选择可以在被纳入使用之后保持不变。动态变型部分可以基于所选择的静态变型部分在特定时间框架内发生改变。例如零售商可以提供一种测试变型,其在选择了特定静态变型部分时活动一段时间。这样的测试变型可以允许安全地使用特定软件变型变化而不会静态地纳入使用。所选静态变型部分例如可以允许选择特定动态变型集合、定义动态变型的能力以及检查硬件证书包装有效性。
[0119] 图4示出了根据本发明的一个示例性实施例确定硬件证书和编程数据的一些细节。由制造商利用安全地存储在设备的被动式存储器410中的适当变型集合制造新的设备。各种变型可以是基于零售商、基于运营商或者基于云,并且可以基于用户选择把变型纳入使用。
[0120] 所述新设备例如可以包括存储在该设备的被动式存储器410中的硬件证书的几个专用包装411-414。每一个包装411-414例如可以包括对应于运营商或零售商的标识符。基于这样的标识符,运营商或零售商可以辨识出将要使用的适当包装411-414。此外,所述专用包装411-414可以包括对于将要供应的不同设备变型而言对于该分销商(例如运营商/零售商)的被允许的硬件证书。如前所述,可以利用公共密钥PKOx对专用包装411-414进行加密。
[0121] 分销商(例如运营商/零售商)接收所述设备以用于销售给末端用户。取决于用户的选择,决定特定设备变型。分销商可以访问分销商设备的被动式存储器420。被动式存储器410、420例如可以包括嵌入式射频(RF)存储器标签。为了访问这样的存储器410、420,分销商可以使用射频写入器(RF写入器)。可以利用适当的秘密密钥SKOx读取并解密利用适当的分销商标识符标记的已加密包装421-424。基于所期望的设备变型,还选择包括对应于末端用户的所期望的设备配置和特征的编程数据425。编程数据425被存储到设备的被动式存储器420。通常来说,在该实施例中,编程数据可以是设备的固件,但是可以按照类似的机制实施任何软件。除了把固件写入到被动式存储器420之外,还可以把已解密的适当的硬件证书(HWC1)426以及适当的共同配置证书(CCC)427写入到被动式存储器420。例如对于“零售商2”的情况,“零售商2”的所期望的固件425与已解密硬件证书HWC1(其与来自包装424的固件425匹配)和共同配置证书(CCC)427一起存储到被动式存储器420。
[0122] 根据本发明的一个示例性实施例,可以在供应所期望的变型之后删除未被使用的已加密包装421-424。此外,甚至可以在把固件425、硬件证书426和共同配置证书427写入到设备的被动式存储器420之后删除所选择的已加密包装424。
[0123] 如果设备销售包装没有在“零售商2”处被纳入使用,则例如可以允许在“零售商1”处将所述包装纳入使用,而无需首先将其递送回到制造商处。全部两家零售商都被允许销售所述设备,因此全部两个零售商标识符都可以被存储在新设备的被动式存储器410中。
[0124] 图5给出了可以在其中应用本发明的各个实施例的设备500和外部读取器/写入器装置580的示例性方框图。设备500可以是用户装备(UE)、用户装置或设备,比如移动终端或其他通信装置。读取器/写入器装置580可以是由设备制造商、零售商或运营商使用的装置。
[0125] 设备500的一般结构包括通信接口模块550、耦合到通信接口模块550的处理器510、耦合到处理器510的被动式存储器540和存储器520。所述设备还包括软件530,其被存储在存储器520中并且适于被加载到处理器510中并在其中执行。软件530可以包括一个或更多软件模块,并且可以具有计算机程序产品的形式。设备500还包括耦合到处理器510的用户接口控制器560。
[0126] 通信接口模块550实施结合本发明的各个实施例讨论的用户数据无线电的至少一部分。通信接口模块550例如可以是无线电接口模块,比如WLAN、Bluetooth、GSM/GPRS、CDMA、WCDMA或LTE(长期演进)无线电模块。通信接口模块550可以被集成到设备500中,或者被集成到可以插入到设备500的适当插槽或端口中的适配器、卡等等当中。通信接口模块550可以支持一种无线电接口技术或多种技术。图5示出了一个通信接口模块550,但是设备
500可以包括多个通信接口模块550。
[0127] 处理器510例如可以是中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、图形处理单元等等。图5示出了一个处理器510,但是设备500可以包括多个处理器。
[0128] 存储器520例如可以是非易失性或易失性存储器,比如只读存储器(ROM)、可编程只读存储器(PROM)、可擦写可编程只读存储器(EPROM)、随机存取存储器(RAM)、闪存、数据盘、光学存储装置、磁性存储装置、智能卡等等。设备500可以包括多个存储器。存储器520可以被构造成设备500的一部分,或者其可以被用户插入到设备500的插槽、端口等等当中。存储器520可以仅用来存储数据,或者其可以被构造成用于其他目的(比如处理数据)的设备的一部分。
[0129] 可以包括通用集成电路卡(UICC)570以作为用在设备500中的智能卡。通用集成电路卡(UICC)570确保特定个人数据的完整性和安全性。通用集成电路卡(UICC)570可以包含其唯一序列号、国际唯一移动用户编号(IMSI)、安全性认证和密码信息、与本地网络有关的临时信息、用户可以使用的服务列表以及口令(用于通常使用的PIN和用于解的PUK)。通用集成电路卡(UICC)570还可以包括几项应用,从而使得相同的智能卡有可能给出对于不同网络的访问,并且提供对于电话簿和其他应用的存储。所述系统可以利用嵌入式安全性模块进行密钥存储和处理。
[0130] 用户接口控制器560可以包括用于例如通过键盘、在设备500的显示器上示出的图形用户接口、语音识别电路或者例如头戴式机之类的附件接收来自设备500的用户的输入并且用于例如通过图形用户接口或扬声器向用户提供输出的电路。
[0131] 被动式存储器540可以包括嵌入式射频(RF)存储器标签。射频(RF)存储器标签系统可以在读取器/写入器装置与包含较大存储器(例如一个或更多千兆比特)的射频(RF)标签之间提供10-100Mbit/s下的高数据速率通信,其操作在非常高数据速率的通信信道上(例如7.9GHz下的脉冲无线电超宽带(UWB))。这里所公开的示例性实施例可以在射频(RF)存储器标签系统的基础上来设计。射频(RF)存储器标签系统可以是基于近场通信。所述示例性实施例利用射频(RF)存储器标签的存储器资源作为非易失性存储器块,以便为例如分销商装置之类的读取器/写入器装置580提供原地执行能力,从而利用射频(RF)存储器标签增强所述设备的变型供应。
[0132] 本领域技术人员将认识到,除了图5中所示的元件之外,设备500还可以包括其他元件,比如麦克、显示器以及附加的电路,例如输入/输出(I/O)电路、存储器芯片、专用集成电路(ASIC)、用于特定目的的处理电路(比如源编码/解码电路、信道编码/解码电路、加密/解密电路)等等。此外,设备500还可以包括用于在外部电力供给装置的外部电力不可用时为设备500供电的一次性或可再充电电池(未示出)。
[0133] 图6示出了对于设备的读取器/写入器装置600和嵌入式射频(RF)存储器标签650的一个示例性实施例。读取器/写入器装置600可以向存储器模块650传送射频电力和数据,并且存储器模块650可以向读取器/写入器装置600传送数据。
[0134] 存储器模块650可以包括用于存储与所述供应有关的数据,比如共同配置证书、固件以及包含硬件证书的专用已加密包装。存储器模块650还可以包括射频电力收发器680、高比特率RF数据收发器690和处理器670。射频电力收发器680例如能够通过超高频带或近场通信(NFC)接收电力。高比特率RF数据收发器690可以允许通过短距离无线链路与装置600进行通信。可能需要处理器670来控制存储器模块650中的总体功能和处理。由于电力收发器680,可能完全不需要由存储器模块650位于其中的设备来为该存储器模块供电。
[0135] 装置600可以包括高比特率RF数据收发器690,其向读取器/写入器装置600传送所存储的专用包装和分销商标识符,以便在装置600中进行存储和处理。图6的示例性读取器/写入器装置600还可以包括电力收发器630,其向存储器模块650和高比特率射频(RF)数据收发器640传送射频(RF)电力以用于通信。此外,可以向存储器模块650传送连续波时钟信号。射频电力收发器630例如能够通过超高频(UHF)带或近场通信(NFC)传送电力。图6的示例性读取器/写入器装置600中的存储器610可以包括操作系统程序。所述操作系统可以读取/写入从正与读取器/写入器装置600通信的存储器模块650传送/接收的存储器660的数据。
[0136] 根据本发明的一个示例性实施例,装置600、650的其中之一可以充当嵌入式射频(RF)存储器标签而没有作为主动或被动式存储器标签的处理器支持。装置600、650也可以充当具有处理器支持的对等装置。
[0137] 读取器/写入器装置600可以包括UHF RF模块,其连接到第一RF天线以便在900MHz载波上向存储器模块650传送RF电力和时钟脉冲,用于存储器模块650的电路的供电和定时。读取器/写入器装置600可以包括高比特率RF模块630,其连接到第二RF天线以便通过脉冲无线电超宽带(UWB)链路与存储器模块650交换数据。读取器/写入器装置600可以包括处理器620以便控制读取器/写入器装置600中的各个组件,并且执行已编程指令以便实施读取器/写入器装置600的各项功能。
[0138] 存储器模块650可以包括UHF RF模块680,其连接到第一RF天线以便在900MHz载波上从读取器/写入器装置600接收RF电力和时钟脉冲,以用于存储器模块650的电路的供电和定时。存储器模块650可以包括高比特率RF模块,其连接到第二RF天线以便通过脉冲无线电超宽带(UWB)链路与读取器/写入器装置600交换数据。存储器模块650可以包括处理器670以便控制标签存储器模块650中的其他组件,并且执行已编程指令以便实施存储器模块
650的各项功能。
[0139] 图7示出了根据本发明的一个示例性实施例的操作的流程图。在步骤700中,所述方法开始。在步骤710中,确定用于标识设备的配置的公共标识符。在步骤720中,确定用于验证编程数据的包括共同配置证书标识符的共同配置证书。在步骤730中,确定用于将设备配置与编程数据的被许可组合相关联的包括公共标识符和共同配置证书标识符的硬件证书。在步骤740中,生成对应于被允许提供的设备配置的硬件证书的专用包装。在步骤750中利用公共密钥对硬件证书的专用包装进行加密,并且在步骤760中把带有标识符的硬件证书的已加密专用包装存储到设备的被动式存储器。所述方法结束于步骤770.
[0140] 图8示出了根据本发明的一个示例性实施例的操作的另一幅流程图。在步骤800中,所述方法开始。在步骤810中,基于标识符从设备的无线存储器检测硬件证书的已加密专用包装。在步骤820中,利用私有密钥对硬件证书的已加密专用包装进行解密。在步骤830中,从硬件证书的已解密专用包装选择对应于所期望的设备配置的硬件证书。在步骤840中把编程数据和所选硬件证书写入到设备的被动式存储器,并且在步骤850中从设备的被动式存储器删除未被选择的硬件证书。所述方法结束于步骤860。
[0141] 前面给出了各个实施例。应当认识到,在本文献中,所包括、包含的措辞分别被用做开放性表达方式而不意图是排他性的。
[0142] 前面的描述以本发明的具体实现方式和实施例的非限制性实例的方式提供了对于发明人当前所设想到的用于实施本发明的最佳模式的完整而丰富的描述。但是本领域技术人员将认识到,本发明不受限于前面给出的实施例的细节,相反在不背离本发明的特性的情况下可以被实施在利用等效措施的其他实施例中或者被实施在不同的实施例组合中。
[0143] 此外,前面所公开的本发明的一些特征可以在不相应地使用其他特征的情况下被用来获益。因此,前面的描述应当被认为仅仅说明本发明的原理而不对其进行限制。因此,本发明的范围仅由所附专利权利要求书限制。
QQ群二维码
意见反馈