用于经由计算机网络控制存储器装置的服务器系统的制作方法

文档序号:35503056发布日期:2023-09-20 16:07阅读:25来源:国知局
用于经由计算机网络控制存储器装置的服务器系统的制作方法
用于经由计算机网络控制存储器装置的服务器系统
1.相关申请案
2.本技术案主张在2021年1月15日申请且标题为“用于经由计算机网络控制存储器装置的服务器系统(server system to control memory devices over computer networks)”的序列号为17/150,834的美国专利申请案的优先权,所述美国专利申请案的全部公开内容特此以引用方式并入本文中。
技术领域
3.本文中公开的至少一些实施例大体上涉及计算机安全,且更特定来说(但不限于),涉及控制存储器装置的安全操作。


背景技术:

4.存储器子系统可包含存储数据的一或多个存储器装置。存储器装置可为例如非易失性存储器装置及易失性存储器装置。一般来说,主机系统可利用存储器子系统以将数据存储于存储器装置处及从存储器装置检索数据。
附图说明
5.在附图中,通过实例而非限制来说明实施例,其中相似元件符号指示类似元件。
6.图1展示根据一个实施例的经配置以控制存储器装置的服务器系统。
7.图2说明根据本公开的一些实施例的具有存储器子系统的实例计算系统。
8.图3说明根据一个实施例的具有安全管理器的集成电路存储器装置。
9.图4展示根据一个实施例的控制存储器装置的方法。
10.图5是其中可操作本公开的实施例的实例计算机系统的框图。
具体实施方式
11.本公开的至少一些方面涉及经配置以控制存储器装置(例如存储器装置的安全特征的激活、指示存储器装置执行安全操作的特权的转移等)的服务器系统。
12.存储器装置可制造为包含安全管理器。可激活安全管理器以控制对存储器装置中的存储器胞元的存取。可使用密码技术来实施存取控制。举例来说,拥有加密密钥的实体可具备指示存储器装置执行限制操作的特权。此类操作的实例可包含改变存储器装置的安全设置或配置,读取存储器装置中的存储器胞元的部分,将数据写入到存储器胞元的部分中,从存储器胞元的部分删除数据,更新存储器胞元的部分中的数据等。保全存取控制中使用的加密密钥及保全特权的转移是一项挑战。
13.本公开的至少一些方面由具有密钥管理服务器及存取控制服务器的服务器系统解决上述及其它缺陷及/或挑战。
14.密钥管理服务器经配置以保全加密密钥且保全涉及加密密钥的计算。密钥管理服务器实施涉及并非特定于存储器装置及客户端的加密密钥的操作。因此,可限制、简化及/
或标准化密钥管理服务器的功能性以改进安全性。
15.存取控制服务器存储客户端信息且经配置以执行特定于不同客户端及/或不同存储器装置的计算及/或安全任务。存取控制服务器经配置于密钥管理服务器与存储器装置所连接到的客户端计算机系统之间。客户端计算机系统请求存取控制服务器提供涉及存储于密钥管理服务器中的加密密钥的响应。存取控制服务器处理请求以确定是否使用密钥管理服务器的服务来产生响应。存取控制系统可充当密钥管理服务器的守门及/或代理,拒绝来自未列入白名单的计算机系统的连接,保护密钥管理服务器使的免受拒绝服务(dos)攻击,且使用密钥管理服务器的加密密钥管理功能性来实施客户端/装置特定的操作。通过控制对密钥管理服务器的存取,存取控制服务器可降低密钥管理服务器的安全风险且提供丰富服务以适应各种类型的存储器装置、控制活动及客户端偏好。
16.存储器装置可经配置以具有唯一标识符。可使用密码技术认证标识符以防止伪造装置及/或篡改装置存取服务且防止不安全操作。可基于存储器装置的硬件及存储于存储器装置中的选定数据产生标识符以整体上表示存储器装置的硬件及软件的组合。此外,存储器装置可经配置以向拥有一或多个加密密钥的实体提供请求存储器装置执行与存储器装置的安全方面相关的命令的特权。密钥管理服务器可用于存储器装置的唯一标识符的确认及特权的转移。
17.举例来说,存储器装置可存储秘密以用于其认证。在安全设施中制造存储器装置期间,唯一装置秘密(uds)可注入存储器装置中且存储于存储器装置的受保护及存取控制区域中。根据装置标识符合成引擎(dice)及稳健物联网(riot)的标准及/或实施方案,可在启动时间基于唯一装置秘密(uds)及存储于安全存储器装置中的其它非秘密数据的组合而产生加密密钥。接着,可使用加密密钥作为存储器装置的秘密及标识符。
18.在安全设施中制造存储器装置期间,在密钥管理服务器中注册存储器装置的唯一装置秘密(uds)。随后,在从存储器装置的制造商运送存储器装置之后,不会由存储器装置在存储器装置的安全区段外部及/或不在存储器装置外部导出、提供、传达唯一装置秘密(uds)。由于唯一装置秘密(uds)在存储器装置与密钥管理服务器之间是已知的,因此存储器装置130及密钥管理服务器两者可执行使用唯一装置秘密(uds)来产生加密密钥的相同计算。至少部分基于唯一装置秘密(uds)导出加密密钥以用于认证存储器装置。
19.举例来说,可通过验证存储器装置具有加密密钥及因此唯一装置秘密且存储非秘密数据的未篡改版本来执行存储器装置的认证。存储器装置可使用加密密钥数字签署凭证或消息。如果可验证数字签名已使用加密密钥创建,那么存储器装置被视为拥有加密密钥且因此具有表示唯一装置秘密且与其相关联的标识符。
20.可通过将密码函数应用于消息且使用加密密钥来实现所述消息的数字认证。举例来说,对称加密及/或非对称加密可依赖于散列作为使用加密密钥数字签署的内容。举例来说,可通过创建消息认证码(mac)(例如,基于散列的消息认证码(hmac)或基于密码的消息认证码(cmac))执行使用对称加密的签署。举例来说,可通过创建数字签名(例如,使用数字签名算法(dsa)或椭圆曲线数字签名算法(ecdsa))执行使用非对称加密的签署。密码函数可包含散列及加密,其通常用于产生添加到消息的标头以用于认证。在使用对称加密时,标头可为散列摘要,或在应用非对称加密时,标头可为数字签名。接着,消息的接收者可将类似密码函数应用于接收到的消息且使用加密密钥来认证由拥有适当加密密钥的受信任方
发送消息的内容。举例来说,可解密标头中的加密散列值以与独立于消息计算的散列值进行比较。如果从消息计算的散列值与从解密标头(例如,数字签名及/或散列摘要)复原的散列值之间存在匹配,那么可鉴于散列值确认消息的完整性;且可见标头已使用加密密钥创建。
21.在启动时间产生的加密密钥可用于在启动时间签署凭证且立即丢弃以保护其保密性。替代地,在启动时间产生的密钥可保存在存储器中以稍后在运行时间使用。在一些情况中,在启动时间使用的加密密钥被称为dice装置id密钥且在运行时间使用的密钥被称为dice别名密钥。在一些情况中,装置id私密密钥可用于签署包含别名公共密钥的凭证以证明别名密钥是从存储器装置产生。
22.在一些布置中,当将存储器装置从制造存储器装置的设施运送到存储器装置安装于其中的计算装置的原始设备制造商(oem)时,最初撤销激活所述存储器装置的至少一些安全特征。可向存储器装置提供命令以激活非有效安全特征。
23.使命令被存储器装置接受以执行的特权可与加密密钥相关联。当存储器装置验证经由正确加密密钥数字签署命令时,存储器装置执行命令;否则,存储器装置可拒绝或忽略命令。激活或撤销激活安全特征或读取、写入、更新、删除及/或修改存储器胞元的安全区段的各种命令可经配置以需要基于相关加密密钥的特权。
24.举例来说,存储器装置经配置以存储用于验证实体在请求存储器装置执行命令时的特权的加密密钥。可通过使用加密密钥检查是否通过使用对应加密密钥签署命令而验证特权。当使用对称加密时,将使用存储于存储器装置中的相同加密密钥来签署命令以验证特权。当使用非对称加密时,将使用与存储于存储器装置中的公共密钥相关联的私密密钥来签署命令以验证特权。
25.最初可向存储器装置的制造商提供操作所述存储器装置的至少一些特权。举例来说,存储器装置可经制造以存储制造商的公共密钥以允许由存储器装置通过使用制造商的对应私密密钥确认套用到命令上的数字签名检查特权。替代地,当使用对称加密时,存储器装置经制造以存储在存储器装置与制造商之间已知的秘密加密密钥以用于数字签名确认。
26.特权可从存储器装置的制造商转移到另一实体,例如存储器装置安装于其中的计算装置的制造商。所述转移可通过替换存储于存储器装置中的对应加密密钥,或通过提供可用于签署命令的加密密钥来完成。
27.存取控制服务器可使用密钥管理服务器的服务安全地验证存储器装置的标识符,签署需要特权的命令,及/或转移特权。
28.举例来说,可将一组特权指派给被视为存储器装置的拥有者的实体。可经由存储于存储器装置内的加密密钥验证拥有者特权。需要此类特权的实例以:激活存储器装置的安全特征;更新存储器装置的标识符(例如,基于存储于存储器装置中的经更新非安全数据);及将拥有者特权转移到另一实体(例如存储器装置安装于其中的计算装置的制造商)。存储器装置的当前拥有者可数字签署特权命令以请求其在存储器装置中执行。
29.可进一步需要所有权特权以撤销激活选定安全特征,管理存储器装置中的加密密钥以认证授权使用存储器装置中的一或多个安全区段的用户,及/或管理至少部分基于存储器装置的唯一装置秘密而产生的存储器装置及/或计算装置的标识符。
30.图1展示根据一个实施例的经配置以控制存储器装置的服务器系统102。服务器系
统102包含密钥管理服务器103及存取控制服务器101。
31.在图1中,密钥管理服务器103经配置以存储使加密密钥124与唯一标识122相关联的数据。
32.举例来说,加密密钥124可经配置用于存储器装置130的安全管理器113的操作。安全管理器113可具有在安全设施中制造存储器装置130期间注册到密钥管理服务器103中的唯一装置秘密(uds)。证实存储器装置130拥有唯一装置秘密(uds)的加密操作可被视为确认存储器装置130是真实的。
33.存储于存储器装置130的密钥管理服务器103中的加密密钥124可包含唯一装置秘密(uds)。此外,加密密钥124可包含可与唯一装置秘密(uds)组合以产生导出的加密密钥124的数据。用于产生导出的加密密钥124的此数据可包含非秘密数据,例如从将密码散列函数应用于存储或将存储于存储器装置130中的数据及/或指令集而获取的散列值。加密密钥124可包含使用唯一装置秘密(uds)及非秘密数据产生的经导出加密密钥124。存储器装置130及密钥管理服务器103经配置以基于唯一装置秘密(uds)及其它数据(例如,非秘密数据)而产生相同经导出加密密钥124。由于存储器装置130及密钥管理服务器103可独立地产生相同导出密钥,因此在存储器装置130及密钥管理服务器103外部不会执行唯一装置秘密(uds)的通信以认证存储器装置130的标识符。此布置改进安全性。
34.存储器装置130可通过展示其具有至少部分基于存储器装置130的唯一装置秘密(uds)导出的秘密加密密钥124而证实其拥有密钥管理服务器103已知的唯一装置秘密(uds)。举例来说,秘密加密密钥可用于产生套用到消息上的数字签名;且密钥管理服务器103可使用对应密钥来验证使用从存储器装置130的唯一装置秘密(uds)导出的秘密加密密钥施加数字签名。对应密钥可为使用对称加密的相同秘密加密密钥124,或对应于使用非对称加密的秘密私密密钥的公共密钥。数字签名可呈基于散列的消息认证码(hmac)的形式或呈签署消息的加密散列的形式。
35.一般来说,秘密密钥可为其中加密及解密两者经配置以使用相同密钥的对称加密中使用的对称加密密钥。替代地,秘密密钥可为非对称加密中使用的一对密钥中的一者,其中使用一个密钥执行的加密将使用另一密钥解密但不可使用加密中使用的相同密钥解密;且从所述对中的一个密钥确定另一密钥通常是不切实际的。因此,可使用密钥对中的一者作为秘密及因此私密密钥;且另一密钥可揭露为公共密钥。使用公共密钥,不具有私密密钥的实体可验证是否使用对应私密密钥产生密文。
36.存储器装置130可包含从群体中的其它存储器装置唯一地识别存储器装置130的唯一标识(uid)122。举例来说,存储器装置130的唯一标识(uid)122可包含存储器装置130的制造商零件编号(mpn)及/或存储器装置130的序列号。举例来说,存储器装置130的唯一标识(uid)122可包含至少部分基于唯一装置秘密产生的对非对称加密密钥中的公共密钥。
37.在存储器装置130连接到客户端计算机系统105之后,客户端计算机系统105可起始依赖于与存储器装置130的唯一标识(uid)122相关联地存储于密钥管理服务器103中的加密密钥124的一或多个操作。
38.举例来说,客户端计算机系统105可请求验证如由存储器装置130的唯一装置秘密(uds)或秘密密钥表示的存储器装置130的标识符。客户端计算机系统105可请求存储器装置130提供标识符数据,其包含存储器装置130的唯一标识(uid)122,及使用存储器装置130
的秘密密钥套用到包含于标识符数据中的消息上的数字签名。举例来说,消息可包含唯一标识(uid)122、加密随机数及计数器值。标识符数据可传输到密钥管理服务器103以使用与存储器装置130的唯一标识(uid)122相关联的对应加密密钥124进行认证。
39.在图1的系统中,存取控制服务器101经配置于客户端计算机系统105与密钥管理服务器103之间。存取控制服务器101存储客户端特权数据127及存储器装置权限数据129。
40.举例来说,客户端特权数据127可包含被允许存取密钥管理服务器103的功能性的客户端计算机系统(例如,105、

、106)的因特网协议(ip)地址的白名单。当不在白名单上的计算机系统向存取控制服务器101发送请求时,存取控制服务器101可丢弃或忽略请求。存取控制服务器101可经配置以防止对密钥管理服务器103的拒绝服务(dos)攻击。
41.图1说明经配置以允许一组客户端计算机系统(例如,105、

、106)使用密钥管理服务器103的功能性的一个存取控制服务器101的使用。一般来说,多个存取控制服务器101可经配置以允许不同组客户端计算机系统存取密钥管理服务器103。在一些实施方案中,客户端计算机系统105可使用多个存取控制服务器(例如,101)中的一或多者来存取密钥管理服务器103的功能性。
42.存取控制服务器101及客户端计算机系统105可经由非安全通信媒体(例如因特网)建立安全认证连接201。举例来说,存取控制服务器101经配置以基于客户端计算机系统105的凭证121认证客户端计算机系统105的标识符;且客户端计算机系统105经配置以基于存取控制服务器101的凭证123认证存取控制服务器101的标识符。举例来说,可由客户端计算机系统105使用存取控制服务器101的公共密钥来验证存取控制服务器101拥有与公共密钥相关联的私密密钥;且可由存取控制服务器101使用客户端计算机系统105的公共密钥来验证客户端计算机系统105拥有与公共密钥相关联的私密密钥。客户端计算机系统105及存取控制服务器101可协商会话密钥以用于在通信会话期间加密在客户端计算机系统105与存取控制服务器101之间传输的消息。
43.存储于存取控制系统101中的存储器装置权限数据129指示客户端计算机系统105是否具有正当理由存取由其唯一标识(uid)122识别的存储器装置130的密钥管理服务器103。任选地,权限数据129指示客户端计算机系统105是否具有正当理由存取一或多个存储器装置(例如,130)的密钥管理服务器103,无需由其唯一标识具体及/或个别地识别相应存储器装置(例如,130)。在一些实施方案中,权限数据129指示客户端计算机系统105是否具有正当理由存取使用一批次或群组识别识别的特定批次或群组存储器装置(例如,130)的密钥管理服务器103。
44.举例来说,如果由操作客户端计算机系统105的实体购买存储器装置130,那么存储器装置权限数据129指示操作存储器装置130的所有权特权可经由客户端计算机系统105转移到实体。因此,可使用密钥管理服务器103的功能性来接受且服务对存储器装置130操作的请求。举例来说,可作出此请求以验证存储器装置130的真实性,激活存储器装置130的安全特征,替换及/或安装存储器装置130中的一些加密密钥124,存取存储器装置130的存储器胞元107的安全部分等。然而,如果存储器装置130的唯一标识(uid)122不与存储器装置权限数据129中的客户端计算机系统105相关联,那么可丢弃或拒绝请求。
45.在一些实施方案中,密钥管理服务器103及存取控制服务器101还可经由非安全通信媒体(例如因特网)通信。密钥管理服务器103及存取控制服务器101可使用其相应凭证
(例如,123及125)建立安全认证连接203。
46.任选地,密钥管理服务器103及存取控制服务器101可使用专用通信连接进行连接及/或经配置用于改进内联网内的安全性。
47.存取控制服务器101可请求密钥管理服务器103确定是否使用从存储器装置130的uid 122的唯一装置秘密导出的加密密钥124签署来自存储器装置130的数字签名。
48.任选地,存取控制服务器101可请求密钥管理服务器103在消息或命令上产生数字签名。
49.举例来说,密钥管理服务器103可存储表示操作存储器装置130的特权的当前持有者的私密密钥;且在验证存储器装置130是真实的且客户端计算机系统105有资格请求转移特权之后,存取控制服务器101可请求密钥管理服务器103使用表示特权(例如配置存储器装置130的安全操作的特权)的当前持有者的私密密钥签署命令。命令可经配置以改变或替换存储器装置130中使用的数据的部分以产生存储器装置130的标识符数据,改变或更新特权的持有者的公共密钥,添加或改变授权用户的公共密钥以在存储器胞元107的区段中执行受限操作。受限操作的实例包含在存储器装置130中的存储器胞元107的区段中读取、写入、擦除及/或更新数据。
50.可使用存储器装置130作为主机系统的存储装置及/或存储器模块。下文结合图2描述存储装置及存储器模块的实例。一般来说,主机系统可利用包含一或多个组件(例如存储数据的存储器装置130)的存储器子系统。主机系统可提供待存储于存储器子系统处的数据且可请求待从存储器子系统检索的数据。
51.图2说明根据本公开的一些实施例的包含存储器子系统110的实例计算系统100。存储器子系统110可包含媒体,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130)或此类的组合。
52.存储器子系统110可为存储装置、存储器模块或存储装置及存储器模块的混合物。存储装置的实例包含固态驱动器(ssd)、快闪驱动器、通用串行总线(usb)快闪驱动器、嵌入式多媒体控制器(emmc)驱动器、通用快闪存储器(ufs)驱动器、安全数字(sd)卡及硬盘驱动器(hdd)。存储器模块的实例包含双列直插存储器模块(dimm)、小轮廓dimm(so-dimm)及各种类型的非易失性双列直插存储器模块(nvdimm)。
53.计算系统100可为计算装置,例如桌面计算机、膝上型计算机、网络服务器、移动装置、运载工具(例如,飞机、无人机、火车、汽车或其它交通工具)、启用物联网(iot)的装置、嵌入式计算机(例如,包含于运载工具、工业装备或网络商业装置中的嵌入式计算机)或包含存储器及处理装置的此计算装置。
54.计算系统100可包含耦合到一或多个存储器子系统110的主机系统120。图3说明耦合到一个存储器子系统110的主机系统120的一个实例。如本文中使用,“耦合到”或“与

耦合”通常是指组件之间的连接,其可为间接通信连接或直接通信连接(例如,无中介组件),无论有线还是无线,包含例如电、光学、磁性等的连接。
55.主机系统120可包含处理器芯片组(例如,处理装置118)及由所述处理器芯片组执行的软件栈。处理器芯片组可包含一或多个核心、一或多个高速缓存、存储器控制器(例如,控制器116)(例如,nvdimm控制器)及存储协议控制器(例如,pcie控制器、sata控制器)。主机系统120例如使用存储器子系统110来将数据写入到存储器子系统110及从存储器子系统
110读取数据。
56.主机系统120可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含(但不限于)串行高级技术附接(sata)接口、外围组件互连快速(pcie)接口、通用串行总线(usb)接口、光纤通道、串行附接scsi(sas)接口、双倍数据速率(ddr)存储器总线接口、小型计算机系统接口(scsi)、双列直插存储器模块(dimm)接口(例如,支持双倍数据速率(ddr)的dimm套接字接口)、开放式nand快闪接口(onfi)、双倍数据速率(ddr)接口、低功率双倍数据速率(lpddr)接口或任何其它接口。可使用物理主机接口以在主机系统120与存储器子系统110之间传输数据。当存储器子系统110通过pcie接口与主机系统120耦合时,主机系统120可进一步利用nvm快速(nvme)接口来存取组件(例如,存储器装置130)。物理主机接口可提供用于在存储器子系统110与主机系统120之间传递控制、地址、数据及其它信号的接口。图2说明存储器子系统110作为实例。一般来说,主机系统120可经由相同通信连接、多个单独通信连接及/或通信连接的组合存取多个存储器子系统。
57.主机系统120的处理装置118可为例如微处理器、中央处理单元(cpu)、处理器的处理核心、执行单元等。在一些例子中,控制器116可被称为存储器控制器、存储器管理单元及/或启动器。在一个实例中,控制器116经由耦合在主机系统120与存储器子系统110之间的总线控制通信。一般来说,控制器116可将命令或请求发送到存储器子系统110以期望存取存储器装置130、140。控制器116可进一步包含与存储器子系统110通信的接口电路系统。接口电路系统可将从存储器子系统110接收的响应转换成用于主机系统120的信息。
58.主机系统120的控制器116可与存储器子系统110的控制器115通信以执行例如在存储器装置130、140处读取数据、写入数据或擦除数据及其它此类操作的操作。在一些例子中,控制器116集成于处理装置118的相同封装内。在其它例子中,控制器116与处理装置118的封装分离。控制器116及/或处理装置118可包含硬件,例如一或多个集成电路(ic)及/或离散组件、缓冲存储器、高速缓存、或其组合。控制器116及/或处理装置118可为微控制器、专用逻辑电路系统(例如,现场可编程门阵列(fpga)、专用集成电路(asic)等)、或另一适合处理器。
59.存储器装置130、140可包含不同类型的非易失性存储器组件及/或易失性存储器组件的任何组合。易失性存储器装置(例如,存储器装置140)可为(但不限于)随机存取存储器(ram),例如动态随机存取存储器(dram)及同步动态随机存取存储器(sdram)。
60.非易失性存储器组件的一些实例包含与非(或not and)(nand)型快闪存储器及原位写入存储器,例如三维交叉点(“3d交叉点”)存储器。非易失性存储器的交叉点阵列可结合可堆叠交叉网络数据存取阵列基于体电阻的变化来执行位存储。此外,与许多基于快闪的存储器相比,交叉点非易失性存储器可执行原位写入操作,其中非易失性存储器胞元可在先前不擦除所述非易失性存储器胞元的情况下编程。nand型快闪存储器包含例如二维nand(2d nand)及三维nand(3d nand)。
61.存储器装置130中的每一者可包含一或多个存储器胞元阵列。一种类型的存储器胞元(举例来说,单电平胞元(slc))可每胞元存储一个位。其它类型的存储器胞元(例如多电平胞元(mlc)、三电平胞元(tlc)、四电平胞元(qlc)及五电平胞元(plc))可每胞元存储多个位。在一些实施例中,存储器装置130中的每一者可包含一或多个存储器胞元(例如slc、mlc、tlc、qlc、plc或此类的任何组合)阵列。在一些实施例中,特定存储器装置可包含存储
器胞元的slc部分、mlc部分、tlc部分、qlc部分及/或plc部分。可将存储器装置130的存储器胞元分组为可指用于存储数据的存储器装置的逻辑单元的页面。对于一些类型的存储器(例如,nand),可对页面分组以形成块。
62.尽管描述例如3d交叉点类型及nand类型存储器(例如,2d nand、3d nand)的非易失性存储器装置,但存储器装置130可基于任何其它类型的非易失性存储器,例如只读存储器(rom)、相变存储器(pcm)、自选择存储器、其它基于硫属化物的存储器、铁电晶体管随机存取存储器(fetram)、铁电随机存取存储器(feram)、磁随机存取存储器(mram)、自旋转移扭矩(stt)-mram、导电桥接ram(cbram)、电阻式随机存取存储器(rram)、基于氧化物的rram(oxram)、或非(nor)快闪存储器及电可擦除可编程只读存储器(eeprom)。
63.存储器子系统控制器115(或为简单起见,控制器115)可与存储器装置130通信以执行例如在存储器装置130处读取数据、写入数据或擦除数据及其它此类操作(例如,响应于由控制器116在命令总线上调度的命令)的操作。控制器115可包含硬件,例如一或多个集成电路(ic)及/或离散组件、缓冲存储器、或其组合。硬件可包含具有专用(例如,硬写码)逻辑的数字电路系统以执行本文中描述的操作。控制器115可为微控制器、专用逻辑电路系统(例如,现场可编程门阵列(fpga)、专用集成电路(asic)等)、或另一适合处理器。
64.控制器115可包含经配置以执行存储于本地存储器119中的指令的处理装置117(例如,处理器)。在所说明实例中,控制器115的本地存储器119包含嵌入式存储器,其经配置以存储用于执行各种过程、操作、逻辑流程、及控制存储器子系统110的操作(包含处置存储器子系统110与主机系统120之间的通信)的例程的指令。
65.在一些实施例中,本地存储器119可包含存储存储器指针、提取数据等的存储器缓存器。本地存储器119还可包含用于存储微代码的只读存储器(rom)。虽然图2中的实例存储器子系统110已被说明为包含控制器115,但在本公开的另一实施例中,存储器子系统110不包含控制器115,且可代替地依靠外部控制(例如,通过外部主机或与存储器子系统分离的处理器或控制器提供)。
66.一般来说,控制器115可从主机系统120接收命令或操作且可将所述命令或操作转换成指令或适当命令以实现对存储器装置130的期望存取。控制器115可负责其它操作,例如磨损均衡操作、废弃项目收集操作、错误检测及错误校正码(ecc)操作、加密操作、高速缓存操作、及与存储器装置130相关联的逻辑地址(例如,逻辑块地址(lba)、命名空间)与物理地址(例如,物理块地址)之间的地址转译。控制器115可进一步包含经由物理主机接口与主机系统120通信的主机接口电路系统。主机接口电路系统可将从主机系统接收的命令转换成存取存储器装置130的命令指令以及将与存储器装置130相关联的响应转换成主机系统120的信息。
67.存储器子系统110还可包含未说明的额外电路系统或组件。在一些实施例中,存储器子系统110可包含高速缓存或缓冲器(例如,dram)及可从控制器115接收地址且解码地址以存取存储器装置130的地址电路系统(例如,行解码器及列解码器)。
68.在一些实施例中,存储器装置130包含本地媒体控制器150,其结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器胞元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130是受管理存储器装置,其是与用于相同存储器装
置封装内的媒体管理的本地控制器(例如,本地媒体控制器150)组合的原始存储器装置。受管理存储器装置的实例是受管理nand(mnand)装置。
69.控制器115及/或存储器装置130可包含经配置以控制对存储器装置130中的存储器胞元107的存取的安全管理器113。在一些实施例中,存储器子系统110中的控制器115及/或本地媒体控制器150可包含安全管理器113的至少一部分。在其它实施例中,或组合地,主机系统120中的控制器116及/或处理装置118可包含安全管理器113的至少一部分。举例来说,控制器115、控制器116及/或处理装置118可包含实施安全管理器113的逻辑电路系统。举例来说,控制器115或主机系统120的处理装置118(例如,处理器)可经配置以执行存储于存储器中的指令以用于执行本文中描述的安全管理器113的操作。在一些实施例中,在安置于存储器子系统110中的集成电路芯片中实施安全管理器113。在其它实施例中,安全管理器113可为存储器子系统110的固件的部分、主机系统120的操作系统、装置驱动程序或应用程序或其中任何组合。
70.举例来说,当最初从存储器装置的制造商运送存储器装置130时,存储器装置130经配置具有制造商的加密密钥以向制造商提供配置存储器装置130的安全操作的特权。为促进存储器装置130安装于其中的图2的计算系统100的组装,特权可被提供或转移到计算系统100的制造商。转移可包含在认证存储器装置130的标识符之后经由存取控制服务器101激活存储器装置130的安全特征。任选地,可通过替换控制特权的加密密钥来将特权转移到计算系统100的制造商以配置存储器装置130的安全操作。在激活之后,安全管理器113可控制安装于存储器装置130中的软件/固件以操作计算系统100,且产生不仅表示存储器装置130而且表示具有存储器装置130及其它软件/硬件组件的计算系统100的标识符数据。
71.安全管理器113可不仅基于其唯一装置秘密(uds),而且基于存储于存储器装置130中以由主机系统120的处理装置118执行的指令来构建存储器装置130的标识符。举例来说,安全管理器113可确定待在计算系统100的启动时间期间执行的指令集的加密散列值。安全管理器113可通过比较在启动时间计算的散列值与预计算散列值来检查指令集的完整性。如果两个散列值彼此一致,那么可认为指令集尚未被篡改及/或损坏。因此,可在计算系统100中执行指令集以进一步实施安全管理器113的安全操作及/或计算系统100的启动操作。任选地,散列值的验证可为使用通过在计算系统100的启动时间期间执行指令集的至少一部分而产生的凭证来认证作为端点的计算系统100的部分。
72.举例来说,可至少部分基于指令集的散列值来产生存储器装置130的标识符。因此,当通过使用凭证认证来验证存储器装置130的标识符时,可认为指令集的散列值已被验证为正确;且用于产生凭证且启动计算系统100的指令集尚未被篡改及/或损坏。
73.计算系统100中的指令集的执行导致计算系统100确定计算系统100的其它组件的标识符,例如处理装置118的标识符、控制器116的标识符、存储器子系统控制器115的标识符、存储器装置140的标识符、及/或软件程序(例如,操作系统、装置驱动程序、应用程序等)的标识符。具有存储器装置130的计算系统100中的组件的所述一组标识符(包含存储器装置130的标识符)可经组合以产生用于签署凭证的加密密钥。凭证基于每当启动计算系统100时及/或每当存储器装置130执行安全操作时增加的单调递增计数器值。任选地,凭证可展示用于产生用于签署凭证的加密密钥的一些标识符。凭证还可包含在启动时间产生的dice别名公共密钥。
74.凭证可经由计算机网络传达到远程计算机(例如,存取控制服务器101)以进行认证。当认证凭证时,可推断用于产生凭证的指令集的完整性是完整的,且计算系统100具有与由用于产生用于签署凭证的加密密钥的标识符表示的所述一组组件组合的存储器装置130。此外,包含于凭证中的单调计数器值允许其接收者验证其是最近产生的,且因此其可被信任。凭证持有dice别名公共密钥,其可与(例如,存储于远程计算机上,或实时计算以响应于凭证而使用的)dice别名公共密钥进行比较。如果两个密钥匹配,那么远程计算机可信任由端点发送且用dice别名私密密钥签署的另外消息。
75.图3说明根据一个实施例的具有安全管理器的集成电路存储器装置。举例来说,可使用图3的集成电路存储器装置130来实施图2的存储器子系统110中的存储器装置130及/或连接到图1中的客户端计算机系统105的存储器装置130。
76.集成电路存储器装置130可围封于单个集成电路封装中。集成电路存储器装置130包含可形成于一或多个集成电路裸片中的多个存储器区131、

、133。存储器区131、

、133中的典型存储器胞元可经编程以存储一或多个数据位。
77.本地媒体控制器150可包含经配置以控制对存储器区131、

、133中的至少一者的存取的安全管理器113的至少一部分。
78.举例来说,安全管理器113可使用存取控制密钥153来实施一类操作的特权。当在集成电路存储器装置130中接收到此类型的操作的请求时,安全管理器113可使用存取控制密钥153来验证是否使用对应加密密钥数字签署所述请求。举例来说,请求者可使用加密密钥数字签署所述请求或质询消息,使得可使用存取控制密钥153来验证数字签名。当使用存取控制密钥153执行的数字签名验证成功时,由存储器装置130执行所请求操作。否则,可拒绝或忽略请求。
79.举例来说,特权可为允许将数据写入存储器区(例如,131)中以防止篡改存储于存储器区中的数据,例如计算系统100的启动加载程序171、计算系统100的固件/软件/操作系统、存储器装置130的安全设置等。
80.存储器装置130可具有识别存储器装置130的唯一标识151及证实具有唯一标识151的存储器装置130的真实性的秘密加密密钥155。举例来说,可从存储器装置130的唯一装置秘密(uds)及其它数据(例如存储于存储器区(例如,131)中的非秘密数据的信息及/或计算系统100的其它组件的信息)产生加密密钥155。
81.集成电路存储器装置130具有通信接口147以从存储器子系统110的控制器115接收具有地址135的命令。响应于识别需要存取控制的存储器区131的地址135,安全管理器113使用存取控制密钥153执行加密操作以验证请求来自具有表示授权存取的对应加密密钥的请求者。在验证存取的授权、权限或特权之后,存储器装置130可使用地址解码器141提供从存储器区131检索的存储器数据。集成电路存储器装置130的地址解码器141将地址135转换成控制信号以选择集成电路存储器装置130中的存储器胞元群组;且集成电路存储器装置130的本地媒体控制器150执行操作以确定存储于地址135处的存储器胞元中的存储器数据。
82.存储器区131可存储启动加载程序171。在启动时间,安全管理器113可通过计算启动加载程序171的加密散列值而测量启动加载程序171。可使用启动加载程序171的加密散列值来产生集成电路存储器装置130及/或计算系统100的标识符数据。启动加载程序171
(及/或操作系统或装置驱动程序、或安全应用程序)可包含实施安全管理器113的部分的指令。在启动时间期间,指令可确定其中集成电路存储器装置130是组件的计算系统100的配置。
83.举例来说,图2的计算系统100的配置可包含存储器子系统110的软件/固件组件。可将软件/固件存储于其它存储器装置(例如,140)或存储器装置130中的存储器区133中。举例来说,集成电路存储器装置130中的存储器区133中的指令173可包含计算系统100的操作系统、装置驱动程序、固件及/或软件应用程序。存储器子系统110的一些主要软件/固件组件可在安全管理器113的存取控制下存储于存储器区外部及/或集成电路存储器装置130外部。软件/固件组件的标识符可包含软件/固件组件的组件标识、版本号、序列号及/或加密散列值。
84.图2的计算系统100的配置可包含存储器子系统110的硬件组件,例如处理装置118及/或控制器116。主机系统120可进一步包含外围装置,例如网络适配器、通信装置、另一存储器子系统等。硬件组件的标识符可包含序列号、地址、标识号等。
85.可使用包含唯一标识151的计算系统100的配置信息来产生秘密加密密钥155以签署使用至少来自单调计数器的值产生的凭证。凭证识别计数器值、存储器装置130的唯一标识151及/或存储器装置130安装于其中的计算系统100的唯一标识。
86.可使用密钥管理服务器103来确认凭证的真实性,此是因为密钥管理服务器103具有唯一装置秘密(uds)且可在制造存储器装置130之后产生由存储器装置130产生的相同加密密钥(例如,155),无需经由通信通道传达秘密。
87.图4展示根据一个实施例的控制存储器装置的方法。可由可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微代码、装置的硬件、集成电路等)、软件/固件(例如,在处理装置上运行或执行的指令)或其组合的处理逻辑执行图4的方法。在一些实施例中,至少部分由图1的存取控制服务器101执行图4的方法。尽管以特定序列或顺序展示,但除非另外指定,否则可修改过程的顺序。因此,所说明的实施例应仅理解为实例,且可以不同顺序执行所说明过程,且可并行地执行一些过程。此外,在各个实施例中可省略一或多个过程。因此,并非每一实施例中需要全部过程。其它过程流程是可能的。
88.在框301,第一计算机系统(例如,存取控制服务器101)与客户端计算机系统105建立安全认证连接201。
89.举例来说,为建立安全认证连接201,存取控制服务器101从客户端计算机系统105接收第一凭证121。第一凭证121指示客户端计算机系统105的标识符;且存取控制服务器101确认第一凭证121。举例来说,存取控制服务器101可存储客户端计算机系统105的公共密钥且使用所述公共密钥来确认使用对应于所述公共密钥的私密密钥签署第一凭证121。
90.类似地,为建立安全认证连接201,存取控制服务器101提供第二凭证123以指示存取控制服务器101的标识符。客户端计算机系统105经配置以在建立安全认证连接201之前确认第二凭证123。
91.建立安全认证连接201可包含建立会话密钥以加密经由安全认证连接201传输的数据。
92.为减少拒绝服务(dos)攻击对存取控制服务器101的性能的影响,存取控制服务器101可存储客户端计算机系统(例如,105、

、106)的因特网协议(ip)地址列表。存取控制服
务器101可至少部分基于客户端计算机系统105的地址是否在列表中而确定是否建立安全认证连接201。
93.在框303,第一计算机系统(例如,存取控制服务器101)经由连接201从客户端计算机系统105接收关于存储器装置130的请求。
94.请求可包含存储器装置130的标识符数据。
95.在框305,第一计算机系统(例如,存取控制服务器101)基于存储于第一计算机系统中的数据确定客户端计算机系统105有资格操作存储器装置130。
96.举例来说,数据可包含指示客户端计算机系统105的操作者是存储器装置130的新拥有者的客户端特权数据127。在一个实施方案中,存储数据以使存储器装置(例如,130)的唯一标识(例如,122)与有资格作为存储器装置(例如,130)安装于其中的端点的拥有者或制造商控制存储器装置(例如,130)的客户端计算机系统105的客户端特权数据127相关联。额外客户端特定数据经存储以在从密钥管理服务器103检索密钥时用于记录、报告及发票生成以促进拥有者特权及/或其它特权的转移。存取控制数据及发票生成数据的分离允许使用存取控制服务器101以从密钥管理服务器103检索表示操作存储器装置(例如,130)的特权的加密密钥,而不要求存取控制服务器101具有关于请求加密密钥的客户或作出请求的客户端计算机系统的任何个人可识别信息。因此,布置可在经由存取控制服务器101作出的请求中提供客户端合作伙伴匿名性,同时仍确保仅具有正确凭证的客户端计算机系统105将被允许存取。
97.举例来说,数据可包含指示客户端计算机系统105的操作者是否已购买使用存储器装置130的安全特征的特权的存储器装置权限数据129。
98.在框307,响应于确定客户端计算机系统105有资格操作或控制存储器装置130,第一计算机系统(例如,存取控制服务器101)与第二计算机系统(例如,密钥管理服务器103)通信以产生对请求的响应。使用与存储器装置130的唯一标识122相关联地存储于第二计算机系统(例如,密钥管理服务器103)中的至少一加密密钥124产生响应。经由第二计算机系统(例如,密钥管理服务器103)使用加密密钥124执行操作而产生响应,无需将加密密钥124传输到第二计算机系统(例如,密钥管理服务器103)外部。举例来说,密钥管理服务器103可具有硬件安全模块(hsm)以确保加密密钥124在其存储及使用于密钥管理服务器103中的安全性。由于加密密钥124未被提供到存取控制服务器101,因此在存取控制服务器101中无需针对加密密钥124的安全性的硬件安全模块(hsm)。替代地,可在相同计算机系统中实施存取控制服务器101及密钥管理服务器103。
99.举例来说,从客户端计算机系统105接收的请求可包含存储器装置130的标识符数据;且响应可包含根据加密密钥124存储器装置130是否真实的指示。
100.举例来说,加密密钥124可为由第二计算机系统(例如,密钥管理服务器103)且由存储器装置130基于存储器装置130的唯一装置秘密独立且单独产生的秘密密钥。在制造存储器装置130期间将存储器装置130的唯一装置秘密注册且存储于第二计算机系统(例如,密钥管理服务器103)中。随后,存储器装置130的唯一装置秘密分别作为秘密保存在存储器装置130内及密钥管理服务器103内且不会传达/显露到存储器装置130及密钥管理服务器103外部以改进安全性。
101.任选地,第一计算机系统(例如,存取控制服务器101)与第二计算机系统(例如,密
钥管理服务器103)通信以在其之间建立单独安全认证连接203以产生响应。举例来说,存取控制服务器101可请求密钥管理服务器103确定是否通过密码计算从存储器装置130的唯一装置秘密导出存储器装置130的标识符数据。
102.举例来说,响应可包含可在存储器装置130中执行以将特权转移到客户端计算机系统106的操作者,及/或激活存储器装置130的至少一个安全特征的命令。举例来说,命令包含使用特权的当前持有者的加密密钥套用到命令上的数字签名;且在藉由存储器装置130确认数字签名之后可在存储器装置130中执行所述命令。
103.举例来说,响应可包含可用于将数字签名套用到命令上使得可在存储器装置130中确认数字签名之后由存储器装置130执行所述命令的加密密钥。当命令不具有有效数字签名时,存储器装置130可拒绝或忽略命令。
104.图5说明计算机系统400的实例机器,在所述实例机器内可执行用于导致所述机器执行本文中论述的方法论中的任一或多者的指令集。在一些实施例中,计算机系统400可对应于存取控制服务器(例如,图1的存取控制服务器101),所述存取控制服务器包含、耦合到或利用存储器子系统(例如,图2的存储器子系统110)或可用于执行存取控制器205的操作(例如,执行指令以执行对应于参考图1到4描述的存取控制服务器101的操作)。在替代实施例中,机器可连接(例如,联网)到lan、内联网、外联网及/或因特网中的其它机器。机器可在客户端-服务器网络环境中作为服务器或客户端机器操作,在对等(或分布式)网络环境中作为对等机器操作,或在云计算基础设施或环境中作为服务器或客户端机器操作。
105.机器可为个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、网络设备、服务器、网络路由器、交换机或网桥、或能够执行指定由所述机器采取的动作的指令集(循序或以其它方式)的任何机器。此外,虽然说明单个机器,但术语“机器”还应被视为包含个别或联合执行一(或多个)指令集以执行本文中论述的方法论中的任一或多者的任何机器集合。
106.实例计算机系统400包含经由总线430(其可包含多个总线)彼此通信的处理装置402、主存储器404(例如,只读存储器(rom)、快闪存储器、动态随机存取存储器(dram)(例如同步dram(sdram)或rambus dram(rdram))、静态随机存取存储器(sram)等)及数据存储系统418。
107.处理装置402表示一或多个通用处理装置,例如微处理器、中央处理单元或类似者。更特定来说,处理装置可为复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、或实施其它指令集的处理器、或实施指令集的组合的处理器。处理装置402还可为一或多个专用处理装置,例如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器或类似者。处理装置402经配置以执行指令426以用于执行本文中论述的操作及步骤。计算机系统400可进一步包含用以经由网络420通信的网络接口装置408。
108.数据存储系统418可包含机器可读媒体424(还称为计算机可读媒体),其上存储器现本文中描述的方法论或功能中的任一或多者的一或多个指令集426或软件。指令426在其由还构成机器可读存储媒体的计算机系统400、主存储器404及处理装置402执行期间还可完全或至少部分驻留在主存储器404及/或处理装置402内。机器可读媒体424、数据存储系统418、及/或主存储器404可对应于图2的存储器子系统110。
109.在一个实施例中,指令426包含用以实施对应于存取控制服务器101(例如,参考图1到4描述的存取控制服务器101)的功能性的指令。虽然机器可读媒体424在实例实施例中展示为单个媒体,但术语“机器可读存储媒体”应被视为包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还应被视为包含能够存储或编码指令集以由机器执行且可导致机器执行本公开的方法论中的任一或多者的任何媒体。因此,术语“机器可读存储媒体”应被视为包含(但不限于)固态存储器、光学媒体及磁性媒体。
110.已依据对计算机存储器内的数据位的操作的算法及符号表示呈现前述详细描述的一些部分。这些算法描述及表示是由数据处理领域的技术人员用以向所属领域的其它技术人员最有效地表达其工作实质的方式。算法在本文且通常被设想为导致所期望结果的自相一致的操作序列。操作是需要物理量的物理操纵的操作。通过,尽管不一定,但这些量采用能够被存储、组合、比较及以其它方式操纵的电或磁信号的形式。已被证明是方便的是,有时出于习惯用法的原因,原则上将这些信号称为位、值、元素、符号、字符、项、数字或类似物。
111.然而,应记住,所有这些及类似术语都应与适当物理量相关联,且仅仅是应用于这些量的方便标签。本公开可涉及计算机系统或类似电子计算装置的动作及过程,所述计算机系统或类似电子计算装置操纵表示为计算机系统的寄存器及存储器内的物理(电子)量的数据并将所述数据转换成类似地表示为计算机系统存储器或寄存器或其它此类信息存储系统内的物理量的其它数据。
112.本公开还涉及用于执行本文中的操作的设备。此设备可出于预期目的特殊地被构造,或其可包含由存储于计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可经存储于计算机可读存储媒体中,例如(但不限于)任何类型的磁盘(包含软盘、光盘、cd-rom及磁光盘)、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁或光卡或适于存储电子指令的任何类型的媒体,其各自耦合到计算机系统总线。
113.本文中呈现的算法及显示器并不固有地涉及任何特定计算机或其它设备。各种通用系统可结合根据本文中的教示的程序使用,或可证明构造更专门的设备来执行方法是方便的。用于各种这些系统的结构将如下文描述中陈述那样出现。另外,本公开并非是参考任何特定编程语言进行描述。应了解,各种编程语言可用于实施本文所描述的本公开的教示。
114.本公开可经提供作为计算机程序产品或软件,其可包含其上存储有指令的机器可读媒体,所述指令可用于对计算机系统(或其它电子装置)进行编程以执行根据本公开的过程。机器可读媒体包含用于存储呈可由机器(例如计算机)读取的形式的信息的任何机构。在一些实施例中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储媒体、光学存储媒体、快闪存储器组件等。
115.在此描述中,各种功能及操作被描述为由计算机指令执行或由计算机指令引起,以简化描述。然而,所属领域的技术人员将认识到,此类表达的意思是功能由通过一或多个控制器或处理器(例如一微处理器)执行计算机指令所致。替代地或组合地,可使用具有或不具有软件指令的专用电路系统(例如使用专用集成电路(asic)或现场可编程门阵列(fpga))来实施功能及操作。可使用无软件指令的硬接线电路系统或结合软件指令来实施实施例。因此,技术既不限于硬件电路系统及软件的任何特定组合,也不限于由数据处理系
统执行的指令的任何特定来源。
116.在前述说明中,已参考本公开的特定实例实施例描述其实施例。应明白,在不背离所附权利要求书中所陈述的本公开的实施例的更宽精神及范围的情况下,可对特定实例实施例做出各种修改。因此,说明书及图式应被视为意在说明而非限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1