CN106462718B - 存储设备的快速数据保护 - Google Patents

存储设备的快速数据保护 Download PDF

Info

Publication number
CN106462718B
CN106462718B CN201580015099.5A CN201580015099A CN106462718B CN 106462718 B CN106462718 B CN 106462718B CN 201580015099 A CN201580015099 A CN 201580015099A CN 106462718 B CN106462718 B CN 106462718B
Authority
CN
China
Prior art keywords
key
equipment
credible
encryption key
runing time
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
CN201580015099.5A
Other languages
English (en)
Other versions
CN106462718A (zh
Inventor
I.巴斯莫夫
M.B.G.奈斯特伦
N.T.费尔古森
A.M.塞门科
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106462718A publication Critical patent/CN106462718A/zh
Application granted granted Critical
Publication of CN106462718B publication Critical patent/CN106462718B/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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

计算设备使用包括可信运行时间和内联密码处理器的数据加密与解密系统。可信运行时间提供可信执行环境,而内联密码处理器和存储设备读取与写入操作联机提供数据的解密与加密。在定义存储设备的部分(例如,分区)时,可信运行时间生成加密密钥并将加密密钥提供给内联密码处理器,而内联密码处理器使用加密密钥来加密写入该部分的数据和解密从该部分中读取的数据。通过将密钥与用户或其他实体的认证证书相关联,随后能够保护针对该部分的访问。可信运行时间基于与认证证书相关联的认证密钥来保护加密密钥,从而仅响应于适当的认证证书被提供来允许针对加密密钥的随后访问。

Description

存储设备的快速数据保护
背景技术
计算机已变得日益普遍并被用于各种不同的设置中,这导致其中用户希望使得在计算机存储设备上存储的数据被加密的情形。这些情形能够是用户的个人愿望、规定用户的计算机必须加密在个人计算机的存储设备上存储的企业数据的企业政策等等的结果。然而,等待整个存储设备被加密(其取决于存储设备的大小而能够是若干分钟或小时的量级)对用户而言能够是令人沮丧的,从而导致差的用户体验。
发明内容
提供这个概述部分来以简化形式介绍下面在具体描述部分中进一步描述的概念的选择。这个概述部分并不打算来识别所请求保护的主题的关键特性或基本特性,也不打算用于限制所请求保护的主题的范畴。
根据一个或多个方面,在与计算设备中的其他程序相隔离的计算设备的可信运行时间(trusted runtime)中执行方法。在可信运行时间上接收为存储设备的部分生成密钥的请求。响应于生成密钥的请求,该密钥被生成并在计算设备的电源周期(power cycle)上使用可信运行时间来存留(persist)。也给计算设备的内联(inline)密码处理器供应该密钥,以致基于该密钥来加密针对存储设备的该部分的随后写入。另外,响应于该部分的保护被启用的请求,返回该部分的保护被启用的指示,而不管该部分的至少局部(part)未被加密。
根据一个或多个方面,计算设备包括内联密码处理器以及与计算设备的操作系统相隔离的可信运行时间。可信运行时间被配置成为存储设备的部分生成密钥、在计算设备的电源周期上存留该密钥以及响应于存储设备的该部分的保护被启用的请求而返回存储设备的该部分的保护被启用的指示,而不管存储设备的该部分中的一个或多个局部是未加密的。内联密码处理器被配置成从可信运行时间接收该密钥、基于该密钥来加密针对存储设备的该部分的随后写入并基于该密钥来解密自存储设备的该部分中的随后读取。
附图说明
参考附图来描述具体描述部分。在这些附图中,参考数字之中最左边的(多个)数字识别该参考数字第一次出现在其中的附图。在说明书和附图中在不同的实例中相同的参考数字的使用能够指示相似或相同的项。在附图中表示的实体能够指示一个或多个实体,并因而能够在讨论中可交换地引用单数或复数形式的实体。
图1是图解根据一个或多个实施例的实现存储设备的快速数据保护的示例计算设备的框图。
图2图解根据一个或多个实施例的实现存储设备的快速数据保护的示例系统。
图3是图解根据一个或多个实施例的用于为存储设备的新定义部分生成加密密钥的示例处理的流程图。
图4是图解根据一个或多个实施例的用于启用对于存储设备的部分的保护的示例处理的流程图。
图5是图解根据一个或多个实施例的用于锁定存储设备的受保护部分的示例处理的流程图。
图6是图解根据一个或多个实施例的用于解锁存储设备的受保护部分的示例处理的流程图。
图7是图解根据一个或多个实施例的用于禁用存储设备的部分的保护的示例处理的流程图。
图8是图解根据一个或多个实施例的用于为了部分的恢复或迁移而揭示加密密钥的示例处理的流程图。
图9图解代表可以实现在本文描述的各种技术的一个或多个系统和/或设备的示例系统。
具体实施方式
在本文讨论用于存储设备的快速数据保护。计算设备使用包括可信运行时间和内联密码处理器的数据加密与解密系统。可信运行时间提供可信或受保护的执行环境,并且内联密码处理器和存储设备读取与写入操作联机(in-line)提供数据的解密与加密。在本文讨论的快速数据保护与存储设备的各个部分诸如存储设备的分区一起工作。在创建存储设备的部分时,可信运行时间为该部分生成加密密钥并将该加密密钥提供给内联密码处理器。内联密码处理器使用该加密密钥来加密写入该部分的数据和解密从该部分读取的数据,但是不在计算设备的电源周期上存留该加密密钥。可信运行时间安全地在计算设备的电源周期上存留该加密密钥,从而允许操作系统请求该加密密钥的使用来加密与解密存储在该部分上的数据,但是不向操作系统揭示该加密密钥。
通过将该密钥与特定认证证书(authentication credential)相关联,随后能够保护针对该部分的访问。用户或其他实体的认证证书被提供给可信运行时间,而可信运行时间基于认证证书来保护加密密钥(例如,使用用户或其他实体的认证密钥来加密该加密密钥)。可信运行时间随后存留受保护的加密密钥。因而,随后仅响应于提供适当的认证证书而能够利用可信运行时间来获得针对加密密钥的访问,因而将针对存储在该部分上的数据的访问限制于提供适当的认证证书的用户或实体。
因而,依据该部分的创建,使用加密密钥来加密与解密写入该部分的数据。这种加密与解密独立于来自用户的使得该部分上的数据被加密的任何指令或请求而发生。响应于使得该部分上的数据被加密的随后用户请求,基于用户的认证证书来门控或限制针对加密密钥的访问。进一步,响应于这样的用户请求,能够快速返回该部分上的数据被加密或被保护的指示;能够返回该指示而不等待该部分被加密,这是因为先前写入该部分的任何数据已被加密,并且随后写入该部分的数据也将使用加密密钥来加密。然而,只有能够提供正确的认证证书的用户才能够授权内联密码处理器得到针对加密密钥的访问,并因而允许内联密码处理器随后解密在该部分上存储的数据以及加密数据以便存储在该部分上。
图1是图解根据一个或多个实施例的实现存储设备的快速数据保护的示例计算设备100的框图。计算设备100能够是各种不同类型的设备,诸如物理设备或虚拟设备。例如,计算设备100能够是物理设备,诸如台式计算机、服务器计算机、膝上型或上网本计算机、平板或记事本计算机、移动站、娱乐器具、通信耦合至显示设备的机顶盒、电视或其他显示设备、蜂窝或其他无线电话、游戏机、汽车计算机等等。计算设备100也能够是虚拟设备,诸如在物理设备上运行的虚拟机。虚拟机能够运行在各种不同类型(例如,上面列出的各种类型之中的任一类型)的物理设备之中的任一物理设备上。因而,计算设备100的范围可以自具有大量存储器和处理器资源的全资源设备(例如个人计算机、游戏机)到具有有限存储器和/或处理资源的低资源设备(例如传统的机顶盒、手持游戏机)。
计算设备100包括数据加密与解密系统102、存储设备104、存储设备保护系统106和操作系统108。数据加密与解密系统102管理写入存储设备104以及从存储设备104中读取的数据的加密与解密。存储设备104能够使用各种不同的技术诸如闪存设备、磁盘、光盘、其组合等等来实现。虽然在图1中图解单个存储设备104,但是应该注意:计算设备100能够包括任何数量的存储设备。
数据加密与解密系统102包括可信运行时间112和内联密码处理器114。可信运行时间提供可信或受保护的执行环境并且提供密钥至内联密码处理器114,如下面更详细讨论的。内联密码处理器114和自存储设备104的设备读取操作以及至存储设备104的设备写入操作联机解密和加密数据,如下面更详细讨论的。
存储设备保护系统106管理证书的认证并基于认证的证书来管理可信运行时间112的配置(例如,基于认证的证书来向可信运行时间112供应认证密钥)。操作系统108管理计算设备100中的各种硬件设备的操作以及附加程序在计算设备100上的运行。操作系统108以及在计算设备100上运行的其他程序能够经由数据加密与解密系统102从存储设备104中读取并写入存储设备104。
存储设备104被图解成作为计算设备100的一部分而被包括。例如,存储设备104能够是耦合至计算设备100的内部总线的内部存储设备。通过另一示例,存储设备104能够是作为在与实现系统102、106和108之中的一个或多个系统的芯片相同的电路板上的一个或多个芯片来实现的内部存储设备,能够是在与系统102、106和108之中的一个或多个系统相同的芯片中实现的内部存储设备等等。
可供选择地,存储设备104能够位于计算设备100的外部并且采用各种不同的有线和/或无线方式被耦合到计算设备100。例如,存储设备104能够经由通用串行总线(USB)连接、无线USB连接、IEEE 1394连接、外部SATA(eSATA)连接、Bluetooth(蓝牙)连接等等被耦合到计算设备100。存储设备104能够被设计成(同时或在不同的时间)被耦合到不同的计算设备。在一个或多个实施例中,存储设备104是诸如被设计成容易耦合至计算设备100以及从计算设备100中去耦合并被传输至其他计算设备的可移除设备。这样的可移除存储卷(volume)的示例是拇指驱动器或USB闪存设备。可供选择地,存储设备104能够采用其他形式,诸如是经由网络(例如因特网、局域网(LAN)、蜂窝或其他电话网络、内联网、存储区域网(SAN)、网络附着储存器(NAS)、个人区域网(PAN)、其他公共和/或专有网络、其组合等等)被耦合至计算设备100的网络存储设备。
存储设备保护系统106能够采用各种不同的方式来实现。虽然被图解成与操作系统108相分离,但是存储设备保护系统106能够至少部分地在操作系统108中进行实现。存储设备保护系统106能够附加地或可供选择地采用其他的方式来实现,诸如作为预操作系统环境的一部分、作为预启动执行环境的一部分等等来实现。
图2图解根据一个或多个实施例的实现存储设备的快速数据保护的示例系统200。系统200作为图1的计算设备100的一部分来实现。系统200包括存储设备保护系统106、可信运行时间112、内联密码处理器114和存储设备104。在本文讨论的技术参考存储设备104的部分来讨论。存储设备104的部分至少指的是存储设备的特定的逻辑或物理局部。存储设备104的部分能够指的是存储设备104的局部,其被称为分区并被对待(例如,被显示在文件夹或目录中),就好像它是单独的物理存储设备似的。然而,在本文讨论的技术能够类似地在其他粒度上被应用并且与存储设备的各种其他部分一起使用。例如,在本文讨论的技术能够类似地应用于存储设备之中是文件、文件夹或目录的各部分、整个存储设备、多个存储设备的集合等等而非分区。
存储设备保护系统106包括认证模块202和可信运行时间配置模块204。可信运行时间112能够被配置成只在提供有效的认证证书来访问数据时才允许内联密码处理器114解密存储设备104上的数据,如下面更详细讨论的。认证模块202认证由实体提供的认证证书并确定是否所提供的认证证书是有效的。在一个或多个实施例中,实体是系统200的用户,但是实体可供选择地能够是其他的设备、组件、模块等等。存储设备保护系统106作为密钥管理系统来操作,使得对应于有效的认证证书的认证密钥可用于可信运行时间112。
认证证书能够采用各种不同的形式,诸如秘密短语(例如,口令)、与凭证相对应的私钥、临时秘密(例如,一次性口令)等等的知识。认证模块202能够保持或否则获得各种数据的记录来相对于所提供的认证证书进行比较,以便确定是否所提供的认证证书是有效的,认证模块202能够将各种处理或算法之中的任一处理或算法应用于所提供的认证证书来确定是否所提供的认证证书是有效的,等等。
响应于认证模块202确定所提供的认证证书是有效的,存储设备保护系统106获得与提供了认证证书的实体相关联的认证密钥。认证密钥能够采用各种方式来获得,诸如利用存储设备保护系统106来提供、从利用存储设备保护系统106所保持的储存器中检索、从提供了认证证书的实体中(例如,从用户的智能卡中)接收、从由提供了认证证书的实体所提供的认证证书或其他信息中生成认证密钥,等等。
可信运行时间配置模块204通过利用可信运行时间112支持的一组命令来与可信运行时间112通信,从而给可信运行时间112提供各种命令来执行各种操作。例如,这些操作能够包括:启用对于存储设备104的部分的保护,锁定存储设备104的受保护部分,解锁存储设备104的部分,禁用存储设备104的保护,以及密钥的恢复和迁移。这些命令之中的一些命令能够包括将利用存储设备保护系统106所获得的认证密钥提供给可信运行时间112,如下面更详细讨论的。
可信运行时间112包括密钥生成模块206、密钥保护模块208、内联密码处理器配置模块210和持久性密钥储存器212。可信运行时间112是允许可信运行时间112中程序的执行与在相同设备上运行的操作系统相隔离的环境。可信运行时间在存储器中(阻止操作系统访问由被隔离程序在执行时使用的存储空间)、在处理器中(阻止操作系统在执行被隔离程序时访问寄存器或处理器的其他状态)以及在储存器中(阻止操作系统或任何外部方在操作期间以及在计算设备被断电的同时访问由被隔离程序所使用的存储位置)隔离程序的执行。因而,可信运行时间112允许模块在计算设备上执行和在计算设备上执行的操作系统与任何其他程序(例如,未在可信运行时间112中执行)相隔离且独立的程序。在计算设备上执行的操作系统或其他程序只能使用利用可信运行时间112暴露的接口(例如,一组接口命令)在可信运行时间中访问程序。
可信运行时间112能够采用各种不同的方式来实现。在一个或多个实施例中,可信运行时间112作为计算设备的ARM架构处理器上的ARM TrustZone来实现。可供选择地,可信运行时间112能够采用其他方式来实现,诸如利用计算设备的单独处理器(例如,与操作系统在其上面执行的处理器或处理器核心相分离的处理器或处理器核心)来实现。可供选择地,可信运行时间能够利用由计算设备的虚拟机管理程序或其他虚拟机管理器提供或促进的附加安全模式来实现。
密钥生成模块206生成将用于加密在存储设备104的各部分上的数据的加密密钥。密钥生成模块206能够使用各种公共和/或专有技术之中的任何一种来生成加密密钥。在一个或多个实施例中,密钥生成模块206为存储设备104的每一个部分生成不同的加密密钥,并且能够将这些密钥保持在持久性密钥储存器212中。保持在持久性密钥储存器212中的密钥被保持成与为其生成这些密钥的存储设备104的相应部分相关联。能够在持久性密钥储存器212中保持一个或多个(例如,多数个(x))密钥,诸如为存储设备104的每一个部分保持一个密钥。持久性密钥储存器212能够采用各种不同的方式来实现并且允许储存器212中的密钥在计算设备的电源周期上进行存留。计算设备的电源周期指的是计算设备被断电并随后再次被通电或计算设备被重新启动或硬件被复位。因而,在实现系统200的计算设备已被断电并再次被通电之后,或者在计算设备已被重新启动之后,这些密钥保留在持久性密钥储存器212中。
密钥保护模块208在某些情况下诸如在对于存储设备104的部分的保护被启用时保护(例如,加密)在持久性密钥储存器212中的密钥,如下面更详细讨论的。内联密码处理器配置模块210与内联密码处理器114通信,从而提供加密密钥给内联密码处理器114,如下面更详细讨论的。
在一个或多个实施例中,操作系统(例如,图1的操作系统108)能够通过利用可信运行时间112支持的一组命令与可信运行时间112通信。这些命令能够允许某些操作被执行,诸如锁定存储设备的受保护部分。在一个或多个实施例中,包括被提供给可信运行时间112的认证密钥的命令由存储设备保护系统106来提供,而不需要使得认证密钥被提供给可信运行时间的其他命令(例如,锁定存储设备的受保护部分)能够由操作系统108或存储设备保护系统106来提供。应该注意:无论是从操作系统108还是从存储设备保护系统106接收命令,可信运行时间112都不向操作系统108或存储设备保护系统106公开利用密钥生成模块206所生成的加密密钥。
可供选择地,不将受保护密钥保持在持久性密钥储存器212中,密钥生成模块208能够将受保护的加密密钥返回至操作系统。操作系统能够任选地存储受保护的加密密钥,以致在计算设备的电源周期上存留受保护的加密密钥。密钥保护模块208知道用于保护(例如,加密)加密密钥的密钥并且不向操作系统揭示该密钥。操作系统因此不访问加密密钥,但是操作系统能够将受保护的加密密钥提供给密钥保护模块208,而密钥保护模块能够反过来从受保护的密钥中检索加密密钥。因而,可信运行时间112能够利用操作系统来存储一个或多个受保护的密钥而不是(或者可供选择地,另外)将受保护的密钥保持在持久性密钥储存器212中。
内联密码处理器114包括加密与解密模块214、管理模块216和加密密钥储存器218。加密密钥从可信运行时间112中进行接收并作为加密密钥被存储在加密密钥储存器218中。能够在加密密钥储存器218中存储一个或多(例如,多数个(y))加密密钥。在一个或多个实施例中,加密密钥储存器218对于存储设备104的每一个部分包括一个加密密钥。一旦被存储在加密密钥储存器218中,加密密钥被保持在加密密钥储存器218中,直至(例如,从可信运行时间112)接收到删除加密密钥的命令,或直至电源周期发生(例如,计算设备被断电,计算设备被重新启动,等等)。虽然加密密钥没有被存留在加密密钥储存器218中,但是在电源周期发生之后,可信运行时间112能够再次给内联密码处理器提供加密密钥,以便包括在加密密钥储存器218中(任选地,仅在从持久性密钥储存器212中的受保护的加密密钥中获得之后,如下面更详细讨论的)。
内联密码处理器114接收和响应I/O请求220。I/O请求220来自操作系统(例如,图1的操作系统108)或可供选择地来自在实现该系统200的计算设备上运行的其他程序。在作为I/O请求220的一部分所接收的数据被写入存储设备104的部分之前,加密与解密模块214加密该数据。在从存储设备104的部分中读取的数据作为读取I/O请求220的一部分被返回至请求方之前,加密与解密模块214也解密该数据。
在其中加密密钥储存器218存储多个加密密钥的实施例中,能够作为I/O请求220的一部分来提供将由内联密码处理器114用于针对I/O请求220来加密或解密数据的加密密钥的指示。该指示能够采用各种不同的形式,诸如(例如,在创建该部分或解锁某部分时由可信运行时间提供的,如下面更详细讨论的)加密密钥的识别符、该请求所应用于的部分的指示等等。在一个或多个实施例中,加密密钥的这个识别符是其中存储该加密密钥的内联密码处理器的寄存器的识别符。
可供选择地,不需要提供将由内联密码处理器114使用的加密密钥的这样的指示。例如,内联密码处理器114或可信运行时间112能够保持哪一个加密密钥用于存储设备104的哪一个部分的记录,在这种情况下不需要提供这样的指示。通过另一示例,如果加密密钥储存器218包括单个加密密钥,则不需要提供这样的指示。
应该注意:虽然能够由内联密码处理器114接收用于加密与解密内容的加密密钥的指示并且利用可信运行时间112将加密密钥提供给内联密码处理器114,但是内联密码处理器114并不向内联密码处理器114外部的设备或程序公开这些加密密钥。在特定条件下,诸如在换入和换出加密密钥储存器218中的加密密钥时,如下面更详细讨论的,可以由内联密码处理器114公开加密密钥的受保护版本,但是除了在这样的特定条件之下,(受保护或未受保护的)加密密钥并不被内联密码处理器114公开。
管理模块216管理内联密码处理器114的操作,其任选地包括管理与可信运行时间112进行的通信。在一个或多个实施例中,可信运行时间112使用安全的(例如,加密的)通信信道、经由另一模块或组件与内联加密处理器114的管理模块216通信。例如,可信运行时间112能够给管理模块216提供加密密钥,其中管理模块将加密密钥存储在加密密钥储存器218中。在其他实施例中,诸如通过将加密密钥直接存储在加密密钥储存器218的寄存器中,可信运行时间112能够直接与内联密码处理器114通信。管理模块216也管理如上所述在特定条件下公开加密密钥的受保护版本。
内联密码处理器114至少部分地采用硬件(例如,作为一个或多个硬件芯片)来实现并且和存储设备104的定期读取与写入操作联机。因而,能够利用内联密码处理器114来加密写入存储设备的部分的所有数据,并且能够利用内联密码处理器114来解密从存储设备的部分读取的所有数据。一般地,内联密码处理器114是密码硬件,其具有一个或多个能够存储加密密钥的寄存器并且允许操作系统或其他程序引用和使用这些寄存器(例如,使得数据被加密),但是不允许操作系统或其他程序提取寄存器的内容。
在一个或多个实施例中,内联密码处理器114被实现为存储设备104的存储控制器的一部分。可供选择地,内联密码处理器114能够利用其他方式来实现,诸如在用于视频记录或回放的视频路径(例如,视频卡或其他硬件)中、在用于音频记录或回放的音频路径(例如,音频卡或其他硬件)中、在用于发送或接收针对另一设备的数据的通信路径(例如,网络卡或其他硬件)中等等进行实现。
加密与解密模块214能够使用各种公共和/或专有技术之中的任何一种技术、基于加密密钥储存器218中的加密密钥来解密和解密数据。在一个或多个实施例中,加密与解密模块214使用对称密钥密码术,其中相同的密钥(加密密钥)用于加密与解密。可供选择地,加密与解密模块214能够使用非对称密钥密码术,其中不同的密钥用于加密与解密。在这样的实施例中,虽然在加密密钥储存器218中仅图解一个加密密钥,但是密钥生成模块206生成加密密钥和解密密钥二者,并且加密密钥储存器218保持加密密钥和解密密钥二者。加密与解密模块214因而在加密将被写入存储设备104的部分的数据时使用储存器218中的加密密钥,并且在解密从存储设备104的部分中读取的数据时使用储存器218中的解密密钥。因此,应该注意:在本文提及使用加密密钥的解密的讨论中,在其中正使用非对称密钥密码术的情形中这样的引用针对单独的解密密钥。
在一个或多个实施例中,加密密钥存储器218能够存储高达特定数量(y)的加密密钥,但是存储设备104可以包括多于那个特定数量的部分。在这样的情形中,加密密钥在加密密钥储存器218中酌情地被换入与换出(swap in and out),以致利用I/O请求220所识别的加密密钥被包括在加密密钥储存器218中。加密密钥的交换能够采用各种方式来实现。例如,如果利用I/O请求220所识别的加密密钥未被包括在加密密钥储存器218中,则管理模块216能够向可信运行时间112请求并从可信运行时间112接收所识别的加密密钥。
通过另一示例,管理模块216能够使得加密密钥被保护(例如,使用仅为内联密码处理器114所知晓的秘密密钥来加密),并且受保护的加密密钥被返回至操作系统。如果利用I/O请求220所识别的加密密钥未被包括在加密密钥储存器218中,则管理模块216能够向操作系统请求并从操作系统接收所识别的加密密钥的受保护版本,然后解密该加密密钥并在加密密钥储存器218中存储该加密密钥。因而,操作系统本身能够参与加密密钥的交换。在这样的情形中,管理模块216能够任选地在特定时间量流逝之后或者响应于特定事件(例如,计算设备被断电或被重新启动)来改变用于保护加密密钥的秘密密钥。因而,在特定时间量流逝或者特定事件发生之后,因为密钥已改变,所以利用操作系统保持的受保护密钥不再是由内联密码处理器114可用的。
可信运行时间112和内联密码处理器114的使用允许系统200为在存储设备104上创建的每一个部分生成不同的密钥,并且在数据被写入/读取时加密/解密存储在该部分中的所有数据。虽然能够在存储设备104的寿命早期创建各部分并且存储设备104能够被潜在不可信的各方操纵(handle),但是即使这样的各方物理访问存储设备104和/或对于在实现该系统200的计算设备上安装的操作系统具有管理特权,该部分加密密钥也决不被暴露给这样的各方。
系统200支持各种不同的操作,如上所述。例如,这些操作包括为存储设备104的新定义的部分生成加密密钥、启用对于存储设备104的部分的保护、锁定存储设备104的受保护部分、解锁存储设备104的部分、禁用存储设备104的保护以及密钥的恢复与迁移。如下在更多细节中讨论这些操作。
为新创建的部分生成加密密钥
部分创建指的是存储设备104的新部分的创建或定义。能够在存储设备104上创建一个或多个部分。这些部分能够被创建,以响应来自计算设备的用户、计算设备的管理员、另一设备或模块等等的请求。部分的创建包括各种动作,其包括建立和保持描述该部分的各种数据结构,诸如存储设备的哪些局部(例如,盘的哪些扇区)被包括在该部分中。该部分能够使用各种公共和/或专有技术之中的任何一种技术来创建。另外,作为该部分的创建的一部分,可信运行时间被请求来为新创建的(也被称为新定义的)部分生成加密(密钥)。
图3是图解根据一个或多个实施例的用于为存储设备的新定义的部分生成加密密钥的示例处理300的流程图。处理300利用计算设备的可信运行时间诸如图1和2的可信运行时间112来执行,并且能够采用软件、固件、硬件或其组合来实现。处理300被显示为一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理300是用于为存储设备的新定义的部分生成加密密钥的示例处理;为存储设备的新定义的部分生成加密密钥的附加讨论参考不同的附图而被包括在本文中。
在处理300中,接收为存储设备的新定义的部分生成加密密钥的请求(动作302)。能够采用命令的形式来接收请求并且能够从各种不同的模块中接收请求。例如,能够从图1的操作系统108、图1或图2的存储设备保护系统106等等中接收请求。例如,该请求能够从创建或定义存储设备的新定义的部分的程序或模块中进行接收。这个部分能够使用各种公共和/或专有技术、采用各种方式之中的任何一种方式来创建或定义。
响应于所接收的请求,生成新的加密密钥(动作304)。新的加密密钥能够采用各种方式中的任何一种方式来生成,如上所述。
另外,新生成的加密密钥使用可信运行时间来存留(动作306)。新生成的加密密钥能够采用不同的方式来存留。在一个或多个实施例中,新生成的加密密钥被保持在可信运行时间的持久性密钥储存器中。可供选择地,加密密钥能够采用其他方式来存留。例如,能够生成(例如,通过使用仅为可信运行时间所知晓的秘密密钥加密该加密密钥来生成)加密的加密密钥,并将加密的加密密钥提供给操作系统。操作系统因而能够保持加密的加密密钥,从而解除可信运行时间保持加密密钥的需要。
不管如何存留新生成的加密密钥,在电源周期上存留该加密密钥。例如,可信运行时间的持久性密钥储存器能够在电源周期上存留该加密密钥,如上面所讨论的。通过另一示例,操作系统能够管理加密的加密密钥在非易失性存储器中的存储,其中非易失性存储器在电源周期上存留加密的加密密钥。
新生成的加密密钥也被提供给内联密码处理器(动作308)。提供新生成的加密密钥给内联密码处理器给内联密码处理器供应新生成的加密密钥,从而允许内联密码处理器基于新生成的加密密钥来加密写入该部分的数据和解密从该部分中读取的数据。使用加密密钥来加密与解密数据的方式基于由内联密码处理器执行加密与解密的方式而变化。
新生成的加密密钥的识别符被返回至请求方(动作310)。识别符能够采用各种不同的形式之中的任一形式,但是允许识别(例如,用于不同的部分)不同的加密密钥。因而,如果内联密码处理器正存储多个加密密钥,其中对于存储设备的多个部分之中的每一个部分存储一个加密密钥,则能够识别用于特定部分的正确的加密密钥。例如,操作系统能够发出包括将使用的特定加密密钥的识别符的读取和写入请求。应该注意:加密密钥的这个识别符仅允许操作系统向内联密码处理器识别将使用哪个加密密钥;识别符并不提供或以其他方式允许操作系统获得该加密密钥。
因而,由内联密码处理器加密写入该部分的所有数据,并由内联密码处理器解密从该部分中读取的所有数据。除了可信运行时间和内联密码处理器之外,没有组件、模块或设备访问或能够得到针对新生成的加密密钥的访问,且可信运行时间或内联密码处理器将都不向可信运行时间和内联密码处理器外部的任何组件、模块或设备揭示该加密密钥,如上所述。
应该注意:在该部分的创建之后,针对存储在该部分的数据的访问不受限制。虽然存储在该部分中的数据被加密,但是不需要为了读取加密的数据而向可信运行时间提供认证证书。
处理300能够被重复任何次数来在存储设备上创建新的部分。
启用对于部分的保护
启用对于部分的保护指的是将该部分与特定认证证书相关联,从而只允许认证的实体访问该部分。例如,用户能够请求使得该部分被保护并结果使得该部分与用户的认证证书相关联,从而仅在提供该用户的认证证书时才允许访问存储在该部分上的数据(并允许新的数据被存储在该部分上)。
图4是图解根据一个或多个实施例的用于启用对于存储设备的部分的保护的示例处理400的流程图。处理400利用计算设备的可信运行时间诸如图1和2的可信运行时间112来完成,并且能够采用软件、固件、硬件或其组合来实现。处理400被显示成一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理400是用于启用对于存储设备的部分的保护的示例处理;启用对于存储设备的部分的保护的附加讨论参考不同的附图而被包括在本文中。
在处理400中,接收启用对于存储设备的部分的保护的请求(动作402)。这个请求也被称为加密存储设备的该部分的请求。该请求能够采用命令的形式来接收并且能够从各种不同的模块中进行接收。在一个或多个实施例中,从图1或图2的存储设备保护系统106中接收该请求,但是可供选择地能够从其他模块诸如图1的操作系统108中接收该请求。
响应于该请求,基于认证密钥来保护用于该部分的加密密钥(动作404)。认证密钥是与提供给存储设备保护系统106的用户证书相关联的认证密钥。在一个或多个实施例中,认证密钥是与在动作402中接收到该请求的时间上当前登录到实现图2的系统200的计算设备中的实体(例如,用户)相关联的认证密钥。可供选择地,认证密钥能够是与提供用户证书至实现图2的系统200的计算设备的另一实体相关联的认证密钥。
加密密钥能够采用各种方式基于认证密钥来保护(也被称为利用认证密钥来包裹加密密钥)。在一个或多个实施例中,加密算法使用认证密钥作为密钥来加密该加密密钥。各种公共和/或专有加密算法之中的任何一种算法能够用于加密该加密密钥。一旦被加密,能够使用认证密钥和适当的解密算法来检索(解密)该加密密钥,但是不能在没有认证密钥的情况下检索该加密密钥(或者它在计算上很难被检索)。
能够由可信运行时间采用各种不同的方式来获得用于保护加密密钥的认证密钥。在一个或多个实施例中,在动作402由存储设备保护系统106作为请求的一部分来提供认证密钥。可供选择地,能够由存储设备保护系统106或可供选择地另一模块或设备以其他方式或在其他时间提供认证密钥。
用于该部分的受保护的加密密钥被保持(动作406)。用于该部分的受保护的加密密钥能够采用不同的方式来保持。在一个或多个实施例中,受保护的加密密钥被保持在可信运行时间的持久性密钥储存器中。在可信运行时间的持久性密钥储存器中的用于该部分的加密密钥利用用于该部分的受保护的加密密钥来替换,因此可信运行时间不再以明文(in the clear)保持加密密钥-未受保护的加密密钥被移除并且只有受保护的加密密钥被保持。因而,如果未被提供认证密钥,则可信运行时间不再能够为存储设备的该部分确定加密密钥。可供选择地,受保护的加密密钥能够采用其他方式来保持。例如,受保护的加密密钥能够被提供给操作系统,并且从持久性密钥储存器中移除(例如,删除)加密密钥。因而,如果未被提供认证密钥,则可信运行时间不再能够为存储设备的该部分确定加密密钥。
可信运行时间也使得受保护的加密密钥被存留在计算设备的电源周期上。可信运行时间能够采用不同的方式诸如通过将受保护的加密密钥存储在可信运行时间的持久性密钥储存器中或者通过将受保护的加密密钥提供给操作系统而使得受保护的加密密钥被存留在计算设备的电源周期上。
该部分被保护的指示也被返回至请求方(动作408)。这个指示也能够被称为该部分被加密的指示。该指示能够被快速返回至请求方-可信运行时间不需要在返回该指示之前等待已被写入该部分的数据被加密,这是因为由内联密码处理器加密写入该部分的所有数据。虽然该部分的局部可能尚未被加密,但是那些未被加密的局部是尚未写入数据的局部(如果数据已被写入那些局部,则它已被内联密码处理器加密了)。
在启用对于该部分的保护之后,为了可信运行时间导出加密密钥并提供加密密钥至内联密码处理器而需要认证密钥。除了经由受保护的加密密钥之外,加密密钥不再可用于可信运行时间(例如,在可信运行时间中已利用受保护的加密密钥替换了该加密密钥),以致可信运行时间不能在没有认证密钥的情况下检索加密密钥。
锁定受保护的部分
锁定受保护的部分指的是阻止访问先前对其启用了保护的部分。例如,在用户请求启用部分的保护之后的某个时间点上,用户能够请求使得该部分被锁定。结果,针对该部分的访问被阻止,以致存储在该部分上的数据不能被解密,并且新的加密数据不能被写入该部分。
图5是图解根据一个或多个实施例的用于锁定存储设备的受保护的部分的示例处理500的流程图。处理500利用计算设备的可信运行时间诸如图1和2的可信运行时间112来完成,并且能够采用软件、固件、硬件或其组合来实现。处理500被显示成一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理500是用于锁定存储设备的受保护部分的示例处理;锁定存储设备的受保护部分的附加讨论参考不同的附图而被包括在本文中。
在处理500中,接收锁定存储设备的受保护部分的请求(动作502)。该请求能够以命令的形式来接收并且能够从各种不同的模块中进行接收。在一个或多个实施例中,该请求从图1或图2的存储设备保护系统106中进行接收,但是该请求可供选择地能够从诸如图1的操作系统108之类的其他模块中进行接收。该请求能够由用户或其他模块发起,并且能够是显式请求(例如,因为用户希望之而将锁定受保护部分的请求)或隐式请求(例如,因为用户正在计算设备上注销他或她的帐户而将锁定受保护部分的请求)。
在一个或多个实施例中,存储设备保护系统106或操作系统108在动作502中发出该请求作为阻止访问该部分的处理的一部分。存储设备保护系统106或操作系统108也能够在阻止访问该部分中执行附加动作,其包括停止发送I/O请求至该部分、拆卸该部分等等。
响应于该请求,从内联密码处理器中移除加密密钥(动作504)。能够利用可信运行时间采用各种方式诸如向内联密码处理器发出请求来从内联密码处理器的加密密钥储存器中删除加密密钥的命令、可信运行时间将新值(例如全零、全一等等)写入其中存储加密密钥的内联密码处理器的寄存器等等而从内联密码处理器中移除加密密钥。
另外,从可信运行时间中移除加密密钥的任何未受保护的拷贝(动作506)。能够出现其中可信运行时间在提供加密密钥至内联密码处理器之后将加密密钥的拷贝保持某一时间量(例如,几分钟或更长时间,以促进内联密码处理器中加密密钥的交换)的情形。如果加密密钥的任何未受保护的拷贝保留在可信运行时间中,则在动作506中删除那些拷贝。然而,应该注意:如果受保护的加密密钥被存储在持久性密钥储存器中,则不删除持久性密钥储存器中受保护的加密密钥。
在锁定受保护的部分之后,可信运行时间或内联密码处理器都没有加密密钥的未受保护的拷贝。可信运行时间可以具有(或获得)加密密钥的受保护拷贝,并且为了可信运行时间导出加密密钥以及再次提供加密密钥至内联密码处理器而需要认证密钥。
解锁部分
解锁受保护的部分指的是允许访问先前锁定的部分。例如,在锁定部分之后的某个时间点上,用户能够请求使得该部分被解锁。结果,针对该部分的访问再次被允许,以致能够解密存储在该部分上的数据,并且数据能够被加密并被写入该部分。
图6是图解根据一个或多个实施例的用于解锁存储设备的受保护部分的示例处理600的流程图。处理600利用计算设备的可信运行时间诸如图1和2的可信运行时间112来完成,并且能够采用软件、固件、硬件或其组合来实现。处理600被显示成一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理600是用于解锁存储设备的受保护部分的示例处理;解锁存储设备的受保护部分的附加讨论参考不同的附图而被包括在本文中。
在处理600中,接收解锁存储设备的部分的请求(动作602)。该请求能够以命令的形式来接收并且能够从各种不同的模块中进行接收。在一个或多个实施例中,该请求从图1或图2的存储设备保护系统106中进行接收,但是该请求可供选择地能够从诸如图1的操作系统108之类的其他模块中进行接收。该请求能够由用户或其他模块发起并且能够是显式请求(例如,因为用户希望之而将解锁该部分的请求)或隐式请求(例如,因为用户正在计算设备上登录其帐户而将解锁该部分的请求)。
响应于该请求,从用于该部分的受保护的加密密钥中获得用于该部分的加密密钥(动作604)。用于该部分的加密密钥基于受保护的加密密钥和认证密钥二者来获得。用于该部分的受保护的加密密钥被保持在持久性密钥储存器中或者能够从操作系统中进行接收,如上面所讨论的。认证密钥是与提供给存储设备保护系统106的用户证书相关联的认证密钥。在一个或多个实施例中,认证密钥是与在动作402中接收到请求的时间上当前登录到实现图2的系统200的计算设备中的实体(例如用户)相关联的认证密钥。可供选择地,认证密钥能够是与提供用户证书至实现图2的系统200的计算设备的另一实体相关联的认证密钥。
能够采用各种不同的方式、至少部分地基于先前用于保护加密密钥的方式从受保护的加密密钥中获得加密密钥。在一个或多个实施例中,解密算法使用认证密钥作为密钥来解密该加密密钥。各种公共和/或专有加密算法之中的任何一种算法能够用于解密该加密密钥。
能够利用可信运行时间采用各种不同的方式来获得用于获得加密密钥的认证密钥。在一个或多个实施例中,由存储设备保护系统106提供认证密钥作为动作602中的请求的一部分。可供选择地,能够由存储设备保护系统106或者可供选择地由另一模块或设备采用其他的方式或者在其他的时间上提供认证密钥。
所获得的加密密钥被提供给内联密码处理器(动作606)。将所获得的加密密钥提供给内联密码处理器给内联密码处理器供应所获得的加密密钥,从而允许内联密码处理器基于所获得的加密密钥来加密写入该部分的数据和解密从该部分中读取的数据。使用加密密钥来加密与解密数据的方式基于由内联密码处理器用于执行加密与解密的方式而变化。
所获得的加密密钥的识别符被返回至请求方(动作608)。识别符能够采用各种不同的形式之中的任一形式,但是允许(例如,用于不同的部分)不同的加密密钥被识别,如上所述。应该注意:加密密钥的这个识别符仅允许操作系统向内联密码处理器识别将使用哪个加密密钥;该识别符并不提供或以其他方式允许操作系统获得该加密密钥。
在解锁该部分之后,给内联密码处理器供应用于该部分的加密密钥。数据能够被加密并被写入该部分以及从该部分中读取并被解密。虽然内联密码处理器具有加密密钥的未受保护的拷贝,但是没有内联密码处理器外部的其他设备、模块或组件以及可信运行时间访问该加密密钥。在一个或多个实施例中,一旦在内联密码处理器中供应了加密密钥,可信运行时间丢弃加密密钥的所有未受保护的拷贝。可供选择地,可信运行时间可以将加密密钥的拷贝保持特定的时间量。
禁用部分的保护
禁用部分的保护指的是将该部分与特定的认证证书解除关联(disassociate),从而不再将针对该部分的访问仅限制于认证的实体。例如,用户能够请求使得该部分的保护被禁用,并结果使得该部分与用户的认证证书解除关联,从而允许访问存储在该部分上的数据(并允许新的数据被存储在该部分上)而不考虑提供用户的什么认证证书(如果有的话)。
图7是图解根据一个或多个实施例的用于禁用存储设备的部分的保护的示例处理700的流程图。处理700利用计算设备的可信运行时间诸如图1和2的可信运行时间112来完成,并且能够采用软件、固件、硬件或其组合来实现。处理700被显示成一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理700是用于禁用存储设备的部分的保护的示例处理;禁用存储设备的部分的保护的附加讨论参考不同的附图而被包括在本文中。
在处理700中,接收禁用存储设备的部分的保护的请求(动作702)。该请求能够采用命令的形式来接收并且能够从各种不同的模块中进行接收。在一个或多个实施例中,该请求从图1或图2的存储设备保护系统106中进行接收,但是该请求可供选择地能够从诸如图1的操作系统108之类的其他模块中进行接收。
响应于该请求,从用于该部分的受保护的加密密钥中获得用于该部分的加密密钥(动作704)。用于该部分的加密密钥基于受保护的加密密钥和认证密钥二者来获得。用于该部分的受保护的加密密钥被保持在持久性密钥存储器中或者能够从操作系统中进行接收,如上所述。认证密钥是与提供给存储设备保护系统106的用户证书相关联的认证密钥。在一个或多个实施例中,认证密钥是与在动作402中接收到请求的时间上当前登录到实现图2的系统200的计算设备中的实体(例如,用户)相关联的认证密钥。可供选择地,认证密钥能够是与提供用户证书至实现图2的系统200的计算设备的另一实体相关联的认证密钥。
能够采用各种不同的方式、至少部分地基于先前用于保护加密密钥的方式从受保护的加密密钥中获得加密密钥。在一个或多个实施例中,解密算法使用认证密钥作为密钥来解密加密密钥。各种公共和/或专有加密算法之中的任何一种算法能够用于解密加密密钥。
能够利用可信运行时间采用各种不同的方式来获得用于获得加密密钥的认证密钥。在一个或多个实施例中,认证密钥由存储设备保护系统106作为动作602中的请求的一部分来提供。可供选择地,能够由存储设备保护系统106或者可供选择地由另一模块或设备以其他方式或者在其他时间上提供认证密钥。
可供选择地,在一个或多个实施例中,可信运行时间能够选择在解锁该部分的同时在其存储器中具有未受保护的密钥的拷贝。在这样的实施例中,可信运行时间不需要为了在动作704中获得未受保护的加密密钥而解密受保护的加密密钥。
在动作704中获得的加密密钥使用可信运行时间来存留(动作706)。与上面关于图3的动作306的讨论相类似,加密密钥能够采用不同的方式来存留。例如,加密密钥能够被保持在可信运行时间的持久性密钥储存器中,或者能够生成加密的加密密钥(例如,通过使用只为可信运行时间所知晓的秘密密钥加密该加密密钥来生成)以及加密的加密密钥被提供给操作系统。在电源周期上存留该加密密钥,如上所述。
另外,受保护的加密密钥被移除(动作708)。在其中受保护的加密密钥被保持在持久性密钥储存器的情形中,所获得的加密密钥有效地替换在持久性密钥储存器中受保护的加密密钥,例如改写受保护的加密密钥。因而,受保护的加密密钥被从持久性密钥储存器中移除。可供选择地,在其中受保护的加密密钥被返回至操作系统并由操作系统保持的情形中,可信运行时间通知操作系统删除受保护的加密密钥。因而,受保护的加密密钥被从操作系统中移除。
在禁用该部分的保护之后,针对存储在该部分中的数据的访问不受限制。虽然存储在该部分中的数据被加密,但是不需要为了读取加密的数据而提供认证证书至可信运行时间。在一个或多个实施例中,在禁用该部分的保护之前,以某一其他方式删除或保护该部分中的数据。
如上所述,甚至在启用该部分的保护和解锁该部分时,加密密钥对于操作系统或存储设备保护系统106而言是未知的。因而能够禁用该部分的保护,并且计算设备被传递至不同的用户而没有在可信运行时间或内联密码处理器中的加密密钥对于计算设备的先前用户或由计算设备的先前用户所使用的存储设备保护系统而言是已知的风险。
部分恢复和迁移
在可信运行时间中保持加密密钥或受保护的加密密钥使得加密密钥并因而使得该部分在存储设备被移至不同的计算设备时是不可访问的。部分恢复和迁移指的是允许可信运行时间揭示受保护的加密密钥或未受保护的加密密钥,以便允许该部分的恢复或迁移。例如,用户能够请求使得包括该部分的存储设备被迁移至不同的计算设备并且为了这样做而使得受保护的加密密钥被揭示。通过另一示例,在用户丢失他或她的认证证书的情况下,用户能够请求为了恢复目的而使得加密密钥向管理员或其他设备进行揭示。
图8是图解根据一个或多个实施例的用于为了部分的恢复或迁移而揭示加密密钥的示例处理800的流程图。处理800利用计算设备的可信运行时间诸如图1和2的可信运行时间112来完成,并且能够采用软件、固件、硬件或其组合来实现。处理800被显示成一组动作并且不限于所显示的用于执行各种动作的操作的顺序。处理800是用于为了部分的恢复或迁移而揭示加密密钥的示例处理;为了部分的恢复或迁移而揭示加密密钥的附加讨论参考不同的附图而被包括在本文中。
在处理800中,接收对于存储设备的部分的加密密钥的迁移或恢复的请求(动作802)。该请求能够采用命令的形式来接收,并且能够从各种不同的模块中进行接收。在一个或多个实施例中,该请求从图1或图2的存储设备保护系统106中进行接收,但是该请求可供选择地能够从诸如图1的操作系统108之类的其他模块中进行接收。
响应于该请求,加密密钥或受保护的加密密钥根据请求来揭示(动作804)。可信运行时间能够任选地采取各种认证或批准动作来验证它实际上应该揭示所请求的密钥。该密钥的未受保护的拷贝能够被揭示,或者可供选择地,取决于该请求,能够揭示密钥的受保护的拷贝。可供选择地,能够揭示使用可信运行时间的秘密密钥保护的(例如,基于秘密密钥加密的)密钥的拷贝。其他设备或组件能够存储这样的受保护的密钥,但是只有可信运行时间具有能够用于从受保护的加密密钥中获得加密密钥的秘密密钥。可供选择地,如果希望的话,可信运行时间能够选择向另一用户或设备(例如,管理员)揭示秘密密钥。
在一个或多个实施例中,从备份系统诸如管理员或网络上的其他设备接收请求802。备份系统提供将用于加密该加密密钥的密钥的指示(例如,提供该密钥)并且加密的加密密钥被提供给备份系统。计算设备的用户和操作系统不需要访问用于加密该加密密钥的密钥。
另外,在可信运行时间中存留加密密钥已被揭示的指示(动作806)。例如,该指示与所揭示的密钥一起被存留在持久性密钥储存器中。该指示能够任选地指示如何揭示了该密钥(例如,是揭示了未受保护的加密密钥还是揭示了受保护的加密密钥)。
操作系统或存储设备保护系统106能够在动作806中检索这个指示并且基于这个指示根据需要采取行动。例如,存储设备保护系统106可以向计算设备的用户显示用于该部分的加密密钥已被揭示的警告,并且在提供认证密钥给可信运行时间之前接收继续使用该部分的用户的批准。
返回到图2,在本文讨论与各部分有关的各种操作。应该注意:这些操作是示例,并且系统200可以不支持所有的这些操作。例如,系统200可以不支持部分恢复和迁移。另外,应该注意:系统200能够支持与各部分有关的附加操作。例如,系统200可以支持密钥替换操作,其导致可信运行时间为部分生成新的加密密钥并且利用新生成的加密密钥来替换在持久性密钥储存器中的先前加密密钥或利用受保护的新生成的密钥来替换先前受保护的加密密钥。虽然这样的密钥替换将阻止先前写入该部分的任何数据随后被解密(因为用于解密这样的数据的加密密钥已被删除),但是如果先前加密密钥已被可信运行时间揭示(例如,由于部分恢复和迁移操作),则这样的密钥替换对于用户而言可以允许该部分的继续使用和内心的宁静(peace of mind)。可供选择地,这样的密钥替换能够虑及利用新生成的密钥进行的该部分的重新加密、保存先前写入该部分的数据(以及如果备份系统使得用于解密这样的先前写入的数据的加密密钥是可用的,或者加密密钥以其他方式曾是可用的,将被解密的先前写入该部分的数据)。
也应该注意:虽然存储设备104的各部分被讨论成使得写入该部分的所有数据被加密并使得从该部分读取的所有数据被解密,但是在一些情形中不需要执行这样的加密与解密。在一个或多个实施例中,部分的至少局部能够任选地包括没有被加密的数据。这样的局部可以包括与该部分有关的元数据,诸如存储在该部分上的密钥保护器的识别符、如何访问该部分等等。这样的数据不需要被加密或解密。这样的数据能够采用不同的方式来识别,诸如操作系统提供没有加密密钥将被使用的指示(例如,提供与没有加密相关联的识别符,诸如空识别符,或完全不提供识别符)。
另外,能够出现其中操作系统希望读取和写入以其加密的形式存储在部分上的数据的情形。例如,操作系统可以将加密的数据从一个存储设备传递至另一存储设备、备份加密的数据等等。操作系统能够提交指示没有加密密钥将被使用的I/O请求,以致内联密码处理器114将所请求的加密的内容提供给操作系统。
因而,也应该注意:即使某部分可以被锁定,也能够支持对于该部分的一些I/O请求。例如,仍然可以从该部分中读取未加密的数据,或者加密的数据本身被返回至操作系统以响应I/O请求,这是因为没有加密密钥用于解密这样的数据。
在本文讨论的技术支持各种不同的使用情景。基于利用可信运行时间生成并被提供给内联密码处理器的加密密码在存储设备的部分上加密数据。加密密钥因而能够被生成来响应计算设备上的用户请求,并且用户不需要依靠第三方(例如计算设备的制造商)给计算设备供应加密密钥。此外,可信运行时间或内联密码处理器都不需要向可信运行时间和内联密码处理器外部的其他程序公开加密密钥-不需要给第三方或其他设备提供加密密钥。
另外,响应于使得该部分被加密或被保护的用户请求,能够快速(立即)返回该部分上的数据被加密或被保护的指示。该指示能够被返回而无需等待该部分上的数据被加密,这是因为写入该部分的任何数据自其创建以来已被加密。该部分的一些局部可能没有被加密,但是那些局部是该部分之中自创建该部分以来没有数据被写入的局部。用户因而不需要为了该部分上的数据被加密而等待延长的时间段(例如,若干分钟到几个小时)。相反,该指示能够快速(例如,在阈值时间量诸如1-5秒之内)被返回并且能够任选地与为了使得该部分被加密或被保护而进行的呼叫(call)的一部分同步被返回。
虽然在本文参考特定的模块讨论特定的功能,但是应该注意:在本文讨论的个别模块的功能能够被分成多个模块,和/或多个模块的至少一些功能能够被组合到单个模块中。另外,在本文被讨论为执行动作的特定模块包括执行该动作的那个特定模块自身或可供选择地包括调用或以其他方式访问执行该动作(或与那个特定模块相结合来执行该动作)的另一组件或模块的那个特定模块。因而,执行动作的特定模块包括执行该动作的那个特定模块本身和/或被执行该动作的那个特定模块所调用或以其他方式所访问的另一模块。
图9一般在900图解示例系统,其包括代表可以实现在本文描述的各种技术的一个或多个系统和/或设备的示例计算设备902。例如,计算设备902可以是服务供应商的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统和/或任何其他合适的计算设备或计算系统。
所图解的示例计算设备902包括彼此通信耦合的处理系统904、一个或多个计算机可读媒体906和一个或多个I/O接口908。虽然未显示,但是计算设备902可以进一步包括将各种组件彼此耦合的系统总线或其他的数据和命令传递系统。系统总线能够包括不同总线结构之中的任一总线结构或组合,诸如内存总线或内存控制器、外围总线、通用串行总线和/或利用各种总线架构之中的任一总线架构的处理器或本地总线。也设想各种其他示例,诸如控制和数据线。
处理系统904代表使用硬件来执行一个或多个操作的功能。相应地,处理系统904被图解成包括可以被配置成处理器、功能块等等的硬件元素910。这可以包括采用硬件作为专用集成电路或者使用一个或多个半导体形成的其他逻辑设备的实现方式。硬件元素910不受用于形成这些硬件元素的材料或其中采用的处理机制的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读媒体906被图解成包括存储器/储存器912。存储器/储存器912代表与一个或多个计算机可读媒体相关联的存储器/存储容量。存储器/储存器912可以包括易失性媒体(诸如随机存取存储器(RAM))和/或非易失性媒体(诸如只读存储器(ROM)、闪存、光盘、磁盘等等)。存储器/储存器912可以包括固定媒体(例如RAM、ROM、固定硬盘驱动器等等)以及可移除媒体(例如闪存、可移除硬盘驱动器、光盘等等)。计算机可读媒体906可以采用各种其他方式来配置,如下面进一步描述的。
(多个)输入/输出接口908代表允许用户将命令和信息输入计算设备902并且也允许信息使用各种输入/输出设备被呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置成检测物理接触的电容或其他传感器)、照相机(例如,其可以采用可见或不可见波长诸如红外频率来作为手势检测不牵涉触摸的移动)等等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡、触觉反应设备等等。因而,计算设备902可以采用各种方式来配置,如下面进一步描述的,以支持用户交互。
计算设备902也包括数据加密与解密系统914。数据加密与解密系统914提供各种数据加密与解密支持,其包括可信运行时间和内联密码处理器,如上所述。例如,数据加密与解密系统914能够实现图1和2的可信运行时间112和内联密码处理器114。
在本文可以在软件、硬件元素或程序模块的一般上下文中描述各种技术。一般地,这样的模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等等。如在本文使用的术语“模块”、“功能”和“组件”一般代表软件、固件、硬件或其组合。在本文描述的技术的特性是与平台无关的,这意味着:这些技术可以在具有各种处理器的各种计算平台上进行实现。
所描述的模块和技术的实现方式可以被存储在某种形式的计算机可读媒体上或者在某种形式的计算机可读媒体上进行传送。计算机可读媒体可以包括可以利用计算设备902来访问的各种媒体。通过示例而非限制,计算机可读媒体可以包括“计算机可读存储媒体”和“计算机可读信号媒体”。
“计算机可读存储媒体”指的是能够进行信息的持久性存储的媒体和/或设备和/或有形的储存器,其与纯粹的信号传输、载波或信号本身形成对比。因而,计算机可读存储媒体指的是非信号承载媒体。计算机可读存储媒体包括采用适合于存储信息诸如计算机可读指令、数据结构、程序模块、逻辑元素/电路或其他数据的方法或技术来实现的硬件,诸如易失性和非易失性、可移除和不可移除媒体和/或存储设备。计算机可读存储媒体的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字多用途盘(DVD)或其他光储存器、硬盘、磁带盒、磁带、磁盘储存器或其他磁存储设备或其他存储设备、有形媒体或制品,其适于存储所需信息并且可以利用计算机来访问。
“计算机可读信号媒体”指的是被配置来诸如经由网络向计算设备902的硬件发送指令的信号承载介质。信号媒体典型地可以收录(embody)计算机可读指令、数据结构、程序模块或调制数据信号中的其他数据诸如载波、数据信号或其他传输机制。信号媒体也包括任何信息递送媒体。术语“调制数据信号”意味着这样的信号,其使得其特征之中的一个或多个特征采用将信息编码在该信号中的方式进行设置或改变。通过示例而非限制,通信媒体包括有线媒体诸如有线网络或直接有线连接和无线媒体诸如声学、RF、红外与其他无线媒体。
如前所述,硬件元素910和计算机可读媒体906代表采用硬件形式实现的指令、模块、可编程设备逻辑和/或固定设备逻辑,其可以在一些实施例中被采用来实现在本文描述的技术的至少一些方面。硬件元素可以包括集成电路或片上系统的组件、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及采用硅或其他硬件设备的其他实现方式。在这个上下文中,硬件元素可以作为执行通过利用该硬件元素以及被利用来存储指令以便执行的硬件设备例如先前描述的计算机可读存储媒体所收录的指令、模块和/或逻辑来定义的程序任务的处理设备来操作。
上述的组合也可以被采用来实现在本文描述的各种技术和模块。相应地,软件、硬件或程序模块与其他程序模块可以作为在某种形式的计算机可读存储媒体上收录的一个或多个指令和/或逻辑来实现和/或利用一个或多个硬件元素910来实现。计算设备902可以被配置来实现与软件和/或硬件模块相对应的特定指令和/或功能。相应地,例如通过使用处理系统的计算机可读存储媒体和/或硬件元素910,至少部分地可以采用硬件来实现由计算设备902作为软件可执行的作为模块的模块的实现方式。这些指令和/或功能可以是由一个或多个制品(例如,一个或多个计算设备902和/或处理系统904)可执行/可操作来实现在本文描述的技术、模块和示例。
如在图9中进一步图解的,示例系统900当在个人计算机(PC)、电视设备和/或移动设备上运行应用时能够为了无缝用户体验而实现普遍存在的环境。在利用应用、播放视频游戏、观看视频等等的同时,在从一个设备过渡到下一设备时,服务和应用为了共同用户体验而在所有三种环境中实质上类似运行。
在示例系统900中,多个设备通过中央计算设备进行互连。中央计算设备对于多个设备而言可以是本地的或可以远离多个设备进行定位。在一个或多个实施例中,中央计算设备可以是通过网络、因特网或其他数据通信链路连接到多个设备的一个或多个服务器计算机的云。
在一个或多个实施例中,这种互连架构使得功能能够在多个设备上进行递送,以便给多个设备的用户提供共同的且无缝的体验。多个设备之中的每一个设备可以具有不同的物理需求和能力,并且中央计算设备使用平台来使之能够将针对该设备进行定制且对于所有设备而言仍然共同的体验递送至该设备。在一个或多个实施例中,创建目标设备的类,并且针对通用类的设备来定制体验。设备的类可以利用这些设备的物理特性、使用的类型或其他的共同特征来定义。
在各种实现方式中,计算设备902可以采取各种不同的配置,诸如以便计算机916、移动站918和电视920使用。这些配置之中的每一种配置包括可以具有一般不同的构造和能力的设备,并因而计算设备902可以根据一个或多个不同的设备类来配置。例如,计算设备902可以被实现为设备的计算机916类,其包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等等。
计算设备902也可以被实现为设备的移动站918类,其包括移动设备诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机、可穿戴设备、物联网(Internet of Things)(IoT)设备等等。计算设备902也可以被实现为设备的电视918类,其包括在随意观看环境中具有一般较大屏幕或者连接至较大屏幕的设备。这些设备包括电视、机顶盒、游戏机等等。
在本文描述的技术可以利用计算设备902的这些各种配置来支持并且不限于在本文描述的技术的具体示例。这种功能也可以全部或者部分通过使用分布式系统诸如在“云”922上经由平台924来实现,如下所述。
云922包括和/或代表用于资源926的平台924。平台924抽象化云922的硬件(例如服务器)和软件资源的基础功能。资源926可以包括能够在远离计算设备902的服务器上正执行计算机处理的同时加以利用的应用和/或数据。资源926也能够包括在因特网上和/或通过订户网络诸如蜂窝或Wi-Fi网络提供的服务。
平台924可以抽象化资源和功能来将计算设备902与其他计算设备进行连接。平台924也可以用于抽象化资源的缩放(scaling)来针对经由平台924实现的资源926所遇到的需求提供相应的缩放水平。相应地,在互连设备实施例中,在本文描述的功能的实现方式可以遍及系统900来分布。例如,功能可以部分地在计算设备902上以及经由抽象化云922的功能的平台924来实现。
虽然采用特定于结构特性和/或方法动作的语言描述了主题,但是将明白:在所附的权利要求书中定义的主题不一定限于上面所描述的具体特性或动作。相反,上面描述的这些具体特性和动作被公开为实现这些权利要求的示例形式。

Claims (8)

1.一种在具有内联密码处理器的计算设备中实现的方法,所述内联密码处理器至少部分以硬件实现,所述方法包括:
在可信运行时间上,接收为存储设备的部分生成密钥的请求,生成所述密钥的所述请求作为所述存储设备的所述部分的创建的一部分而被接收到,所述可信运行时间与所述计算设备中的其他程序相隔离;
响应于生成所述密钥的所述请求,所述可信运行时间:
生成所述密钥,
在所述计算设备的电源周期上存留所述密钥,以及
给所述计算设备的内联密码处理器供应所述密钥,所述密钥要被存储在所述内联密码处理器的寄存器中,
所述内联密码处理器随后基于所述密钥来加密针对所述存储设备的所述部分的写入,并且所述内联密码处理器随后基于所述密钥来解密自所述存储设备的所述部分的读取;
所述供应包括:
在没有用户认证证书被提供给所述计算设备的情况下给所述内联密码处理器供应所述密钥,直到加密所述部分的请求被接收,以及
响应于加密所述部分的所述请求,仅在所述用户认证证书被提供给所述计算设备的情况下向所述内联密码处理器供应所述密钥;以及
响应于加密所述部分的所述请求,由所述可信运行时间返回所述部分上的数据被加密的指示,而无需等待所述部分上的数据被加密。
2.根据权利要求1所述的方法,进一步包括所述可信运行时间使用仅所述可信运行时间知道的秘密密钥,通过以下来生成受保护的密钥:利用所述秘密密钥来加密所述密钥。
3.根据权利要求1所述的方法,进一步包括所述可信运行时间响应于加密所述部分的所述请求:
基于与被提供给所述计算设备的认证证书相关联的认证密钥,来保护所述密钥;
停止使得所述密钥在所述计算设备的所述电源周期上被存留;以及
使得受保护的所述密钥在所述计算设备的所述电源周期上被存留。
4.一种计算设备,包括:
可信运行时间,其与所述计算设备的操作系统相隔离并被配置成:
接收为存储设备的部分生成密钥的请求,生成所述密钥的所述请求作为所述部分的创建的一部分而被接收到,
为所述存储设备的所述部分生成密钥,
在所述计算设备的电源周期上存留所述密钥;
响应于加密所述存储设备的所述部分的请求,返回所述存储设备的所述部分上的数据被加密的指示,而无需等待所述部分上的数据被加密;以及
内联密码处理器,被配置为:
从所述可信运行时间接收所述密钥,以提供对所述部分上存储的数据的不受限制的访问,直到所述请求被接收到,并且响应于所述请求,仅在用户认证证书被提供给所述计算设备的情况下提供对所述部分上存储的所述数据的访问,
响应于所述密钥的接收,加密针对所述存储设备的所述部分的随后写入,以及
响应于所述密钥的接收,解密自所述存储设备的所述部分中的随后读取。
5.根据权利要求4所述的计算设备,所述可信运行时间进一步被配置成响应于所述部分的保护被启用的请求:
基于与被提供给所述计算设备的认证证书相关联的认证密钥,来保护所述密钥;
停止使得所述密钥在所述计算设备的所述电源周期上被存留;以及
使得受保护的密钥在所述计算设备的所述电源周期上被存留。
6.根据权利要求5所述的计算设备,所述可信运行时间进一步被配置成:
在从所述可信运行时间和所述内联密码处理器二者中移除所述密钥之后,接收解锁所述部分的请求;以及
响应于解锁所述部分的所述请求:
基于所述受保护的密钥,从所述受保护的密钥中获得所述密钥,
给所述计算设备的所述内联密码处理器供应所获得的密钥,以及
返回所获得的密钥的识别符,以允许所述计算设备的操作系统向所述内联密码处理器进行识别以使用所获得的密钥,所获得的密钥的所述识别符不允许所述操作系统获得所述密钥。
7.根据权利要求5所述的计算设备,所述可信运行时间进一步被配置成:
在接收到所述部分的保护被启用的所述请求之后,接收禁用所述部分的保护的请求;以及
响应于禁用所述部分的保护的所述请求:
基于所述受保护的密钥,从所述受保护的密钥中获得所述密钥,
使用所述可信运行时间,存留所获得的密钥,以及
从所述可信运行时间移除所述受保护的密钥。
8.根据权利要求5所述的计算设备,进一步包括存储设备保护系统,被配置为管理证书的认证并且基于经认证的证书来管理所述可信运行时间的配置,
所述可信运行时间进一步被配置成:
在接收到所述部分的保护被启用的所述请求之后,接收对于所述密钥的迁移或恢复的请求;
响应于对于所述密钥的迁移或恢复的所述请求,向发出对于所述密钥的迁移或恢复的所述请求的请求方揭示所述受保护的密钥;以及
与所述受保护的密钥一起存留所述受保护的密钥已经被揭示的指示;
所述存储设备保护系统进一步被配置为:
从所述可信运行时间检索所述受保护的密钥已经被揭示的所述指示;
显示用于所述部分的所述受保护的密钥已经被揭示的警告;以及
在向所述可信运行时间提供认证密钥之前,接收继续使用所述存储设备的所述部分的用户批准,所述认证密钥与被提供给所述计算设备的所述用户认证证书相关联。
CN201580015099.5A 2014-03-20 2015-03-18 存储设备的快速数据保护 Active CN106462718B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/221105 2014-03-20
US14/221,105 US10615967B2 (en) 2014-03-20 2014-03-20 Rapid data protection for storage devices
PCT/US2015/021125 WO2015142970A1 (en) 2014-03-20 2015-03-18 Rapid data protection for storage devices

Publications (2)

Publication Number Publication Date
CN106462718A CN106462718A (zh) 2017-02-22
CN106462718B true CN106462718B (zh) 2019-06-28

Family

ID=52829329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580015099.5A Active CN106462718B (zh) 2014-03-20 2015-03-18 存储设备的快速数据保护

Country Status (5)

Country Link
US (1) US10615967B2 (zh)
EP (1) EP3120291B1 (zh)
KR (1) KR102340219B1 (zh)
CN (1) CN106462718B (zh)
WO (1) WO2015142970A1 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874935B2 (en) 2011-08-30 2014-10-28 Microsoft Corporation Sector map-based rapid data encryption policy compliance
US20140344570A1 (en) 2013-05-20 2014-11-20 Microsoft Corporation Data Protection For Organizations On Computing Devices
US9825945B2 (en) 2014-09-09 2017-11-21 Microsoft Technology Licensing, Llc Preserving data protection with policy
US9853812B2 (en) 2014-09-17 2017-12-26 Microsoft Technology Licensing, Llc Secure key management for roaming protected content
US9900295B2 (en) 2014-11-05 2018-02-20 Microsoft Technology Licensing, Llc Roaming content wipe actions across devices
US9524249B2 (en) * 2014-12-23 2016-12-20 Intel Corporation Memory encryption engine integration
WO2016112338A1 (en) * 2015-01-08 2016-07-14 Intertrust Technologies Corporation Cryptographic systems and methods
US9565169B2 (en) * 2015-03-30 2017-02-07 Microsoft Technology Licensing, Llc Device theft protection associating a device identifier and a user identifier
US9853820B2 (en) 2015-06-30 2017-12-26 Microsoft Technology Licensing, Llc Intelligent deletion of revoked data
US9900325B2 (en) 2015-10-09 2018-02-20 Microsoft Technology Licensing, Llc Passive encryption of organization data
WO2017127084A1 (en) * 2016-01-21 2017-07-27 Hewlett-Packard Development Company, L.P. Data cryptography engine
US10367794B2 (en) * 2016-05-06 2019-07-30 Ian L Sayers Method and apparatus for securing a sensor or device
US10389517B2 (en) * 2016-06-27 2019-08-20 Nxp B.V. Using secure key storage to bind a white-box implementation to one platform
EP3340147A1 (en) * 2016-12-22 2018-06-27 Mastercard International Incorporated Method for providing key identifier in transaction data
CN108429719B (zh) * 2017-02-14 2020-12-01 华为技术有限公司 密钥保护方法及装置
WO2019013775A1 (en) 2017-07-12 2019-01-17 Hewlett-Packard Development Company, L.P. MIGRATION OF MEMORY DEVICES
CN107358109A (zh) * 2017-07-17 2017-11-17 山东超越数控电子有限公司 一种安全增强智能终端加密存储系统
JP6899308B2 (ja) * 2017-10-16 2021-07-07 株式会社日立製作所 情報処理装置および情報処理装置のデータ処理方法
SE1751451A1 (en) * 2017-11-24 2019-05-25 Fingerprint Cards Ab Biometric template handling
CN110414245B (zh) * 2018-04-28 2023-09-22 伊姆西Ip控股有限责任公司 用于在存储系统中管理加密密钥的方法、装置和计算机程序产品
US10891385B2 (en) * 2018-05-16 2021-01-12 Microsoft Technology Licensing, Llc Encryption at rest for cloud-resourced virtual machines
CN111566989B (zh) * 2018-06-14 2022-06-07 华为技术有限公司 一种密钥处理方法及装置
CN111698080B (zh) * 2019-03-14 2024-03-15 西安诺瓦星云科技股份有限公司 节目文件导出、导入方法及其装置和多媒体播放盒
SG11202003891YA (en) * 2019-06-28 2020-05-28 Advanced New Technologies Co Ltd System and method for blockchain address mapping
CN116932564A (zh) * 2019-06-28 2023-10-24 创新先进技术有限公司 用于更新区块链中的数据的系统和方法
JP7306964B2 (ja) * 2019-11-05 2023-07-11 ルネサスエレクトロニクス株式会社 仮想化システムおよび動作管理方法
US11436343B2 (en) * 2019-12-31 2022-09-06 Arm Limited Device, system, and method of policy enforcement for rich execution environment
US11562056B2 (en) 2020-02-05 2023-01-24 Quantum Digital Solutions Corporation Systems for establishing a digital ecosystem using digital genomic data sets
US11461490B1 (en) 2020-09-23 2022-10-04 Cru Data Security Group, Llc Systems, methods, and devices for conditionally allowing processes to alter data on a storage device
CA3177626A1 (en) 2021-02-04 2022-08-11 Quantum Digital Solutions Corporation Cyphergenics-based ecosystem security platforms
US20220358235A1 (en) * 2021-05-05 2022-11-10 EMC IP Holding Company LLC Access Control of Protected Data Using Storage System-Based Multi-Factor Authentication
US20210319121A1 (en) * 2021-06-25 2021-10-14 Intel Corporation Concurrent volume and file based inline encryption on commodity operating systems
CN113672973B (zh) * 2021-07-20 2024-04-16 深圳大学 基于可信执行环境的risc-v架构的嵌入式设备的数据库系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1451117A (zh) * 2000-06-30 2003-10-22 英特尔公司 采用安全存储器分区来实现安全执行的方法和装置
CN102884535A (zh) * 2009-12-21 2013-01-16 英特尔公司 受保护装置管理
CN102945355A (zh) * 2011-08-30 2013-02-27 微软公司 基于扇区映射的快速数据加密策略遵从
WO2013026662A1 (en) * 2011-08-19 2013-02-28 Gemalto Sa Method for hard partitioning the resources of a secure computer system

Family Cites Families (211)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495533A (en) 1994-04-29 1996-02-27 International Business Machines Corporation Personal key archive
US5787131A (en) 1995-12-22 1998-07-28 Ericsson Inc. Method and apparatus for mitigation of self interference using array processing
US6016402A (en) 1996-05-21 2000-01-18 Iomega Corporation Method for integrating removable media disk drive into operating system recognized as fixed disk type and modifying operating system to recognize as floppy disk type
US5897661A (en) 1997-02-25 1999-04-27 International Business Machines Corporation Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal storage of metadata information
US6067199A (en) 1997-06-30 2000-05-23 Emc Corporation Method and apparatus for increasing disc drive performance
US5974503A (en) 1997-04-25 1999-10-26 Emc Corporation Storage and access of continuous media files indexed as lists of raid stripe sets associated with file names
US6028725A (en) 1997-06-30 2000-02-22 Emc Corporation Method and apparatus for increasing disc drive performance
US6076143A (en) 1997-09-02 2000-06-13 Emc Corporation Method and apparatus for managing the physical storage locations for blocks of information in a storage system to increase system performance
US5944783A (en) 1997-07-29 1999-08-31 Lincom Corporation Apparatus and method for data transfers through software agents using client-to-server and peer-to-peer transfers
US5966263A (en) 1997-08-01 1999-10-12 International Business Machines Corporation Method and apparatus to increase head/AE select robustness for a system using multiple head servo write
US6253300B1 (en) 1997-08-20 2001-06-26 Powerquest Corporation Computer partition manipulation during imaging
US6249866B1 (en) 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
US6292790B1 (en) 1997-10-20 2001-09-18 James E. Krahn Apparatus for importing and exporting partially encrypted configuration data
US6170055B1 (en) 1997-11-03 2001-01-02 Iomega Corporation System for computer recovery using removable high capacity media
US6041386A (en) 1998-02-10 2000-03-21 International Business Machines Corporation Data sharing between system using different data storage formats
US6298446B1 (en) 1998-06-14 2001-10-02 Alchemedia Ltd. Method and system for copyright protection of digital images transmitted over networks
US8234477B2 (en) 1998-07-31 2012-07-31 Kom Networks, Inc. Method and system for providing restricted access to a storage medium
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US6438235B2 (en) 1998-08-05 2002-08-20 Hewlett-Packard Company Media content protection utilizing public key cryptography
US7380140B1 (en) 1998-12-30 2008-05-27 Spyrus, Inc. Providing a protected volume on a data storage device
GB9903490D0 (en) 1999-02-17 1999-04-07 Memory Corp Plc Memory system
JP2000341263A (ja) 1999-05-27 2000-12-08 Sony Corp 情報処理装置及び方法
US7451484B1 (en) 1999-05-27 2008-11-11 International Business Machines Corporation Method for enabling a program written in untrusted code to interact with a security subsystem of a hosting operating system
US6292317B1 (en) 1999-09-02 2001-09-18 Maxtor Corporation Method and apparatus for performing a flaw scan of a disk drive
US6665784B2 (en) 1999-09-03 2003-12-16 Roxio, Inc. Method for writing and reading data to and from a compact disc media
US7216251B2 (en) 2000-02-19 2007-05-08 Powerquest Corporation Computer imaging recovery without a working partition or a secondary medium
US6944742B1 (en) 2000-04-28 2005-09-13 Microsoft Corporation Compressed file system for non-volatile RAM
US7197638B1 (en) 2000-08-21 2007-03-27 Symantec Corporation Unified permissions control for remotely and locally stored files whose informational content may be protected by smart-locking and/or bubble-protection
US6789162B1 (en) 2000-10-17 2004-09-07 Sun Microsystems, Inc. Storage controller configured to select unused regions of a storage device for data storage according to head position
US6727896B2 (en) 2001-08-01 2004-04-27 Microsoft Corporation Correction of alignment and linearity errors in a stylus input system
US20030084298A1 (en) 2001-10-25 2003-05-01 Messerges Thomas S. Method for efficient hashing of digital content
US7171557B2 (en) 2001-10-31 2007-01-30 Hewlett-Packard Development Company, L.P. System for optimized key management with file groups
US7903549B2 (en) 2002-03-08 2011-03-08 Secure Computing Corporation Content-based policy compliance systems and methods
US7614077B2 (en) 2002-04-10 2009-11-03 International Business Machines Corporation Persistent access control of protected content
US7269612B2 (en) 2002-05-31 2007-09-11 International Business Machines Corporation Method, system, and program for a policy based storage manager
JP4777651B2 (ja) 2002-08-23 2011-09-21 イグジット−キューブ,インク. コンピュータシステム及びデータ保存方法
WO2004019186A2 (en) 2002-08-26 2004-03-04 Guardednet, Inc. Determining threat level associated with network activity
US20060190984A1 (en) 2002-09-23 2006-08-24 Credant Technologies, Inc. Gatekeeper architecture/features to support security policy maintenance and distribution
KR100492800B1 (ko) 2002-11-12 2005-06-07 주식회사 하이닉스반도체 불휘발성 강유전체 메모리 제어 장치
US7181016B2 (en) 2003-01-27 2007-02-20 Microsoft Corporation Deriving a symmetric key from an asymmetric key for file encryption or decryption
US20090177664A9 (en) 2003-05-07 2009-07-09 Hotchkiss Lynette I System and Method for Regulatory Rules Repository Generation and Maintenance
AU2003229299A1 (en) 2003-05-14 2005-01-21 Threatguard, Inc. System and method for application-level virtual private network
US7360073B1 (en) 2003-05-15 2008-04-15 Pointsec Mobile Technologies, Llc Method and apparatus for providing a secure boot for a computer system
US6968973B2 (en) 2003-05-31 2005-11-29 Microsoft Corporation System and process for viewing and navigating through an interactive video tour
US7389273B2 (en) 2003-09-25 2008-06-17 Scott Andrew Irwin System and method for federated rights management
GB2406403B (en) 2003-09-26 2006-06-07 Advanced Risc Mach Ltd Data processing apparatus and method for merging secure and non-secure data into an output data stream
US7730318B2 (en) 2003-10-24 2010-06-01 Microsoft Corporation Integration of high-assurance features into an application through application factoring
US20050120265A1 (en) 2003-12-02 2005-06-02 Pline Steven L. Data storage system with error correction code and replaceable defective memory
US7536536B1 (en) 2003-12-15 2009-05-19 American Megatrends, Inc. Method, system, and computer readable medium for updating and utilizing the contents of a non-essential region of a memory device
US7930540B2 (en) 2004-01-22 2011-04-19 Mcafee, Inc. Cryptographic policy enforcement
US7254669B2 (en) 2004-01-29 2007-08-07 International Business Machines Corporation Create virtual track buffers in NVS using customer segments to maintain newly written data across a power loss
US7559088B2 (en) 2004-02-04 2009-07-07 Netapp, Inc. Method and apparatus for deleting data upon expiration
WO2005078606A2 (en) 2004-02-11 2005-08-25 Storage Technology Corporation Clustered hierarchical file services
US20050262361A1 (en) * 2004-05-24 2005-11-24 Seagate Technology Llc System and method for magnetic storage disposal
CN100353787C (zh) 2004-06-23 2007-12-05 华为技术有限公司 一种移动终端内存储的资料信息的安全保障方法
US7409623B2 (en) 2004-11-04 2008-08-05 Sigmatel, Inc. System and method of reading non-volatile computer memory
US7725703B2 (en) 2005-01-07 2010-05-25 Microsoft Corporation Systems and methods for securely booting a computer with a trusted processing module
US7308525B2 (en) 2005-01-10 2007-12-11 Sandisk Il Ltd. Method of managing a multi-bit cell flash memory with improved reliablility and performance
US20060206507A1 (en) 2005-02-16 2006-09-14 Dahbour Ziyad M Hierarchal data management
US8302178B2 (en) 2005-03-07 2012-10-30 Noam Camiel System and method for a dynamic policies enforced file system for a data storage device
US7277986B2 (en) 2005-03-30 2007-10-02 Emc Corporation Sector-edge cache
US7516478B2 (en) 2005-06-03 2009-04-07 Microsoft Corporation Remote management of mobile devices
US20070028231A1 (en) 2005-08-01 2007-02-01 International Business Machines Corporation System and method for start menu and application uninstall synchronization
US7602906B2 (en) 2005-08-25 2009-10-13 Microsoft Corporation Cipher for disk encryption
US7730327B2 (en) 2005-09-09 2010-06-01 Netapp, Inc. Managing the encryption of data
US7694134B2 (en) 2005-11-11 2010-04-06 Computer Associates Think, Inc. System and method for encrypting data without regard to application
TW200723093A (en) 2005-12-14 2007-06-16 Inventec Corp Method for establishing mirror storage equipment and synchronously storing equipment update data
US8286159B2 (en) 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium
US7594087B2 (en) 2006-01-19 2009-09-22 Sigmatel, Inc. System and method for writing data to and erasing data from non-volatile memory
JP4838610B2 (ja) 2006-03-24 2011-12-14 キヤノン株式会社 文書管理装置、文書管理方法、プログラム
EP2013779A4 (en) 2006-04-14 2012-07-18 Vertafore Inc METHOD, SYSTEM AND COMPUTER-READABLE MEDIUM FOR PROVIDING PERSONALIZED CLASSIFICATION OF DOCUMENTS IN A FILE MANAGEMENT SYSTEM
JP4749930B2 (ja) 2006-04-24 2011-08-17 株式会社日立製作所 計算機システム及び管理計算機とストレージ装置並びにボリューム割当確認方法
US20080010468A1 (en) 2006-06-06 2008-01-10 Ruiz R P Method and technique for enforcing transience and propagation constraints on data transmitted by one entity to another entity by means of data division and retention
US8307148B2 (en) 2006-06-23 2012-11-06 Microsoft Corporation Flash management techniques
US7711923B2 (en) 2006-06-23 2010-05-04 Microsoft Corporation Persistent flash memory mapping table
US8416954B1 (en) * 2008-09-30 2013-04-09 Emc Corporation Systems and methods for accessing storage or network based replicas of encrypted volumes with no additional key management
GB0614515D0 (en) 2006-07-21 2006-08-30 Ibm An apparatus for managing power-consumption
US8607308B1 (en) * 2006-08-07 2013-12-10 Bank Of America Corporation System and methods for facilitating privacy enforcement
US8015433B2 (en) 2006-09-13 2011-09-06 Hitachi Global Storage Technologies Netherlands B.V. Disk drive with nonvolatile memory for storage of failure-related data
US20080091613A1 (en) 2006-09-28 2008-04-17 Microsoft Corporation Rights management in a cloud
US8601598B2 (en) 2006-09-29 2013-12-03 Microsoft Corporation Off-premise encryption of data storage
US7912223B2 (en) * 2006-09-29 2011-03-22 Hitachi, Ltd. Method and apparatus for data protection
US7890796B2 (en) 2006-10-04 2011-02-15 Emc Corporation Automatic media error correction in a file server
US8396214B2 (en) * 2006-11-02 2013-03-12 SAP Portals Israel Limited Method and apparatus for centrally managed encrypted partition
US8135135B2 (en) 2006-12-08 2012-03-13 Microsoft Corporation Secure data protection during disasters
US7702973B2 (en) 2007-01-05 2010-04-20 Broadcom Corporation Modified defect scan over sync mark/preamble field
US8056143B2 (en) 2007-01-19 2011-11-08 Research In Motion Limited Selectively wiping a remote device
JP4903071B2 (ja) * 2007-03-15 2012-03-21 株式会社リコー 情報処理装置、ソフトウェア更新方法及び画像処理装置
US8572400B2 (en) * 2007-03-26 2013-10-29 Intel Corporation Enhanced digital right management framework
US8369411B2 (en) 2007-03-29 2013-02-05 James Au Intra-macroblock video processing
JP2008250779A (ja) 2007-03-30 2008-10-16 Hitachi Ltd 暗号機能を備えた記憶制御装置、データ暗号化方法及び記憶システム
US7864960B2 (en) 2007-05-31 2011-01-04 Novell, Inc. Techniques for securing content in an untrusted environment
US8474054B2 (en) 2007-06-26 2013-06-25 Digital Keystone, Inc. Systems and methods for conditional access and digital rights management
JP4405533B2 (ja) 2007-07-20 2010-01-27 株式会社東芝 キャッシュ方法及びキャッシュ装置
US8452967B2 (en) 2007-08-31 2013-05-28 Microsoft Corporation Using flash storage device to prevent unauthorized use of software
US8554176B2 (en) 2007-09-18 2013-10-08 Qualcomm Incorporated Method and apparatus for creating a remotely activated secure backup service for mobile handsets
US8249257B2 (en) * 2007-09-28 2012-08-21 Intel Corporation Virtual TPM keys rooted in a hardware TPM
CN101436192B (zh) 2007-11-16 2011-03-16 国际商业机器公司 用于优化针对垂直存储式数据库的查询的方法和设备
WO2009069043A2 (en) 2007-11-26 2009-06-04 Koninklijke Philips Electronics N.V. Method of managing data in communication network comprising at least a first and a second node
US20090196417A1 (en) * 2008-02-01 2009-08-06 Seagate Technology Llc Secure disposal of storage data
US8707385B2 (en) 2008-02-11 2014-04-22 Oracle International Corporation Automated compliance policy enforcement in software systems
US20090210267A1 (en) 2008-02-18 2009-08-20 Bryan David Fish System and method for automatically mapping security controls to subjects
US7962739B2 (en) 2008-02-25 2011-06-14 Lenovo (Singapore) Pte. Ltd. Recovering from hard disk errors that corrupt one or more critical system boot files
US7890664B1 (en) 2008-03-31 2011-02-15 Emc Corporation Methods and apparatus for non-disruptive upgrade by redirecting I/O operations
WO2009138928A1 (en) 2008-05-13 2009-11-19 Nxp B.V. Secure direct memory access
US7979626B2 (en) 2008-05-13 2011-07-12 Microsoft Corporation Flash recovery employing transaction log
US8423792B2 (en) * 2008-06-05 2013-04-16 International Business Machines Corporation Apparatus, system, and method for communication between a driver and an encryption source
US20090307563A1 (en) 2008-06-05 2009-12-10 Ibm Corporation (Almaden Research Center) Replacing bad hard drive sectors using mram
US8943551B2 (en) 2008-08-14 2015-01-27 Microsoft Corporation Cloud-based device information storage
US9432184B2 (en) 2008-09-05 2016-08-30 Vixs Systems Inc. Provisioning of secure storage for both static and dynamic rules for cryptographic key information
US8332604B2 (en) 2008-09-30 2012-12-11 Intel Corporation Methods to securely bind an encryption key to a storage device
US8411863B2 (en) 2008-10-03 2013-04-02 Microsoft Corporation Full volume encryption in a clustered environment
US8341430B2 (en) 2008-10-03 2012-12-25 Microsoft Corporation External encryption and recovery management with hardware encrypted storage devices
TW201015322A (en) 2008-10-08 2010-04-16 Ee Solutions Inc Method and system for data secured data recovery
US8387109B2 (en) 2008-10-23 2013-02-26 Microsoft Corporation Access control state determination based on security policy and secondary access control state
US8336079B2 (en) 2008-12-31 2012-12-18 Hytrust, Inc. Intelligent security control system for virtualized ecosystems
US20100306180A1 (en) 2009-01-28 2010-12-02 Digitiliti, Inc. File revision management
KR100928467B1 (ko) 2009-02-02 2009-11-25 주식회사 파수닷컴 클립보드 보안 시스템 및 방법
US8341427B2 (en) 2009-02-16 2012-12-25 Microsoft Corporation Trusted cloud computing and services framework
TWI493950B (zh) 2009-02-24 2015-07-21 Fineart Technology Co Ltd 條件式電子文件權限控管系統及方法
US8046533B2 (en) 2009-03-10 2011-10-25 Emulex Design & Manufacturing Corporation System and method for sector remapping
TW201035754A (en) 2009-03-25 2010-10-01 Inventec Corp RAID processing method
US20100266132A1 (en) 2009-04-15 2010-10-21 Microsoft Corporation Service-based key escrow and security for device data
US8516264B2 (en) 2009-10-09 2013-08-20 Lsi Corporation Interlocking plain text passwords to data encryption keys
US8538919B1 (en) 2009-05-16 2013-09-17 Eric H. Nielsen System, method, and computer program for real time remote recovery of virtual computing machines
US20100299152A1 (en) 2009-05-20 2010-11-25 Mobile Iron, Inc. Selective Management of Mobile Devices in an Enterprise Environment
US8588422B2 (en) 2009-05-28 2013-11-19 Novell, Inc. Key management to protect encrypted data of an endpoint computing device
US8578157B2 (en) 2009-05-29 2013-11-05 Adobe Systems Incorporated System and method for digital rights management with authorized device groups
US8321688B2 (en) 2009-06-12 2012-11-27 Microsoft Corporation Secure and private backup storage and processing for trusted computing and data services
US8719486B2 (en) 2009-06-24 2014-05-06 Micron Technology, Inc. Pinning content in nonvolatile memory
US9141489B2 (en) 2009-07-09 2015-09-22 Uniloc Luxembourg S.A. Failover procedure for server system
US20110055559A1 (en) 2009-08-27 2011-03-03 Jun Li Data retention management
US8498418B2 (en) * 2009-08-31 2013-07-30 International Business Machines Corporation Conversion of cryptographic key protection
US20110060915A1 (en) 2009-09-10 2011-03-10 International Business Machines Corporation Managing Encryption of Data
US8726407B2 (en) 2009-10-16 2014-05-13 Deviceauthority, Inc. Authentication of computing and communications hardware
EP2348450B1 (en) 2009-12-18 2013-11-06 CompuGroup Medical AG Database system, computer system, and computer-readable storage medium for decrypting a data record
KR101654774B1 (ko) 2010-02-08 2016-09-06 시게이트 테크놀로지 엘엘씨 데이터 저장 장치와 저장 매체 액세스 방법 및 그에 대한 저장 매체
US9703586B2 (en) 2010-02-17 2017-07-11 Microsoft Technology Licensing, Llc Distribution control and tracking mechanism of virtual machine appliances
WO2011109865A1 (en) 2010-03-09 2011-09-15 Lock Box Pty Ltd Method and system for sharing encrypted content
US8930713B2 (en) 2010-03-10 2015-01-06 Dell Products L.P. System and method for general purpose encryption of data
US8375437B2 (en) * 2010-03-30 2013-02-12 Microsoft Corporation Hardware supported virtualized cryptographic service
FR2958478B1 (fr) 2010-04-02 2012-05-04 Sergio Loureiro Procede de securisation de donnees et/ou des applications dans une architecture informatique en nuage
US8433901B2 (en) 2010-04-07 2013-04-30 Apple Inc. System and method for wiping encrypted data on a device having file-level content protection
US20110264925A1 (en) 2010-04-23 2011-10-27 Russo Leonard E Securing data on a self-encrypting storage device
US8935384B2 (en) 2010-05-06 2015-01-13 Mcafee Inc. Distributed data revocation using data commands
WO2011142996A2 (en) 2010-05-09 2011-11-17 Madhav Chinta Methods and systems for forcing an application to store data in a secure storage location
US8458490B2 (en) 2010-05-28 2013-06-04 Dell Products, Lp System and method for supporting full volume encryption devices in a client hosted virtualization system
US8625802B2 (en) 2010-06-16 2014-01-07 Porticor Ltd. Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management
US8458491B1 (en) * 2010-06-23 2013-06-04 Raytheon Bbn Technologies Corp. Cryptographically scrubbable storage device
US20120017095A1 (en) * 2010-07-19 2012-01-19 Coreguard Software Service for Encrypting and Decrypting Data
WO2012016091A2 (en) 2010-07-28 2012-02-02 Nextlabs, Inc. Protecting documents using policies and encryption
US8539245B2 (en) * 2010-08-06 2013-09-17 Intel Corporation Apparatus and method for accessing a secure partition in non-volatile storage by a host system enabled after the system exits a first instance of a secure mode
JP2012080295A (ja) * 2010-09-30 2012-04-19 Toshiba Corp 情報記憶装置、情報記憶方法、及び電子機器
US8385014B2 (en) 2010-10-11 2013-02-26 Lsi Corporation Systems and methods for identifying potential media failure
US8661193B1 (en) 2010-10-29 2014-02-25 Western Digital Technologies, Inc. Disk drive with partial sector management
EP2448303B1 (en) 2010-11-01 2014-02-26 BlackBerry Limited Method and system for securing data of a mobile communications device
US9715598B2 (en) * 2010-11-17 2017-07-25 Invysta Technology Group Automatic secure escrowing of a password for encrypted information an attachable storage device
US8352749B2 (en) 2010-12-17 2013-01-08 Google Inc. Local trusted services manager for a contactless smart card
US8924739B2 (en) 2011-01-05 2014-12-30 Apple Inc. System and method for in-place encryption
US20120239618A1 (en) 2011-03-16 2012-09-20 I O Interconnect, Ltd. File sharing mechanism
WO2012129191A2 (en) 2011-03-18 2012-09-27 Fusion-Io, Inc. Logical interfaces for contextual storage
US8769305B2 (en) 2011-03-21 2014-07-01 Moncana Corporation Secure execution of unsecured apps on a device
EP2509275A1 (en) 2011-04-04 2012-10-10 Buntinx Method and system for authenticating entities by means of mobile terminals
US8527561B1 (en) 2011-05-17 2013-09-03 Crossroads Systems, Inc. System and method for implementing a networked file system utilizing a media library
US9141779B2 (en) 2011-05-19 2015-09-22 Microsoft Technology Licensing, Llc Usable security of online password management with sensor-based authentication
WO2012167392A2 (en) 2011-06-06 2012-12-13 ETH Zürich Method and devices for secure deletion of data in a log structured file system
US10496824B2 (en) 2011-06-24 2019-12-03 Microsoft Licensing Technology, LLC Trusted language runtime on a mobile platform
US8689279B2 (en) 2011-08-30 2014-04-01 Microsoft Corporation Encrypted chunk-based rapid data encryption policy compliance
US8856553B2 (en) * 2011-09-12 2014-10-07 Microsoft Corporation Managing self-encrypting drives in decentralized environments
US10165007B2 (en) 2011-09-15 2018-12-25 Microsoft Technology Licensing, Llc Securing data usage in computing devices
FR2980285B1 (fr) * 2011-09-15 2013-11-15 Maxim Integrated Products Systemes et procedes de gestion de cles cryptographiques dans un microcontroleur securise
US8479021B2 (en) 2011-09-29 2013-07-02 Pacid Technologies, Llc Secure island computing system and method
US20140053234A1 (en) 2011-10-11 2014-02-20 Citrix Systems, Inc. Policy-Based Application Management
US9143530B2 (en) 2011-10-11 2015-09-22 Citrix Systems, Inc. Secure container for protecting enterprise data on a mobile device
US20140032733A1 (en) 2011-10-11 2014-01-30 Citrix Systems, Inc. Policy-Based Application Management
US9100235B2 (en) 2011-11-07 2015-08-04 At&T Intellectual Property I, L.P. Secure desktop applications for an open computing platform
US10291658B2 (en) 2011-11-09 2019-05-14 Microsoft Technology Licensing, Llc Techniques to apply and share remote policies on mobile devices
EP2788911A4 (en) 2011-12-08 2015-07-29 Intel Corp METHOD AND DEVICE FOR POLICY-BASED JOINT CONTENT USE IN A PEER TO PEER WAY WITH ROOT-OF-TRUST ON HARDWARE BASE
US9052824B2 (en) * 2012-01-26 2015-06-09 Upthere, Inc. Content addressable stores based on sibling groups
WO2013122869A1 (en) 2012-02-13 2013-08-22 Eugene Shablygin Sharing secure data
US8875298B2 (en) 2012-02-16 2014-10-28 Nec Laboratories America, Inc. Method for scalable analysis of android applications for security vulnerability
CN102646077B (zh) 2012-03-28 2016-06-15 山东超越数控电子有限公司 一种基于可信密码模块的全盘加密的方法
US9253209B2 (en) 2012-04-26 2016-02-02 International Business Machines Corporation Policy-based dynamic information flow control on mobile devices
US9202083B2 (en) 2012-05-22 2015-12-01 Partnet, Inc. Systems and methods for verifying uniqueness in anonymous authentication
EP2680487B1 (en) 2012-06-29 2019-04-10 Orange Secured cloud data storage, distribution and restoration among multiple devices of a user
US20140019753A1 (en) 2012-07-10 2014-01-16 John Houston Lowry Cloud key management
US10079678B2 (en) * 2012-07-24 2018-09-18 Intel Corporation Providing access to encrypted data
US20140075493A1 (en) 2012-09-12 2014-03-13 Avaya, Inc. System and method for location-based protection of mobile data
US10268775B2 (en) 2012-09-17 2019-04-23 Nokia Technologies Oy Method and apparatus for accessing and displaying private user information
US9392077B2 (en) 2012-10-12 2016-07-12 Citrix Systems, Inc. Coordinating a computing activity across applications and devices having multiple operation modes in an orchestration framework for connected devices
US20140109176A1 (en) 2012-10-15 2014-04-17 Citrix Systems, Inc. Configuring and providing profiles that manage execution of mobile applications
US8875304B2 (en) 2012-11-08 2014-10-28 International Business Machines Corporation Application and data removal system
US9454670B2 (en) 2012-12-03 2016-09-27 International Business Machines Corporation Hybrid file systems
US8997197B2 (en) 2012-12-12 2015-03-31 Citrix Systems, Inc. Encryption-based data access management
CN103092938A (zh) 2013-01-07 2013-05-08 浙江鸿程计算机系统有限公司 一种智能清理Android手机SD卡垃圾文件的方法
CN103092664B (zh) 2013-02-07 2016-08-03 珠海市君天电子科技有限公司 一种安卓系统的数据文件的处理方法和装置
US9547771B2 (en) * 2013-02-12 2017-01-17 Amazon Technologies, Inc. Policy enforcement with associated data
US9892284B2 (en) 2013-03-11 2018-02-13 Lantiq Beteiligungs-GmbH & Co. KG Trusted execution thread in an embedded multithreaded system
US20140344570A1 (en) 2013-05-20 2014-11-20 Microsoft Corporation Data Protection For Organizations On Computing Devices
US9369289B1 (en) 2013-07-17 2016-06-14 Google Inc. Methods and systems for performing secure authenticated updates of authentication credentials
US9465947B2 (en) 2013-08-05 2016-10-11 Samsung Sds America, Inc. System and method for encryption and key management in cloud storage
CN103500116A (zh) 2013-10-29 2014-01-08 中科创达软件股份有限公司 一种清除应用程序生成的数据的方法及系统
CN103577567A (zh) 2013-10-29 2014-02-12 广东欧珀移动通信有限公司 一种Android系统卸载应用删除垃圾文件的方法
US9411975B2 (en) 2014-03-31 2016-08-09 Intel Corporation Methods and apparatus to securely share data
US9825945B2 (en) 2014-09-09 2017-11-21 Microsoft Technology Licensing, Llc Preserving data protection with policy
US9853812B2 (en) 2014-09-17 2017-12-26 Microsoft Technology Licensing, Llc Secure key management for roaming protected content
US9900295B2 (en) 2014-11-05 2018-02-20 Microsoft Technology Licensing, Llc Roaming content wipe actions across devices
EP3234847B1 (en) 2014-12-15 2019-07-10 BlackBerry Limited Secure storage
US10073791B2 (en) 2015-03-25 2018-09-11 Vera Securing files
US9853820B2 (en) 2015-06-30 2017-12-26 Microsoft Technology Licensing, Llc Intelligent deletion of revoked data
US9900325B2 (en) 2015-10-09 2018-02-20 Microsoft Technology Licensing, Llc Passive encryption of organization data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1451117A (zh) * 2000-06-30 2003-10-22 英特尔公司 采用安全存储器分区来实现安全执行的方法和装置
CN102884535A (zh) * 2009-12-21 2013-01-16 英特尔公司 受保护装置管理
WO2013026662A1 (en) * 2011-08-19 2013-02-28 Gemalto Sa Method for hard partitioning the resources of a secure computer system
CN102945355A (zh) * 2011-08-30 2013-02-27 微软公司 基于扇区映射的快速数据加密策略遵从

Also Published As

Publication number Publication date
EP3120291A1 (en) 2017-01-25
KR102340219B1 (ko) 2021-12-15
WO2015142970A1 (en) 2015-09-24
CN106462718A (zh) 2017-02-22
KR20160138450A (ko) 2016-12-05
US10615967B2 (en) 2020-04-07
US20150270956A1 (en) 2015-09-24
EP3120291B1 (en) 2019-04-24

Similar Documents

Publication Publication Date Title
CN106462718B (zh) 存储设备的快速数据保护
JP6055989B1 (ja) コンピュータプログラム、秘密管理方法及びシステム
JP4902207B2 (ja) ファイルの暗号化と復号化のための複数のキーを管理するシステムと方法
US8103883B2 (en) Method and apparatus for enforcing use of danbury key management services for software applied full volume encryption
CN107431924B (zh) 将设备标识符和用户标识符相关联的设备盗窃防护
US10423791B2 (en) Enabling offline restart of shielded virtual machines using key caching
US8886964B1 (en) Protecting remote asset against data exploits utilizing an embedded key generator
US11232222B2 (en) Access management system, access management method and program
CN109416720A (zh) 跨重置维护操作系统秘密
CN108140097A (zh) 组织数据的被动加密
US10592679B2 (en) Support for changing encryption classes of files
US8180709B2 (en) Method and device for consuming rights objects having inheritance structure in environment where the rights objects are distributed over plurality of devices
KR101835981B1 (ko) 데이터 관리 방법 및 시스템
CN103003822A (zh) 对平台资源的域认证控制
KR20140037476A (ko) 파일의 외부 유출 방지를 위한 시스템 및 그 방법
KR20110055510A (ko) 보안 저장 장치에 저장된 디지털 컨텐츠의 백업
US9529733B1 (en) Systems and methods for securely accessing encrypted data stores
US20060155651A1 (en) Device and method for digital rights management
US10454679B2 (en) File system support for rolling keys on file extents
CN105612715A (zh) 具有可配置访问控制的安全处理单元
JP6426520B2 (ja) 暗号鍵管理システムおよび暗号鍵管理方法
CN105376258B (zh) 一种基于加密授权体系备份恢复云存储文件对象的方法
CN113141610B (zh) 将设备标识符和用户标识符相关联的设备盗窃防护
KR101386606B1 (ko) 백업용 스토리지 제어 방법
CN114091049A (zh) 文件查看方法及其装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant