用于提供可重置的标识符的配置装置和配置方法与流程

文档序号:24398275发布日期:2021-03-26 23:35阅读:94来源:国知局
用于提供可重置的标识符的配置装置和配置方法与流程

1.本发明涉及集成电路领域,更具体而言,涉及一种配置装置、处理器、电子装置、系统、片上系统以及配置方法。


背景技术:

2.如今,各种功能的电子设备为人们的日常生活生活带来了极大的便利,但同时也带来了潜在的安全威胁。
3.例如,在物联网(internet of things,iot)技术中,为了管理物联网中的电子设备,需要对每个电子设备分别设置用于鉴别身份的唯一标识符,并基于这个唯一标识符派生出这个电子设备的私钥、证书或加密密钥等用于密码安全场景中的密码信息。然而,这个唯一标识符很容易被窃取,从而整个电子设备的各种密码信息能够被破解,使得存储在该电子设备中的用户信息被泄露。
4.为了提高电子设备的安全性,制造厂商通常利用特定硬件的物理特性产生特性信息,并根据这一特性信息配置芯片的唯一标识符,以保证应用不同芯片的电子设备具有不同的唯一标识符。例如,基于puf(physical unclone function,物理不可克隆功能)技术,可以利用晶圆在制造过程中自然发生变化的物理特性生成包含特性信息的唯一标识符。
5.然而,上述技术至少存在以下缺点:puf技术对晶圆厂商的制造工艺有很高的要求,工艺复杂、技术实施难度较大、成本较高;在很多情况下,特定硬件的物理特性会随着使用时间的增加和使用环境的变化而受到影响,这将使得芯片的唯一标识符发生变化,导致由该唯一标识符派生出的各种密码信息全部发生变化,从而合法的用户数据在操作过程中会出现错误、失效的情况,用户将面临数据安全方面的风险;芯片制造厂商负责在芯片的制造过程中导入唯一标识符,因此也需要在用户的使用过程中负责解决唯一标识符随环境、时间发生变化而产生的问题,这给用户和制造厂商都带来了麻烦;在芯片制造过程结束后,基于puf技术产生的唯一标识符将被特定硬件的物理特性锁定而无法被用户重新配置,不能满足某些应用场景的需求。


技术实现要素:

6.有鉴于此,本发明实施例提供一种配置装置、处理器、电子装置、系统、片上系统以及配置方法,以解决以上问题。
7.为了达到这个目的,第一方面,本发明提供一种配置装置,包括:处理单元,用于获得响应于用户操作的标识符配置请求,并用于根据所述标识符配置请求提供启动信号;真随机数发生模块,用于在所述启动信号的触发下生成随机信息;以及指定存储区,存储用于鉴别所述配置装置的标识符,其中,所述处理单元将所述随机信息或所述随机信息的数据处理结果作为所述标识符写入所述指定存储区。
8.在一些实施例中,所述指定存储区与所述配置装置之外的环境安全隔离。
9.在一些实施例中,所述指定存储区为非易失性随机访问存储模块中的至少一个分
区。
10.在一些实施例中,所述配置装置还包括响应于用户操作的接口,所述处理单元经接口获得所述标识符配置请求。
11.在一些实施例中,所述真随机数发生模块在被所述启动信号触发后,基于真随机数发生源产生所述随机信息,并将所述随机信息存储在缓存单元中。
12.在一些实施例中,所述缓存单元为fifo存储器。
13.在一些实施例中,所述真随机数发生源基于硬件提供的随机变化的信号产生所述随机信息。
14.在一些实施例中,所述真随机数发生模块在生成所述随机信息后,向所述处理单元提供通知信号,所述处理单元响应于所述通知信号,以执行:从所述真随机数发生模块中读取所述随机信息,将读取到的所述随机信息或所述数据处理结果写入所述指定存储区,以重置或初始化所述标识符。
15.在一些实施例中,在接收到所述通知信号之后,和/或在将所述随机信息或所述数据处理结果写入所述指定存储区之前,所述处理单元还用于执行:向所述真随机数发生模块提供擦除指令,以清除所述指定存储区。
16.在一些实施例中,所述处理单元包括:控制单元,响应于所述标识符配置请求以发送请求信号;以及处理单元,用于执行:响应于所述请求信号以发送所述启动信号,读取所述真随机数发生模块生成的所述随机信息,根据所述随机信息将所述标识符写入所述指定存储区。
17.在一些实施例中,所述处理单元还用于执行:对所述随机信息进行数据处理以获得所述数据处理结果,并将所述数据处理结果作为所述标识符写入所述指定存储区。
18.在一些实施例中,所述数据处理包括对所述随机信息进行采样以获得指定位数的所述标识符,所述指定位数与所述指定存储区的存储空间对应。
19.在一些实施例中,配置装置还包括数据总线,用于执行以下操作中的至少一个:向所述真随机数发生模块发送由所述处理单元提供的读取指令,向所述处理单元发送由所述真随机数发生模块提供的所述随机信息,向所述指定存储区发送由所述处理单元提供的所述指定存储区的地址和擦除指令,向所述指定存储区发送由所述处理单元提供的所述指定存储区的地址、写入指令以及所述随机信息。
20.在一些实施例中,配置装置还包括加密模块,用于:读取所述标识符;基于所述标识符,调用派生算法获得至少一个密钥和/或数字证书。
21.第二方面,本发明实施例提供一种处理器,包括上述任一实施例的配置装置。
22.第三方面,本发明实施例提供一种电子装置,包括上述任一实施例的配置装置和输入/输出设备。
23.在一些实施例中,所述配置装置经由与所述输入/输出设备相连的接口获得所述标识符配置请求。
24.在一些实施例中,电子装置还包括主处理器和存储器,所述主处理器和存储器至少与所述指定存储区安全隔离。
25.在一些实施例中,电子装置还包括通信单元,所述通信单元基于所述标识符派生出的密钥和/或数字证书实现数据/信号的接收和发送。
26.第四方面,本发明实施例提供一种系统,包括第一电子装置和至少一个第二电子装置,所述第一电子装置包括如上述任一实施例所述的配置装置,所述第一电子装置与任一所述第二电子装置之间的通信基于所述标识符派生出的密钥和/或数字证书。
27.第五方面,本发明实施例提供一种片上系统,包括:如上所述的任一种配置装置;puf模块;以及模式切换装置。模式切换装置与所述puf模块和所述配置装置耦接,适于:在第一模式下开启所述puf模块并关闭所述处理单元,以使所述puf模块提供所述标识符,在第二模式下开启所述处理单元并关闭所述puf模块,以使所述处理单元提供所述标识符。
28.第六方面,本发明实施例提供一种配置方法,用于生成与配置装置对应的的标识符,包括:响应于用户操作,发起标识符配置请求;在接收到所述标识符配置请求后,调用真随机数发生源生成随机信息;将所述随机信息或所述随机信息的数据处理结果作为标识符写入指定存储区中,所述指定存储区与所述配置装置之外的环境安全隔离。
29.在一些实施例中,配置方法还包括:在生成所述随机信息之后,或在发起所述标识符配置请求之后、生成所述随机信息之前,擦除所述指定存储区。
30.在一些实施例中,配置方法还包括:在生成所述随机信息之后,对所述随机信息进行缓存,在将所述标识符写入所述指定存储区之前,读取被缓存的所述随机信息。
31.在本发明提供的实施例中,可以基于用户操作对硬件的唯一标识符进行可重置的配置。与现有技术相比,本发明的优势在于:技术成本低,可以采用成熟的硬件模块实现,例如采用trng实现真随机数发生模块和/或采用非挥发随机访问存储器nvram提供用于存储标识符的指定分区;产生的标识符和随机信息具有可靠性、唯一性、隐私性和随机性;由于标识符的产生是被用户操作触发的,用户可以决定标识符的配置时间,可以重置或撤销已产生的标识符,也可以重复地产生新的标识符,因此在安全私密的前提下实现了标识符的灵活配置;由于用户配置标识符的时间和更新标识符的次数均不可预测,因此,进一步加强了标识符的随机性,将标识符被破解的可能性降至极低。基于本发明的实施例,从安全责任的角度而言:在内置有配置装置的产品出厂之前,设备或硬件的制造商不需要在设备或芯片出厂时在产品中导入标识符或相关的密钥,简化了制造流程;在内置有配置装置的产品出厂之后,标识符的配置将由用户负责而不再需要被制造商管理,从而基于标识符产生的一系列安全责任将由制造商转移至用户,制造商无需在出厂后对标识符进行维护,也无需承担密钥丢失、改变的责任,降低了风险,减轻了制造商的责任和压力,也避免用户在管理标识符相关的信息时需要与制造商沟通的麻烦。
附图说明
32.通过参考以下附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
33.图1示出根据本发明实施例的系统的示意图。
34.图2示出根据本发明的一种实施例对电子装置的标识符进行配置的过程示意图。
35.图3示出根据本发明实施例将用户设备和物联网设备进行绑定的过程示意图。
36.图4示出本发明实施例的电子装置的结构示意图。
37.图5a示出本发明实施例中安全元件的一种实现方式的结构示意图。
38.图5b示出本发明实施例中安全元件的另一种实现方式的结构示意图。
39.图6示出本发明实施例的安全元件实现标识符配置的部分过程示意图。
40.图7示出根据本发明实施例配置标识符的方法。
具体实施方式
41.以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程没有详细叙述。另外附图不一定是按比例绘制的。
42.当系统中存在多个电子装置时,每个电子装置需要具有唯一的、能够用于鉴别的标识符,使得系统中的多个电子装置能够被管理;对于每个电子装置来说,这个标识符由设置于该电子装置内的特定芯片提供,需要满足随机性和唯一性;同时,每个电子装置中的标识符还用于生成该电子装置的密钥/证书等密码信息,因此需要具有隐私性。
43.真随机数生成器(true random number generator,trng)是用于生成至少在理论上不可预测的数列的电路,可以响应于激励并调用真随机数发生源(例如热噪声源、光电效应或原子量子现象中的物理噪声源、能够产生随机信号的硬件电路等)以生成真随机数。真随机数生成器在相应的激励下可以重复地生成真随机数,因此能够区别于背景技术中所述的puf技术。
44.下面将以物联网这一系统为例进行描述,但应当领会,本发明实施例可以应用于任何需要产生具有唯一性和随机性的标识符的硬件或软硬件结合的系统中。
45.物联网是一种系统,其中,多个电子装置彼此互连和/或与通信网络(例如,互联网)互连,每个电子装置能够实现数据采集、数据交换以及致动等功能。在本文中,物联网中的各个电子装置与物联网中的其他电子装置以及通信网络进行通信,并可以自主地或半自主地执行一个或多个功能。物联网中的电子装置也可以包括网关,用于实现不同电子装置之间或电子装置与云端之间的耦合,从而实现数据存储、数据交换、远程定位以及交互控制等功能。
46.系统概述
47.图1示出了根据本发明实施例的系统1000的示意图。如图1所示,系统1000可包括经由网络100耦合的多个电子装置200。
48.各个电子装置200可以以各种方式与网络100进行通信。网络100可以基于通过交换信号实现的各种通信技术之一或多种通信技术的组合,包括但不限于采用电和/或光传导线缆的有线技术,以及采用红外、射频和/或其它形式的无线技术。在不同的应用场景下,网络100可以是互联网、广域网或局域网,例如为公司的专有网络。优选地,该网络100为无线网络。
49.作为示例,如图1所示,系统1000还可包括路由器400,不同的电子装置200之间可通过路由器400建立网络连接,从而允许不同的电子装置200之间经由路由器400建立的网络相互通信。
50.作为一种替代的实施例,系统1000可不包括路由器400,不同的电子装置200之间可以通过其它方式连接,例如经由红外、蓝牙、zigbee等方式连接。
51.在一些实施例中,如图1所示,系统1000可以包括服务器300,多个电子装置200中
的一个或一些可以与服务器300进行通信。电子装置200也可以作为另一个电子装置200的网关与网络100进行通信。
52.图1示出的系统1000可以是设置在家庭环境和商业环境中的系统,包括但不限于:供水系统、配电系统、流水线控制系统、工厂控制系统、照明系统、恒温控制系统、电子锁系统、监控系统、报警系统以及运动传感系统等。
53.在物联网中,各个电子装置可以是由用户使用的用户设备,也可以是物联网设备。各个电子装置之间的交互受控于物联网的管理体系。
54.用户设备可以为移动设备,例如移动通信设备(例如智能手机等)、平板电脑、笔记本电脑以及其他电子辅助设备等;用户设备也可以是其它设备,例如台式计算机、机顶盒等。用户设备通常具有接口,该接口可以与具有生物特征识别能力和/或信息录入能力的输入/输出设备连接,输入/输出设备例如为用于检测用户的指纹信息的指纹扫描仪、用于检测虹膜/面部的图像检测仪、键盘、按钮以及旋钮等。例如,在连接有指纹扫描仪的用户设备中,接口可以将用户的指纹信息提供至用户设备中的存储器,使得该指纹信息能够在相关场景中用于实现用户身份的认证。
55.在一些实施例中,用户设备中可以安装用于与物联网设备交互的应用。该应用可以是针对一个或多个物联网设备的应用。例如,该应用可以是专用于某个家用设备的应用,也可以是一系列物联网设备的通用应用,还可以是针对系统级物联网设备的应用。
56.物联网设备通常是连接于物联网中的物品,可以包括但不限于工业机器人、智能医疗设备、汽车、门锁、电饭煲、冰箱等工业/家用设备。物联网设备通常具备网络连接能力以便通过物联网与其它设备进行交互。在一些实施例中,可将物联网设备与如上所述的用户设备进行绑定从而用户可以通过用户设备对物联网设备进行控制,或通过用户设备查看物联网设备提供的信息,以实现不同电子装置之间的交互。
57.以上列出了一些物联网设备和用户设备,需要说明的是,本说明书实施例不限于特定的物联网设备和用户设备。
58.下面将结合应用场景对电子装置的安全管理方式进行举例说明。
59.为了使每个电子装置能够被唯一鉴别,需要针对每个电子装置设置唯一的、用于鉴别身份的标识符。基于这一标识符,该电子装置可以在可信任环境中派生出私钥、证书和/或加密密钥等密码信息以建立安全管理体系,并基于该安全管理体系实现与其他电子装置或网络的连接和交互,从而保护信息安全。
60.用户设备和物联网设备均可以基于自身的标识符建立相应的安全管理体系。
61.例如,每个独立的用户设备/物联网设备可包括安全元件(secure element,se),例如可信平台模块(trusted platform module,tpm),安全元件可以作为配置装置实现标识符的配置,配置装置的标识符即为该安全元件所在设备的标识符。安全元件通常由集成电路实现,可以是独立封装的芯片,也可以是设置于安全环境中的模块。为防止外部恶意解析攻击,保护数据安全,安全元件通常包括用于加密/解密的逻辑电路,从而能够基于私密性的标识符派生出各种密码信息,以建立电子装置的可信任环境和安全管理体系。通常,标识符以及安全管理体系中的各种密码信息可以存储在安全元件中。
62.在本实施例中,用户可以选择在任何时刻生成或更新电子装置的标识符。
63.图2示出根据本发明的一种实施例对电子装置的标识符进行配置的过程示意图。
64.如图2的操作2001所示,电子装置200经相应的接口接收由用户600发起的标识符配置请求。
65.该接口响应于用户操作,可以是用于识别生物特征的接口,也可以是键盘、实体按钮或虚拟按钮等。以用于识别生物特征的接口为例,电子装置通过与标识符配置功能相应的接口识别操作人员的生物特征信息,并将识别到的生物特征信息与已存储的合法特征信息进行比对,从而避免电子装置受控于非合法用户执行的用户操作。
66.在一些应用场景中,该接口可以利用数据处理单元针对不同的用户操作生成不同的标识符配置请求,例如标识符擦除请求、标识符更新请求或标识符初始化请求等,也可以针对特定的用户操作生成单一形式的标识符配置请求。
67.随后,如图2的操作2002所示,电子装置200响应于标识符配置请求,使得电子装置600内置的安全元件被使能以生成随机信息。该随机信息例如由集成于安全元件中的真随机数生成模块产生,可以符合美国国家标准与技术研究院(national institute of standards and technology,nist)提供的随机数标准或flip随机数标准等国际/国家认可的随机数标准。
68.之后,如图2的操作2003所示,安全元件将随机信息作为电子装置的标识符写入指定存储区,该指定存储区可以是内置在安全元件内的非易失性存储器的至少一个分区,也可以是被安全元件管理的外置存储器的至少一个分区。安全元件内用于加密/解密的逻辑电路可以从该指定存储区中读取标识符,并基于该标识符产生私钥/公钥对等密码信息。
69.在一些实施例中,写入指定存储区内的标识符也可以是对真随机数生成模块产生的随机信息进行数据处理之后生成的。该数据处理例如包括对随机信息进行采样以获得指定位数的标识符,这里提到的指定位数与指定存储区的存储空间对应。
70.在一些情境下,安全元件/内置有安全元件的电子装置在出厂时可以预先设置有初始化的标识符,且该初始化的标识符可以存储在上述指定存储区中;在另一些情境下,在安全元件/内置有安全元件的电子装置出厂时,用于存储标识符的指定存储区可以是清空状态。无论是在何种情境下,根据本发明实施例获得的标识符在具有隐私性和安全性的前提下均可以被用户配置,使得出厂后的电子装置的标识符不再需要被电子装置的制造商管理。不仅如此,由于用户配置标识符的时间和更新标识符的次数均不可预测,因此,进一步加强了标识符的随机性,将标识符被破解的可能性降至极低。
71.可选的,当标识符配置请求为一种初始化请求时,安全元件被触发以直接将真随机数生成模块产生的随机信息作为标识符写入指定存储区;当标识符配置请求为一种擦除请求时,安全元件被触发以擦除指定存储区中的标识符;当标识符配置请求为一种更新/重置请求时,安全元件被触发并首先将先前存储于指定存储区中的标识符擦除,再将真随机数生成模块中缓存的随机信息作为更新后的标识符写入指定存储区。
72.在一些实施例中,接口仅提供单一形式的标识符配置请求,安全元件对指定存储区依次执行擦除、写入的步骤,以简化接口对标识符配置请求的处理过程。
73.可选的,如图2的操作2004所示,基于用于发起的标识符配置请求,电子装置200在完成标识符的初始化、更新或擦除过程后,可以对用户600发出通知,以指示标识符配置的完成。
74.在一些应用场景中,物联网中的用户设备可以根据自身的标识符产生公钥/私钥
对、证书等密码信息,并在操作物联网设备之前利用这些密码信息与物联网设备实现绑定和/或信号交换。下面将以利用公钥/私钥对进行绑定的过程为例进行说明。然而,需要说明的是,本发明实施例不限于此,根据本发明实施例生成的标识符可以用于在其他应用场景中作为安全管理体系的基础,例如该标识符经过加密算法后可以应用于不同物联网设备之间的认证和数据交换过程、服务器对不同用户设备的识别和管理过程等。
75.图3示出根据本发明实施例将用户设备和物联网设备进行绑定的过程示意图。
76.如图3的操作3001所示,在用户设备中的标识符被初始化或更新之后,即在指定存储区被写入标识符之后,用户设备中的安全元件可以基于该标识符在安全环境中生成新的公钥/私钥对。
77.随后,可选的,如图3的操作3002所示,用户设备可以通过显示器、指示灯、扬声器等装置向用户报告公钥/私钥对生成完成。
78.在一个实施例中,如图3的操作3003所示,用户设备200a可以通过接口接收用户600发起的绑定请求。例如,用户600可以通过按键等录入设备选择需要绑定的物联网设备200b,该物联网设备200b可以是由用户设备200a通过搜索局域网内的设备来发现的。需要说明的是,操作3001至3002可以在操作3003之后执行,也可以在操作3003之前执行。
79.在一些应用场景中,用户设备200a可以在接收到绑定请求之后通过生物特征识别的方式或其他方式对用户身份进行识别,以确保操作人员为合法用户。
80.随后,如图3的操作3004所示,基于该绑定请求,用户设备200a可尝试连接到被选定的物联网设备200b。该连接例如可经由如图1所示的网络100或路由器400实现,或经由其它连接方式实现。
81.作为可选的实施例,如图3的操作3005所示,在连接成功后,物联网设备200b可向用户设备200a返回连接结果。此外,用户设备200a也可通知用户600连接成功。
82.之后,如图3的操作3006所示,用户设备200a可以将与该用户600相关联的用户公钥传送给选定的物联网设备,例如经由在先前的操作3004和3005中建立的连接。
83.在接收到与用户相关联的用户公钥之后,如图3的操作3007所示,物联网设备200b可存储该用户公钥,例如存储在该物联网设备的存储器中。类似地,为了进一步增强安全性,物联网设备200b可将该用户公钥存储在物联网设备内置的安全环境中,例如可信执行环境或安全元件中。
84.随后,如图3的操作3008所示,物联网设备200b可向用户设备200a返回绑定结果,绑定结果例如用于指示用户公钥存储成功或绑定成功。
85.可选的,如图3的操作3009所示,用户设备200a可以利用显示器、扬声器、闪光灯等设备通知用户绑定成功。
86.经过上述绑定过程后,用户600即可通过用户设备200a对绑定的物联网设备200b执行相应的操作,例如控制物联网设备200b或获取物联网设备200b提供的信息。
87.可以看出,各个电子装置对应的标识符需要具有隐私性,即无法被随意获取,从而保证物联网中的各个电子装置中的公钥/私钥对等密码信息无法被破解,存储于电子装置中的隐私数据无法被合法用户之外的操作人员通过破解标识符的方式获取;标识符还需要与相应的电子装置/安全元件唯一对应,因此需要安全元件响应于用户操作生成高随机性的标识符,使得不同的电子装置具有不同的标识符,且该标识符很难通过推理或计算的方
式被获取。
88.电子装置
89.图4示出本发明实施例的电子装置的结构示意图。图4中示出的电子装置200可以存在于图1所示的系统中,且旨在示出电子装置的至少部分组件,在本发明的其他实施例中,可以省略图4示出的部分组件或以不同的架构实现各组件之间的连接,也可以包括图4中未示出的一些硬件和/或软件模块。在物联网的应用场景中,图4示出的电子装置200可以作为用户设备或物联网设备,能够响应于用户操作和标识符配置请求。
90.如图4所示,电子装置200可以包括主处理器201,该主处理器201可以是微处理器、多核处理器、多线程处理器、超低电压处理器、嵌入式处理器或其他类型的处理元件。主处理器201可以是片上系统(system on chip,soc)的一部分,也可以与其他组件形成单个集成电路或单个封装的芯片。
91.电子装置200还可以包括任意数量和/或任意容量的存储器202,主处理器201可以与存储器202相互通信,存储器202可以用于提供数据、应用程序以及操作系统等信息的存储空间。在各种实现方式中,存储器202可以由用于提供非易失性存储空间的存储装置实现,也可以包括其它类型的存储装置。
92.电子装置200中的各类组件可以通过总线203实现通信。总线203可以为单一类型的总线结构或者集合有多种类型的总线结构。
93.总线203可以将主处理器201耦合到用于连接外部设备或接收数据(例如为生物特征数据)的接口204。外部设备可以包括传感器205,例如为温度传感器、风速传感器、图像传感器、压力传感器等。接口204还可以用于将电子装置200连接到驱动器206,例如为指示灯、阀门致动器、扬声器、温控设备等。
94.如图4所示,电子装置200包括通信单元207,因此可以通过各种方式与网络100或其他电子装置200通信。通信单元207例如可以包括一种或多种通信模块,作为示例,通信单元207可以包括适用于特定的无线通信协议的无线通信模块。例如,通信单元207可以包括wlan模块,用于实现符合电气和电子工程师协会(ieee)制定的802.11标准的wi-fitm通信;通信单元207也可以包括wwan模块,用于实现符合蜂窝或其他无线广域协议的无线广域通信;通信单元207还可以包括蓝牙模块等采用其它协议的通信模块,或其它自定义类型的通信模块。
95.如图4所示,电子装置200包括供电单元208。该供电单元208可以是可替换的电池、可被外部电源充电的电池,也可以是与外部电源209相连且用于管理电能传输的组件。外部电源209包括但不限于太阳能发电机、风力发电机以及家用/工业用的供电线缆。
96.针对安全方面的需求,电子装置200还包括至少用于存储标识符的安全元件210,用于提供电子装置200的安全环境。该安全元件210可以是独立封装的芯片,也可以是集成在主处理器201内部且与主处理器中的其他部分安全隔离的元件,还可以是集成于片上系统中且与片上系统中的其他部件安全隔离的集成电路。
97.安全元件210不仅可以用于初始化、擦除、存储或更新标识符,还可以根据安全加密算法对初始化的标识符或重置后的标识符等需要具有高隐私性的信息执行加密操作,或对接收到的密文执行相应的解密操作,也可以用于存储特征数据(例如不同用户录入的生物特征信息),从而在安全环境中实现加密/解密、安全防护以及安全认证等功能,保证了用
户隐私和数据安全。
98.在一些实施例中,安全元件210例如通过系统管理总线(system management bus,smb)与主处理器201进行通信,然后配合电子装置200的管理系统完成各种安全保护工作。安全元件210也可以集成有通讯接口,可以基于特定的数据流加密/解密处理机制对高速数据流进行加密/解密。
99.在一些实施例中,安全元件210还可以选择存储器202(例如为硬盘)中的任意一个分区并进行加密,使得加密后的选定分区可以用于存储需要保密的重要文件。
100.在一些实施例中,安全元件210与一个或一些指定的接口204耦合。与安全元件210耦合的接口204可以响应于用户操作,并提供相应的接口信息至安全元件210,使得安全元件210能够获得标识符配置请求并执行相应的标识符配置操作。
101.安全元件
102.图5a示出本发明实施例的安全元件的结构示意图。
103.本实施例中,安全元件由硬件实现,例如由集成电路实现。安全元件配置标识符的过程可以无需软件的参与。
104.如图5a所示,安全元件210可以包括:真随机数发生模块211、非易失性存储模块212、控制单元213、处理单元214以及总线215。
105.控制单元213与相应的接口耦合,从而可以根据接口提供的接口信息发出请求信号,该请求信号响应于用户通过接口发起的标识符配置请求。
106.在一些实施例中,控制单元213可以包括寄存器,用于存储自接口信息中获取的时间信息、类型信息等配置信息,控制单元213可以根据寄存器中存储的配置信息输出相应的请求信号。
107.例如,类型信息可以用于指示撤销、重置、初始化或更新标识符的用户需求,时间信息可以用于指示用户希望执行标识符配置的时间。因此,控制单元213提供的请求信号可以用于在指定时间驱动处理单元214执行撤销、重置、初始化或更新标识符等操作。
108.在另一些实施例中,控制单元213可以在接口信息的触发下提供请求信号,该请求信号仅用于驱动处理单元214依次执行预设操作,例如读取随机信息、擦除已有的标识符以及写入标识符,而无需受控于配置信息。
109.处理单元214通过总线215与非易失性存储模块212连接,从而可以在接收到请求信号之后驱动真随机数发生模块211产生随机信息,并执行:将非易失性存储模块212中原有的标识符擦除,和/或,根据最新生成的随机信息作为标识符写入非易失性存储模块212中。在一些实施例中,处理单元214还可以包括数据处理单元,用于对真随机数发生模块提供的随机信息进行数据处理过程,以产生安全元件210的标识符,数据处理过程例如为加密过程或转换数据结构的过程等。
110.需要说明的是,虽然在图5a中处理单元214与非易失性存储模块212被分离示出,但是在一些未示出的实施例中,处理单元214可以是设置于非易失性存储模块212内部的处理单元,并与非易失性存储模块212内的其他组件耦接。
111.真随机数发生模块211与处理单元214耦合连接,并在处理单元214的驱动下产生随机信息。在一些实施例中,真随机数发生模块211在生成并缓存随机信息之后,可以对处理单元214提供通知信号,以使处理单元214在接收到通知单元之后可以从真随机数发生模
块211的缓存单元中读取随机信息,并随后将这一读取到的随机信息作为更新/初始化的标识符或将随机信息的数据处理结果作为标识符写入非易失性存储模块212中。
112.在本实施例中,真随机数发生模块211可以在处理单元214的驱动下调用真随机数发生源,例如为由集成电路在上电情况下提供的物理噪声源等。被调用的真随机数发生源经放大器、换能器或模拟数字转换器等硬件电路中的一个或多个提供随机信息,其中,换能器可以用来将物理过程中的某些效果转换为电信号,放大器可以用于将真随机数发生源提供的随机性的扰动信号放大至宏观级别,模拟数字转换器可以用来输出数字信号形式的随机信息。
113.由于真随机数发生模块211内置有可以被激发的真随机数发生源,因此能够在用户执行标识符配置请求相关的用户操作时可重复地生成随机信息,使得用户可以对安全元件200的标识符进行初始化配置和重复配置。真随机数发生源可以基于硬件提供的随机变化的信号(例如电路产生的信号噪声、电阻结构产生的热噪声、振荡器产生的抖动信号等等)产生随机信息。
114.真随机数发生模块211可以包括缓存单元,用于存储随机信息。该随机信息可以由真随机数发生模块211内部的执行硬件写入至缓存单元,也可以由处理单元214写入至真随机数发生模块211内的缓存单元或安全元件中设置的其他缓存单元中。该缓存单元可以通过数据总线与处理单元214连接,使得处理单元214可以经数据总线读取缓存单元中的随机信息。缓存单元例如为先入先出(first input first output,fifo)存储器,处理单元214可以向缓存单元提供读指针以读取缓存在fifo存储器中的随机信息。
115.非易失性存储模块212用于存储标识符,该标识符作为安全元件210的鉴别信息,例如可以为用于建立安全管理体系的根密钥。非易失性存储模块212为硬件存储装置,例如是非挥发随机访问存储器(non-volatile random access memory,nvram)或nvram中具有的指定存储区。
116.在一些实施例中,如图5b所示,安全元件210还可以包括加密/解密单元216,用于提供至少一种安全加密算法和相应的解密算法,从而能够从非易失性存储模块212中读取标识符,或经处理单元214获得存储在非易失性存储模块中的标识符,并对该标识符进行加密,以派生出私钥、证书等各种密码信息。加密/解密单元216也可以基于解密算法对密文信息执行解密操作。
117.加密/解密单元216中集成有至少一种安全加密算法,该安全加密算法可以支持国家指定的密码算法,例如对称密码算法、非对称密码算法和杂凑算法,也可以支持国际通用其他密码算法,例如哈希算法等。
118.加密/解密单元216可以包含任何电路或其它结构以执行一个或多个加密/解密算法。在一个实施例中,加密/解密单元216包含的电路结构可以用于执行高级加密标准(advanced encryption standard,aes)或其他标准的加密算法。
119.在一些实施例中,除了处理单元214之外,非易失性存储模块212不可以直接被主处理器201中运行的软件或其他硬件或软件访问,其他硬件或软件只能经处理单元214和加密/解密单元216获得被加密打包(wrap)的密文,例如标识符经aes打包过程产生的密文。并且,对加密/解密单元216的访问需要被限制在安全访问环境中或被安全隔离的执行环境中。
120.在其它实施例中,可以使用任何其它方法以隐藏和保护非易失性存储模块212中的标识符。
121.需要说明的是,根据本发明实施例实现的安全元件不限于此,可以包括未在图5a和图5b中示出的任何其它的电路、结构或逻辑模块,且不限于图5a和图5b所示的架构。
122.例如,在一些未示出的实施例中,安全元件还可以包括采用上述puf技术的puf模块和模式切换装置。模式切换装置可以与puf模块和处理单元耦接,从而能够实现两种安全模式(第一模式和第二模式)的切换:在第一模式下,模式切换装置开启puf模块并关闭处理单元,以使所述puf模块提供标识符;在第二模式下开启处理单元并关闭puf模块,以使处理单元提供标识符。在这一实施例中,puf模块可以在产品出厂时提供物理不可克隆的标识符,并在第一模式下将该标识符写入指定存储区中;在产品出厂后,模式切换装置可以根据用户操作退出第一模式并进入第二模式,从而将处理单元提供的可被重复配置的标识符存入指定存储区中。puf模块、模式切换装置例如可以集成于同一器件中,也可以与处理单元、真随机数发生模块、非易失性存储模块等组件集成于同一片上系统中。
123.处理单元214中可以包括指令硬件以及用于执行指令的执行硬件,或其他结构的硬件和模块。
124.指令硬件可以表示任何电路、结构或其它硬件,诸如指令解码器,以用于对指令执行取回、接收、解码和/或调度等操作。在本发明的范围内,指令硬件可以适用于任何指令格式,例如,被指令硬件调度的指令可以包含操作码以及一个或多个操作数,其中操作码可以被解码成执行单元中用于执行指令的硬件能够识别的一个或多个微指令或微操作。
125.执行硬件可以为任何电路结构或其他硬件,例如算术单元、逻辑单元、浮点单元以及移位器等,以用于实现数据处理并执行指令、微指令和/或微操作。
126.处理单元214还可以包括逻辑硬件,用于执行微代码、状态机逻辑和/或可编程逻辑,以控制:安全元件200和其它元件之间的操作以及在安全元件200内进行的数据传递等操作,和/或,对由缓存单元中读取到的随机信息进行数据处理以获得标识符。逻辑硬件可以使得安全元件200执行或参与执行本发明的方法实施例,例如以下描述的方法实施例,使得安全元件200中的真随机数产生模块211、控制单元213、非易失性存储模块212、加密/解密单元216和/或其他利用真随机数产生模块211、控制单元、非易失性存储模块212、加密/解密单元216提供的资源可以被用于执行指令硬件接收的指令和/或与指令硬件接收的指令对应的微指令或微操作。
127.图6示出本发明实施例的安全元件实现标识符配置的部分过程示意图。结合图5a和5b,图6主要示出在处理单元214在接收到控制单元213发出的请求信号之后,非易失性存储模块212和真随机数发生模块2111在处理单元214的控制下实现标识符配置的过程,然而本发明实施例不限于此。
128.在图6示出的操作4001中,处理单元214在请求信号的触发下向真随机数发生模块212提供启动信号。
129.在图6示出的操作4002中,真随机数发生模块212在接收到启动信号之后,调用真随机数发生源以生成随机信息。
130.在图6示出的操作4003中,真随机数发生模块212将最新生成的随机信息写入至缓存单元。该缓存单元可以是内置在真随机数发生模块212中的输出缓存区(例如由fifo存储
器实现),也可以是其他处于安全环境中的缓存区。
131.可选的,在图6示出的操作4004中,真随机数发生模块212在完成随机信息的缓存后,可以向处理单元214发出通知信号。
132.在图6示出的操作4006中,处理单元214可以在接收到通知信号之后或自发出启动信号起经历一段等待时间之后,向上述缓存单元发送读取指令,例如为适用于fifo存储器的读指针。
133.在图6示出的操作4007中,与真随机数发生模块212关联或内置于真随机数发生模块212中的缓存单元在接收到读取指令后向处理单元214返回随机信息。
134.在图6示出的操作4008中,真随机数发生模块212在接收到随机信息之后,可以通过总线215向非易失性存储模块212发送写入指令以及刚刚获得的随机信息或经过数据处理的随机信息,使得非易失性存储模块212将这一随机信息存储为标识符。
135.在图6示出的操作4005中,处理单元214可以在接收到通知信号之后或在发出启动信号之后或发出写入指令之前经总线215向非易失性存储模块212发送擦除指令,使得非易失性存储模块212中原先存储的标识符被清除。
136.经过上述操作,安全元件210可以在用户操作的激励下对标识符进行初始化、清除或更新。
137.图7示出了根据本发明实施例配置标识符的方法5000。下面将参照图1、图4和图5a示出的结构描述图7示出的方法实施例,然而需要说明的是,本发明的方法实施例不限于图1、图4和图5a示出的结构,本示例方法中的步骤也可以根据需要被省略、被补充和/或以不同的顺序呈现。
138.在方法5000的操作5001中,当用户需要对标识符进行配置时,可以执行特定的用户操作,接口或其他结构/装置响应于用户操作,使得标识符配置请求被发起。在一些实施例中,特定的用户操作可以对应于单一的标识符配置请求,不同的用户操作也可以对应不同的标识符配置请求,例如标识符擦除请求、标识符更新请求或标识符初始化请求等。
139.在方法5000的操作5002中,在接收到标识符配置请求后,可以调用真随机数发生源生成随机信息。作为一种可能的实施例,如上所述,可以首先在标识符配置请求的触发下生成相应的请求信号,该请求信号可以为用于使能/驱动的信号,也可以是包含了时间信息和/或配置信息的信号;随后,可以基于这个请求信号发出用于激励真随机数发生模块的启动信号,使得真随机数发生模块可以调用真随机数发生源提供随机信息。
140.可选的,在需要重置或更新标识符的场景下,在方法5000的操作5003中,在随机信息生成之后,或在发起标识符配置请求之后、在随机信息生成之前,可以擦除用于存储标识符的指定存储区,以清除指定存储区中原有的标识符。
141.在方法5000的操作5004中,在随机信息生成之后,可以直接将随机信息作为标识符,也可以对随机信息进行数据处理以生成标识符。
142.在方法5000的操作5005中,将操作5004生成的标识符写入操作5003提到的指定存储区,从而实现标识符的初始化、重置或更新。
143.上述实施例描述的方法4000中,至少操作5002至5005是在安全元件或可信平台环境中执行的。
144.至此,已经描述了本发明用于可重复地对硬件中用于鉴别的唯一标识符进行配置
的方法实施例。
145.本申请还公开了一种包括存储于其上的计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被处理器执行时使得所述处理器执行本文所述的各实施例的方法。
146.此外,本申请还公开了一种系统,该系统包括用于实现本文所述的各实施例的方法的装置。
147.可以看出,在本发明提供的实施例中,可以基于用户操作对硬件的唯一标识符进行可重置的配置。与现有技术相比,本发明的优势在于:技术成本低,可以采用成熟的硬件模块实现,例如采用trng实现真随机数发生模块和/或采用非挥发随机访问存储器nvram提供用于存储标识符的指定分区;产生的标识符和随机信息具有可靠性、唯一性、隐私性和随机性;由于标识符的产生是被用户操作触发的,用户可以决定标识符的配置时间,可以重置或撤销已产生的标识符,也可以重复地产生新的标识符,因此在安全私密的前提下实现了标识符的灵活配置;由于用户配置标识符的时间和更新标识符的次数均不可预测,因此,进一步加强了标识符的随机性,将标识符被破解的可能性降至极低。基于本发明的实施例,从安全责任的角度而言:在内置有配置装置的产品出厂之前,设备或硬件的制造商不需要在设备或芯片出厂时在产品中导入标识符或相关的密钥,简化了制造流程;在内置有配置装置的产品出厂之后,标识符的配置将由用户负责而不再需要被制造商管理,从而基于标识符产生的一系列安全责任将由制造商转移至用户,制造商无需在出厂后对标识符进行维护,也无需承担密钥丢失、改变的责任,降低了风险,减轻了制造商的责任和压力,也避免用户在管理标识符相关的信息时需要与制造商沟通的麻烦。
148.需要领会,以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本说明书的实施例存在许多变型。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
149.例如,尽管在本文中以物联网为例进行说明,但应该理解,本发明实施例可以应用于需要对硬件的唯一标识符进行配置的各种场景中。
150.应该理解,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于方法实施例而言,由于其基本相似于装置和系统实施例中描述的方法,所以描述的比较简单,相关之处参见其他实施例的部分说明即可。
151.应该理解,上述对本说明书特定实施例进行了描述。其它实施例在权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
152.应该理解,本文用单数形式描述或者在附图中仅显示一个的元件并不代表将该元件的数量限于一个。此外,本文中被描述或示出为分开的模块或元件可被组合为单个模块或元件,且本文中被描述或示出为单个的模块或元件可被拆分为多个模块或元件。
153.还应理解,本文采用的术语和表述方式只是用于描述,本说明书的一个或多个实施例并不应局限于这些术语和表述。使用这些术语和表述并不意味着排除任何示意和描述
(或其中部分)的等效特征,应认识到可能存在的各种修改也应包含在权利要求范围内。其他修改、变化和替换也可能存在。相应的,权利要求应视为覆盖所有这些等效物。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1