CN102103673B - 在隐藏执行环境中提供完整性验证和证明 - Google Patents

在隐藏执行环境中提供完整性验证和证明 Download PDF

Info

Publication number
CN102103673B
CN102103673B CN201010610084.2A CN201010610084A CN102103673B CN 102103673 B CN102103673 B CN 102103673B CN 201010610084 A CN201010610084 A CN 201010610084A CN 102103673 B CN102103673 B CN 102103673B
Authority
CN
China
Prior art keywords
processor
cmac
hiding
page
storage
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.)
Expired - Fee Related
Application number
CN201010610084.2A
Other languages
English (en)
Other versions
CN102103673A (zh
Inventor
N·史密斯
V·尚伯格
A·库玛
P·高尔
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN102103673A publication Critical patent/CN102103673A/zh
Application granted granted Critical
Publication of CN102103673B publication Critical patent/CN102103673B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

在一个实施例中,处理器包括微代码存储,该微代码存储包括用于创建和执行要在系统软件不可见的隐藏环境中执行的隐藏资源管理器(HRM)的处理器指令。处理器还可包括用于存储安全信息的扩展寄存器,安全信息包括隐藏环境的至少一个内核代码模块的度量以及该至少一个内核代码模块的验证状态。描述并要求保护其他实施例。

Description

在隐藏执行环境中提供完整性验证和证明
背景技术
计算机系统由包括一个或多个处理器、存储器、输入/输出设备等的硬件元件的集合构成。此外,系统中可存在不同类型的软件,包括诸如操作系统(OS)、虚拟机监视器(VMM)等系统软件。此外,可提供应用软件以执行用户需要的特定任务,诸如文字处理、电子邮件、游戏等。为了实现软件与底层处理器硬件之间的通信,软件的指令可被转换成可使用存储在处理器中的微代码来实现的较小指令,诸如微指令(uops)。
一般而言,整个范围的存储器对于诸如OS或VMM之类的系统软件是可见的。然而,为了提供安全操作等,可在存储器中提供隐藏分区,隐藏分区包括可使用资源管理器来运行、可以在处理器微代码中实现、且可对OS/VMM隐藏的代码。然而,提供此类隐藏资源产生了各种安全和证明问题,从而增加了复杂性。
作为一个示例,当系统被置于某些低功率状态时,诸如根据高级配置与电源接口(ACPI)(修订版2.0标准,2003年4月25日)的所谓挂起(S3)状态,系统存储器处于自刷新状态。然而,处理器断电,且因此存储器上没有有效的保护。因此,在系统处于S3状态时,敌方可能能够修改存储器的内容,且若存储器在恢复(S0状态)时未被验证,这可能导致对系统存储器的隐藏存储器分区的代码注入攻击。虽然在进入S3之前对存储器进行散列并在从S3恢复进入S0时验证这些内容可避免此类代码注入攻击,但这也有缺点,包括由于散列以及随后验证存储器内容要完成的附加工作而延长了在S0与S3之间切换所需的时间量。
附图说明
图1是根据本发明一个实施例的平台的框图。
图2是根据本发明一个实施例的完整性检验值(ICV)阵列的框图。
图3是根据本发明一个实施例的隐藏存储器完整性运算和保护的概览的框图。
图4是根据本发明一个实施例的用于转换到低功率状态的方法的流程图。
图5是用于从低功率模式恢复正常功率模式中的执行的方法的流程图。
图6是根据本发明一个实施例的验证方法的流程图。
图7是根据本发明一个实施例的高级启动方法的流程图。
图8是根据本发明一个实施例的启动操作的流程图。
图9是根据本发明一个实施例的证明方法的流程图。
图10是根据本发明一个实施例的处理器的框图。
具体实施方式
各实施例可提供对隐藏存储器分区的完整性的高效验证,这可以在退出低功率状态进入正常操作状态时使用。此外,各实施例可用于提供对隐藏环境的证明以使得要在该环境中执行的各软件可在执行之前被验证。此类证明可完全在处理器内实现且无需经由互连访问其他组件,从而提高了速度并降低了复杂性以及经由与互连和其他组件交互带来的安全威胁的可能性。
为了提供主机操作系统(OS)/虚拟机监视器(VMM)与隐藏分区之间的存储器隔离,处理器可利用有效地阻止主机OS/VMM生成的对隐藏存储器的访问的一个或多个硬件范围寄存器。同样,为了控制从隐藏分区对主机OS/VMM存储器的访问,在隐藏分区下可存在页表。为了更好地理解隐藏环境中的操作,提供对提供此类环境的平台的概览是有益的。
现在参见图1,所示为根据本发明一个实施例的平台的框图。如图1中所示,平台10可以是任何类型的计算机系统,诸如服务器计算机、台式计算机、膝上型计算机、笔记本计算机等。该平台包括用于一起操作以执行所请求操作的各种硬件和软件。如所见的,平台硬件包括处理器20,处理器20在一个实施例中可以是包括多个处理器核22a-22n的多核处理器。如以下将进一步讨论的,每个核22可包括用于在隐藏环境中执行的微代码,其中该环境对于诸如OS或VMM之类的其他系统软件隐藏。如进一步所见的,处理器20包括用以与系统存储器30通信的存储器控制器中枢(MCH)24,系统存储器30在一个实施例中可以是动态随机存取存储器(DRAM)。
平台10的其他硬件可包括外围设备控制器中枢(PCH)40,其可包括虚拟化引擎42(VE)和可管理性引擎(ME)44,它们可提供对诸如存储50(例如,海量存储,诸如盘驱动器、光存储或其他非易失性存储)之类的各种外围设备的控制功能。此外,网络接口控制器(NIC)55可实现平台10与网络的其他代理之间的通信,该网络诸如有线网络,例如局域网(LAN);无线网络,诸如无线LAN(WLAN)、或宽范围无线网络(诸如蜂窝网络)。尽管在图1的实施例中示出该特定硬件,但是应理解本发明的范围在这方面不受限制。
如图1中进一步所见,还存在各种软件。首先,示出了隐藏资源管理器(HRM)25。如所见的,该软件层可充当底层处理器硬件与隐藏分区70之间的接口。在一个实施例中,HRM 25可实现为存储在处理器的微代码存储中的处理器微代码。注意,该微代码和存储可与用于提供处理器指令以对应于指令集架构(ISA)的用户级指令的常规微代码和微代码存储分开。然而,在一些实施例中,隐藏微代码和常规微代码可被存储在单个微代码存储的不同分区中。
资源管理器可执行以向隐藏分区70的代码提供服务。如所见的,该隐藏分区中可存在各种代码,其可存储在例如系统存储器30中被分段且对其他系统软件(即OS和VMM)隐藏的分区中。隐藏分区70包括各种代码,包括一个或多个隐藏内核和驱动程序72,它们可提供内核服务以及用于与平台的各种设备接口的驱动程序。除了可在隐藏执行环境中执行的一个或多个应用75以外,可存在附加的核心能力代码74。尽管本发明的范围在这方面不受限制,但隐藏执行环境可用于诸如实现为遵循正规安全模型的比通用OS提供更高完整性的操作。此外,平台10包括常规软件,常规软件包括主机OS/VMM分区60,主机OS/VMM分区60可包括各种主机设备驱动程序62和主机应用程序64。此类代码可存储在系统存储器30的另一分区中。HRM 25可向OS/VMM分区提供系统硬件的抽象。
各实施例可提供可由在隐藏环境中执行的处理器微代码来实现的机制,以减少执行S3到S0以及S0到S3转换所需花的时间量。将系统转换到S3导致处理器断电且存储器被置于自刷新模式。此时,对存储器没有保护,且各种运行时保护不可操作。这样,包括隐藏存储器在内的存储器可能容易受不同安全威胁攻击。注意,状态S1和S2适用于处理器组件(例如,仅核心和核外)且不涉及系统存储器。其他低功率状态S4和S5使系统存储器断电,因此所有内容丢失。
虽然下面列出的不是详尽的,但是应理解,威胁可采取许多不同形式。例如,一个此类威胁可能是恶意代码注入,其中攻击者可在S3功率状态转换期间修改/替换存储器镜像。其他威胁利用散列算法,其中攻击者可利用密码散列算法的弱点来寻找具有有效页的散列签名的攻击存储器页,且随后该攻击页被注入存储器。一旦突破即可到处运行(BORE)攻击是其中已获得攻击页的攻击者可将该攻击页注入大量类似地配置的系统上的攻击。可发生重放攻击,其中攻击者存档所有存储器页和完整性检验值,并随后替换当前存储器页和完整性值。当攻击者可交换具有相同密码消息认证码(CMAC)值的页时,发生页交换攻击。
某些威胁可通过使HRM先度量(例如,散列和验证)自刷新的存储器镜像然后才允许其执行来解决。在一个实施例中,该方法进行逐页完整性检验,其值被记录在完整性检验值(ICV)阵列中。散列由HRM微代码执行。在一个实施例中,ICV阵列的每个条目包含以下信息:完整性检验值,其可以是页的安全散列算法(SHA)散列或根据网络工作组请求注解(RFC)4493,2006年6月的高级加密标准-基于密码的消息认证码(AES-CMAC)操作;ICV有效指示符,其可为真/假以指示该页自上次执行ICV运算以来是否已被修改;以及直接存储器访问(DMA)页指示符,其可为真/假以指示该页是否可由设备使用DMA来访问。
在一个实施例中,HRM可使用后台任务来周期性地对隐藏页进行散列。在每次转换到隐藏环境之前,可调用后台任务对存储器中的一组固定的页进行散列。例如,若隐藏镜像的大小为64MB,则有16384页要进行完整性保护。后台任务可以循环方式在这16K页中轮转并在每一轮执行对16页的散列。因此,后台任务将需要被调用1K次以执行对分配给隐藏执行环境(HEE)的全部16K页的散列。对页进行散列所花的时间归结于HEE且从执行配额中减去。
ICV运算可根据不同的散列算法。例如,代替SHA1散列,可使用诸如SHA2操作之类的更强散列算法来投入散列算法使用。然而,可存在与使用SHA2算法相关联的性能惩罚和存储器开销成本。SHA256需要大约20个循环/字节,而SHA512需要约12个循环/字节。SHA2算法还产生通常相当大的消息摘要。SHA256具有256比特(32字节)的消息摘要(MD),而SHA512具有64字节的MD。该开销乘以存储器中的页数(16-64MB),这增加了相当多的开销。
因此,在许多实施例中,可使用SHA2的替换,诸如AES-CMAC操作,其比SHA算法快得多。另外,可使用CMAC来代替SHA2函数,因为其具有抗次原像。
现在参见图2,所示为根据本发明一个实施例的ICV阵列的框图。如图2中所示,隐藏执行环境可将其信息(即,代码和数据)存储在存储器的隐藏分区中。如图2中具体示出的,存储器110的多个页1101-110n可被分区用于隐藏执行环境。在隐藏环境的后台操作期间,HRM可执行对这些页中的每个页的散列并将散列值存储在ICV阵列120中。如所见的,ICV阵列120可包括多个条目125a-125n,每个条目对应于隐藏分区110的一页。每个此类条目包括用于存储CMAC或散列值的ICV字段126、以及有效指示符122和DMA指示符124,如上所述。在一个实施例中,ICV阵列120也可存储在隐藏分区110的一部分中,但各实现可将该ICV阵列存储在其他位置。也可使用仅HRM知道的加密密钥来计算和加密ICV阵列120的散列。这样,仅HRM能修改ICV阵列。
在S0到S3转换时,HRM可生成隐藏存储器页的ICV值。因此在一个实施例中,在S0到S3转换时,HRM通过计算每个存储器页的CMAC值连同以上描述的指示符来动态地构造ICV阵列。该ICV阵列可被存储在未使用的存储器页中。此后,可使用根据本发明一个实施例的完整性运算和保护来保护隐藏存储器。
现在参见图3,所示为根据本发明一个实施例的隐藏存储器完整性运算和保护的概览的框图。如图3中所示,隐藏分区110可包括多个存储器页P1-Pn,其中每一页可使用页表条目105中存在的信息来访问。此类页表条目可存在于处理器中,处理器可在转换后援缓冲器(TLB)或其他结构中高速缓存此类条目,或者这些条目可存在于隐藏分区自身内。注意,隐藏分区的页表条目可存储在单独的页表中。
为了执行完整性运算,每个存储器页可被提供给AES-CMAC函数150,其在一个实施例中可使用处理器核心、核外、集成输入/输出控制器、外围设备控制器、存储器控制器、或安全联合处理器中存在的加速器或其他专用硬件来实现。通过作为CMAC计算的一部分使用每个平台特有的私钥K1,来自另一平台的CMAC值不能被用于攻击目标平台,因为攻击者不能容易地猜出每个平台的K1。
在一个实施例中,该密钥可以为128比特且可以是每个平台特有的。在一个实施例中,AES-CMAC计算可使用核心中所包含的AES加速器,其可执行用户级ISA指令以实现AES算法。通过AES加速器,AES-CMAC在一个实施例中可在大约3.5个循环/字节处起作用,从而提供用于页完整性保护的高效且安全的方法。每个页的所得CMAC值可被存储在ICV阵列120中。在一个实施例中,每页的存储器开销是每CMAC为64比特。从源于128比特K1值的128比特CMAC选择高位比特。此外,可利用函数160使用相同的密钥K1类似地执行对整个ICV阵列120的完整性运算,由此将阵列CMAC值(CMACA)存储在存储165中。在一个实施例中,该CMACA值可为64比特。
为了标识为其计算这些完整性值的实例,根据网络工作组请求注解3602(2003年9月)的AES-密码块链式(CBC)加密函数170可用于使用存储在存储175中的第二私钥K2生成加密块(blob)190,其用于对密钥值K1和存储在计数器180中的计数器值C1执行加密。在一个实施例中,K2是从HRM存储密钥(仅HRM知道的对称密钥)导出的。进而可从处理器中或芯片组中的一组融合获得HRM存储密钥。在各个实施例中,计数器可以是单调计数器。
在不同实现中,单调计数器资源可使用多种技术来实现。作为示例,计数器可通过访问TPM或ME来实现。在该示例中,HRM可拥有TPM以确保对计数器资源的访问,或者HRM可访问例如处理器中存在的永久寄存器。作为另一示例,HRM可通过与ME建立信任关系(例如,执行密钥交换)来访问隐藏存储区域(例如,闪存或其他非易失性存储器)。作为又一示例,HRM可例如通过与存储设备建立信任关系(例如,执行密钥交换)来访问该存储设备,诸如硬盘驱动器或固态驱动器(HDD/SSD)。
所得块190可被存储并且随后在转换回操作状态以后被访问以确定隐藏分区的存储器是否仍完好。C1在被包含在该块中之后被递增到恢复计数器值C2。此后,C2可例如使用“读-递增-写(read-increment-write)”原子操作被写入永久存储器,以确保能检测到回放攻击。在其他实施例中,该递增可发生在从S3状态恢复之后。
注意,在一些实施例中,页交换攻击可通过在CMAC中包括取自页元数据的页索引值来解决。页索引值是由依赖于硬件保护来阻挠攻击者的HRM确定的。HRM中的程序隐错可能导致一个以上页CMAC上包括重复的页索引值。替换技术可使用第二单调计数器作为更可靠的唯一标识器。
现在参见图4,所示为根据本发明一个实施例的用于转换到低功率状态的方法的流程图。如图4中所示,方法200可始于接收要转换到低功率状态(从S0到S3的转换)的指令(框210)。使用隐藏环境的微代码,可使用私钥K1计算隐藏存储器的每一页的AES-CMAC值(框220)。这些CMAC值可被存储在ICV阵列中(框230)。一旦完成所有这些运算,可使用相同密钥K1计算整个阵列的AES-CMAC值(框240)。该CMAC值可被存储在另一存储中(框250)。
仍参见图4,随后可将单调计数器值C1和K1写入存储器(框260)。作为示例,这些值可被存储在临时存储位置(诸如高速缓存位置)中或隐藏分区内。随后可使用私钥K2来加密该存储器,由此生成加密块(框270)。该块随后可被存储在S3永久存储器中(框280)。作为示例,该块可被存储于在S3模式期间保持自刷新的隐藏分区的预定区域中。尽管在图4的实施例中示出了该特定实现,但本发明的范围在这方面不受限制。
现在参见图5,所示为用于从低功率模式恢复正常功率模式中的执行的方法的流程图。如所见的,方法300可始于在HRM中接收恢复通知(框310)。对于S3恢复,HRM可例如经由基本输入/输出系统(BIOS)接收要恢复隐藏镜像的通知(框310)。HRM创建隐藏环境的容器并随后确定隐藏存储器中是否存在有效ICV阵列。若是,则可通过验证该ICV阵列的CMAC(CMACA)以及每一页的CMAC来确定该ICV阵列的有效性(菱形320)。若ICV阵列完整性不是完好的,则HRM继续隐藏初始化作为正常复位路径,即存储器中的镜像被丢弃且例如从非易失性存储执行新加载代码加载(框325)。
若ICV阵列的完整性没被损害,则HRM将所有HEE页标记为不存在于隐藏页表中(框330)并将控制转移给隐藏引导加载程序进入点(框335)。当引导加载程序开始执行时,代码和数据页访问(框340)向HRM中生成页表故障(菱形345)。若ICV阵列中存在页的有效ICV(菱形350),则HRM对故障页计算ICV并将其与ICV阵列中的ICV匹配以验证该页的完整性(框355)。若得到验证(370),该页随后被映射到隐藏页表作为只读页(以跟踪页的改变)(框375)。此后,可允许对该页的访问(框380)。
仍参见图5,若在菱形350确定相应的ICV阵列条目不存在该页的有效ICV(例如,由有效指示符所指示的),则控制传递到框360,在此可用初始化代码来加载该页。此外,如所见的,若存在有效ICV条目,但计算出的ICV与相应的所存储ICV值不匹配,则在菱形370的验证失败,且可报告安全破坏(框390)。尽管在图5的实施例中示出了该特定实现,但是应理解,本发明的范围在这方面不受限制。例如,在一些实现中,还可执行对访客OS可访问的(例如,系统存储器的非隐藏存储器分区的)存储器页的验证,其中HRM实现此类验证。
现在参见图6,所示是根据本发明一个实施例的验证方法的流程图。如图6中所示,方法400可由HRM在从S3状态恢复时验证ICV阵列时实现。如所见的,方法400可始于接收要确定ICV完整性的请求(框410)。相应地,HRM可从HRM的存储密钥推导加密密钥K2(框420)并相应地使用K2解密该块以获得密钥K1和计数器值C1(框430)。还应注意,可在此时之前或在此时调用功率状态转换以从S3恢复并递增恢复计数器值C2,恢复计数器值C2可在恢复时从永久存储获得(框440)。
在菱形450,HRM可确定C1值与C2值是否相差预定阈值(例如,1)以上。若是,则验证失败且可报告安全破坏(框460)。若该比较是所期望的,则控制传递到框470,在此可验证ICV阵列的CMAC值以及每个隐藏执行环境页的CMAC值(框470)。若计算出的值匹配所存储的值,则在菱形475可确定验证成功且可作出成功验证的报告(框480)。否则,验证失败且控制传递到框460。
通过基于AES-CMAC执行对存储器页的散列以及CMAC值阵列的AES-CMAC(CMACA),各实施例可实现用于阻止次原像攻击的更高效技术。此外,使用通过加密CMACA值所包括的单调计数器值可阻止攻击者用来自先前功率状态转换的页来替换所有存储器页。另外,通过在页CMAC运算中包括页索引值,可防止出现在不同地址位置的具有相同CMAC值的相同页的恶意替换。
各实施例可进一步实现使用微处理器的微代码来实例化的隐藏可管理性环境以向外部实体证明该环境,同时对用户的隐私目标敏感。此外,该环境的完整性度量可被微代码记录,从而它们随后可被远程或外部实体使用和验证。
为了实现此类证明活动,微代码可创建信任根,其中保护证明函数免受外部威胁。处理器的扩展寄存器可被用于存储完整性度量。随后可使用私钥(例如,所谓的EPID)来对扩展寄存器的内容进行数字签名。进而,相应的公钥可密码地验证EPID私钥的签名。在一些实施例中,负责确定平台的隐私和安全策略的实体还可提供所有者ID值。
非对称代码签名密钥可被用于验证在执行/启动时加载到隐藏环境中的固件的完整性。进而,完整性清单可包含可接受完整性度量的白名单。该清单可保护指示可启动到隐藏环境中的所有应用的启动控制策略。
一般而言,可发生引导到安全隐藏环境中的两个操作阶段:1)启动阶段;以及2)证明阶段。在启动阶段,固件被加载到通过HRM对主存储器隐藏的存储器页中。首先使用非对称代码签名密钥来验证完整性清单。随后使用该清单中所包含的白名单(例如,散列值)来验证要加载的模块。
代码度量记录在仅HRM能访问的扩展寄存器中,从而其值不能被不信任代码更新或重置。如以下将描述的,在一个实施例中,要验证的第一对象是隐藏环境的暂时内核,称为内核0、引导加载程序,其被用于启动隐藏环境的永久内核(内核1)。内核0从HRM接收代码签名密钥并对内核1执行代码完整性度量和验证。度量被给予HRM以存储在扩展寄存器中。内核1随后使用由内核0提供的启动控制策略来验证应用代码完整性。应用的完整性度量可被记录在称为启动历史的日志文件中。以下进一步描述证明阶段的详情。
现在参见图7,所示是根据本发明一个实施例的高级启动方法的流程图。如图7所示,方法500可始于系统重置(框510)。HRM代码可被执行以验证暂时内核(框520)。若暂时内核得到验证(菱形530),则控制传递到框540,在此暂时内核的度量可被存储在处理器的扩展寄存器中(框540)。否则,若验证失败,则可报告失败(框535)。
如所见的,当验证指示有效的暂时内核时,该暂时内核可被启动(框550)并被执行以验证隐藏内核(框560)。该隐藏内核可以是隐藏执行环境的永久内核。相应地,在菱形565,可确定隐藏内核是否得到验证。若是,则隐藏内核的度量可被存储在扩展寄存器中(框575),且可使用隐藏内核来验证要执行的一个或多个应用(框580)。否则,若隐藏内核没有得到验证,则控制传递到框570,在此可报告失败。尽管在图7的实施例中示出了该特定实现,但本发明的范围在这方面不受限制。
应用的启动取决于向下直至HRM的每个在前层的成功启动,其细节在图8中示出,图8描述了根据本发明一个实施例的启动操作的流程500`。如所见的,HRM层510`作为重置补丁(Patch-at-Reset)机制的一部分被隐式地启动,其中执行微代码(以及因此HRM)。HRM代码本身作为制造的一部分被签名。代码镜像中包括代码签名密钥(HPK),其是制造商发行的Rivest ShamirAdelman(RSA)2048或更大的公钥。HEE内核0代码在复位之后由HRM加载。内核0和内核1镜像可位于非易失性存储中。这些镜像包括可执行代码以及包含该代码的完整性散列的签名清单。
当HRM加载内核0代码时,其计算内核0代码的散列(例如,AES-CMAC散列),该散列与清单中的散列值作比较。使用HPK代码签名密钥来验证清单签名。若内核0镜像完整性得到验证,则可用该散列值以及指示成功验证的标志(例如,K0_成功_比特=真)来更新可位于处理器内的扩展寄存器515`。否则,该寄存器被更新为指示失败的验证(例如,K0_成功_比特=假)。
当HRM仅在该标志比特被置位(例如,K0_成功_比特=真)的情况下才启动内核0并且将HPK公钥传递给内核0时,可发起内核0层520`。否则,HRM不允许内核0或内核1对扩展寄存器的使用。在一个实施例中,内核0是暂时内核,其目的是为了启动内核1。内核0加载内核1清单,其包括内核1代码、该代码的散列、包含内核1上可接受运行的应用的白名单的应用启动控制策略(AppLCP)、以及HPK的签名。AppLCP(应用LCP)被散列并被扩展到扩展寄存器515`中。AppLCP格式可包括扩展寄存器中扩展的散列中所包括的版本信息。当内核0加载内核1代码时,其计算内核1代码的散列(例如,AES-CMAC散列),该散列与内核1清单中的散列值作比较。使用HPK代码签名密钥来验证清单签名。在一个实施例中,所有内核1核心服务和共享库都被包括在内核1完整性度量中。
若内核1镜像完整性得到验证,则用该散列值以及指示成功验证的标志(例如,K1_成功_比特=真)来更新扩展寄存器515`。否则,用设置成指示失败的验证(即,K1_成功_比特=假)的标志来更新它。内核1计算AppLCP完整性散列。该散列被给予扩展寄存器515`以进行更新。此时,内核1层530`被启动。作为该启动的一部分,AppLCP被传递给内核1。内核1通过计算要启动的每个应用的完整性散列来安全地加载应用。与AppLCP分开的策略确定要加载哪些应用。若内核1计算出的散列(AES-CMAC)与AppLCP中所包含的散列值匹配,则应用完整性检验成功。应用启动结果的历史可被记录在启动历史535`中。此时,隐藏环境准备好执行。
在证明阶段,验证程序可发起获得环境完整性的证据的请求。该验证程序向内核1提供不重性数(例如,不重性数1),这确保证明结果是新的(即,不是来自先前请求的回放)。内核1随后可用不重性数1构造传递给HRM的启动历史的散列以进行处理。
HRM将该启动历史散列、不重性数、扩展寄存器以及所有者ID(以下描述)纳入随后用私钥来数字签名的消息中。经签名的证明记录被返回给内核1且随后被转发给原始验证程序。验证程序使用其先前接收到的私钥的公共副本来检查该EPID签名。验证程序应用解释设计成估量与同隐藏环境的交互相关联的风险的证明记录的策略。
因此在各个实施例中,可完全在处理器中提供证明而无需与微处理器核心分开的分立证明控制器。这避免了对信任将核心与证明控制器联合的总线架构和互连的需要。此外,各实施例可将证明与隐藏环境组合,因为片上处理器资源能实例化隐藏可管理性环境。
即,证明与隐藏环境集成于在处理器核心上运行的微代码中。微代码具有与处理器微代码相似的信任根,它可受托来正确地管理EPID、扩展寄存器以及代码签名密钥。使用EPID来签名接收到的证明允许验证程序知道该证明记录是可信的,因为它是由给定制造商所提供的硬件构造的。在其中使用由用户生成的私钥(例如,所有者ID)的一个实施例中,在证明记录中包括该所有者ID允许该平台的所有者通过确定该所有者ID应当多么独特或不独特来控制隐私属性。
HEE环境的证明始于验证程序的证明请求消息。验证程序是有能力与内核1交互的任何环境。现在参见图9,所示是根据本发明一个实施例的证明方法600的流程图。如图9中所示,验证程序610计算对其中证明有意义的事务所特有的不重性数(不重性数1)。该事务可以长期存活(跨越几年),诸如证书登记过程;或者可以短期存活(跨越几秒),诸如服务网页的超文本传输协议(HTTP)会话。验证程序完全控制如何构造不重性数1。不重性数1可阻止对获得证明的事务的回放攻击。验证程序610将不重性数1作为证明请求的一部分提供给内核1620,该证明请求指定哪些应用将被包括在该证明中。
内核1查询启动历史625以获得给定应用(例如,应用X)的完整性值和启动状态。该信息随后连同不重性数1一起被转发给HRM 630。HRM构造证明记录,该证明记录包括由内核1传递来的信息以及私钥,诸如作为隐藏部署的一部分提供给消费者环境的所有者ID。如所见的,所有者ID 635可被存储在处理器内部或处理器外部与HRM相关联的非易失性存储中。当该平台首次被加载到环境中时,有可能形成所有者ID,其允许该平台的所有者为硬件建立其自己的身份,这不同于由制造商定义的身份。这样,硬件的所有者可确定如何命名该平台以及决定需要多么多或多么少的独特性。因此,基于组织的隐私策略,该所有者ID可揭示确定量的个人可标识信息。使用从例如核外中的融合推导出的HRM交换密钥(HWK)来加密所有者ID。所交换的所有者ID随后可连同内核0、内核1、应用、清单和应用数据被存储在非易失性存储中。来自扩展寄存器638(其可以是例如核外所包含的机器专用寄存器(MSR))的信息,包括内核1和内核0的完整性度量以及AppLCP的散列,被提供给证明记录,该证明记录使用EPID私钥来签名。
经签名的结果被转发给验证程序610,其中使用EPID公钥来验证EPID签名。将证明记录不重性数1与原始不重性数1作比较以检测回放攻击。检查消费者提供的所有者ID以确定这是否是该验证程序拥有的平台。可咨询所发布的应用、内核1和内核0镜像的白名单以验证应用X正在预期环境中执行。作为一个示例,指派给部署到消费者的环境高速缓存中的平台的所有者ID被存档在目录服务中,其中一般部署在网络或企业内的验证代理可查询它们。验证程序还可访问也存档在目录服务中的经所有者批准的内核、应用和配置的白名单。
现在参见图10,所示为根据本发明一个实施例的处理器的框图。如图10中所示,处理器700可以是多级管线化无序处理器。图10中用相对简化的视图示出处理器700以说明根据本发明一个实施例的用于隐藏执行环境的各种特征。
如图10中所示,处理器700包括前端单元710,其可用于读取要执行的宏指令并准备它们供以后在处理器中使用。例如,前端单元710可包括读取单元701、指令高速缓存703、以及指令解码器705。如所见的,前端单元710可进一步包括ISA微代码存储706,其存储处理器的ISA的处理器指令。此外,单独的隐藏微代码存储708可存储用于隐藏执行环境的处理器指令。读取单元701可例如从存储器或指令高速缓存703读取宏指令并将它们馈送给指令解码器705以将它们解码成原语,即供处理器执行的微操作。
仍参见图10,前端单元710与执行单元720之间耦合了无序(OOO)引擎715,其可用于接收微指令并准备它们以供执行。更具体地,OOO引擎715可包括各种缓冲器以将微指令流重排序并分配执行所需的各种资源,以及将逻辑寄存器的重命名提供到各寄存器文件(诸如寄存器文件730和矢量寄存器文件735)内的存储位置上。寄存器文件730可包括用于整数和浮点运算的单独寄存器文件。矢量寄存器文件735可提供矢量大小的单元的存储,例如每寄存器为256或512比特。可存在诸如扩展寄存器725和非易失性存储722等附加存储。如上所述,扩展寄存器725可用于存储用于在隐藏执行环境中的证明操作期间使用的信息。除了其他信息,非易失性存储722可存储私钥和处理器标识符,包括例如EPID和所有者ID。
执行单元720中可存在各种资源,包括例如各种整数、浮点、和单指令多数据(SIMD)逻辑单元,以及其他专用硬件,诸如加密加速器。结果可被提供给回收逻辑,即重排序缓冲器(ROB)740。更具体地,ROB 740可包括用以接收与被执行的指令相关联的信息的各种阵列和逻辑。该信息随后被ROB740检查以确定指令是否能被有效回收且结果数据被提交给处理器的架构状态,或者是否发生了阻止指令的正确回收的一个或多个异常。当然,ROB 740可处理与回收相关联的其他操作。
如图10中所示,ROB 740耦合到高速缓存750,其在一个实施例中可以是低级高速缓存(例如,L1高速缓存),但本发明的范围在这方面不受限制。另外,执行单元720可直接耦合到高速缓存750。从高速缓存750可发生与高级高速缓存、系统存储器等的数据通信。尽管在图10的实施例中示出该高级图,但是应理解本发明的范围在这方面不受限制。
各实施方式可以用代码实现,并且可以存储在其上存储有指令的存储介质上,这些指令可用于给系统编程以便执行这些指令。存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、光学盘、固态驱动器(SSD)、致密盘只读存储器(CD-ROM)、可重写致密盘(CD-RW)和磁光盘、诸如只读存储器(ROM)的半导体器件、诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)之类的随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM)、磁卡或者光卡、或者适于存储电子指令的任何其它类型的介质。
尽管本发明以有限的几个实施例予以描述,本领域的技术人员将会从其中意识到许多改变和变型。所附权利要求旨在覆盖所有此类改变和变型,只要其落于本发明的实质精神和范围内。

Claims (20)

1.一种用于在隐藏执行环境中提供完整性验证和证明的装置,包括:
用于执行指令的处理器,所述处理器包括至少一个核心以及第一微代码存储器、第二微代码存储器和扩展寄存器,所述第一微代码存储器包括用于执行所述处理器的指令集架构ISA的指令的第一处理器指令,所述第二微代码存储器包括用于创建和执行要在系统软件不可见的隐藏环境中执行的隐藏资源管理器HRM的第二处理器指令,所述扩展寄存器用于存储安全信息,所述安全信息包括所述隐藏环境的至少一个内核代码模块的度量以及所述至少一个内核代码模块的验证状态,
其中所述处理器进一步包括加速器,用于执行密码消息认证码CMAC运算以及将所述CMAC运算存储在完整性检验值ICV阵列的条目中。
2.如权利要求1所述的装置,其特征在于,所述扩展寄存器还用于存储要在所述隐藏环境中执行的至少一个应用的启动控制策略的散列。
3.如权利要求1所述的装置,其特征在于,所述处理器用于完全在所述处理器内执行所述隐藏环境中的证明。
4.如权利要求3所述的装置,其特征在于,所述证明是在不与耦合到所述处理器的任何代理通信的情况下执行的。
5.如权利要求1所述的装置,其特征在于,所述加速器用于为耦合到所述处理器的存储器的隐藏分区的多个页中的每一页执行所述CMAC运算。
6.如权利要求1所述的装置,其特征在于,所述处理器包括由所述处理器的制造商存储的用于标识所述制造商的第一标识符以及由包括所述处理器的系统的所有者存储的第二标识符,其中所述第二标识符具有可控制量的独特性。
7.如权利要求1所述的装置,其特征在于,所述处理器用于从所述处理器中的一组融合获得私钥。
8.一种用于在隐藏执行环境中提供完整性验证和证明的方法,包括:
使用第一私钥生成系统的系统存储器的隐藏分区的多个页的密码消息认证码CMAC,并将所述CMAC中的每一个存储在完整性检验值ICV阵列的相应条目中;
使用第二私钥将所述第一私钥以及计数器值加密到加密块中;
使所述系统从第一功率状态转换到低功率状态,所述系统存储器在所述低功率状态中不受所述系统的处理器保护;以及
在所述系统从所述低功率状态转换到所述第一功率状态时使用所述加密块以及所述ICV阵列来验证所述隐藏分区。
9.如权利要求8所述的方法,其特征在于,所述第二私钥是由在隐藏环境中执行的所述处理器的微代码从存储密钥推导出的。
10.如权利要求8所述的方法,其特征在于,还包括使用所述第一私钥生成所述ICV阵列的CMAC并将所述ICV阵列的CMAC存储在第二存储器中。
11.如权利要求8所述的方法,其特征在于,还包括在使所述系统转换到所述低功率状态之前将所述计数器值存储在永久存储器中,以及在从所述低功率状态返回之后递增所存储的计数器值,其中在所述处理器处于所述低功率状态时,所述系统存储器处于自刷新模式。
12.如权利要求8所述的方法,其特征在于,还包括在使所述系统转换到所述低功率状态之前递增所述计数器值以及将递增后的计数器值存储在非易失性存储器中。
13.如权利要求12所述的方法,其特征在于,验证所述隐藏分区包括:
使用所述第二私钥解密所述加密块以获得所述第一私钥和所述计数器值,其中所述第二私钥是由所述处理器的微代码生成的;
将所述计数器值与存储在所述非易失性存储器中的所述递增后的计数器值作比较;以及
验证所述ICV阵列的CMAC以及所述页的CMAC。
14.如权利要求13所述的方法,其特征在于,还包括若所述比较得到大于预定阈值的差则指示所述验证失败。
15.如权利要求13所述的方法,其特征在于,还包括若所述ICV阵列的计算出的CMAC不匹配所述ICV阵列的所存储CMAC或者至少一个所述页的计算出的CMAC不匹配存储在所述ICV阵列中的相应CMAC,则指示所述验证失败。
16.一种用于在隐藏执行环境中提供完整性验证和证明的系统,包括:
用于执行指令的处理器,所述处理器包括至少一个核心以及微代码存储器和扩展寄存器,所述微代码存储器包括用于创建和执行要在系统软件不可见的隐藏环境中执行的隐藏资源管理器HRM的处理器指令,所述扩展寄存器用于存储安全信息,所述安全信息包括所述隐藏环境的至少一个内核代码模块的度量以及所述至少一个内核代码模块的验证状态,其中所述HRM用于使用第一私钥生成隐藏存储器分区的多个页中每一页的密码消息认证码CMAC、并将所述CMAC中的每一个存储在完整性检验值ICV阵列的相应条目中,使用第二私钥将所述第一私钥以及计数器值加密到加密块中,以及在所述系统转换出低功率状态时使用所述加密块和所述ICV阵列的每个所述条目来验证所述隐藏存储器分区中由所述HRM指派以供在所述隐藏环境中使用的页;以及
耦合到所述处理器且包括所述隐藏存储器分区的系统存储器,当所述处理器处于所述低功率状态时,所述系统存储器将处于自刷新状态。
17.如权利要求16所述的系统,其特征在于,所述处理器用于完全在所述处理器内执行所述隐藏环境中的证明而不与耦合到所述处理器的任何代理通信。
18.如权利要求16所述的系统,其特征在于,所述处理器进一步包括加速器,用于执行CMAC运算以及将所述CMAC中的每一个存储在所述ICV阵列的条目中。
19.如权利要求16所述的系统,其特征在于,所述处理器包括由所述处理器的制造商存储的用于标识所述制造商的第一标识符以及由包括所述处理器的系统的所有者存储的第二标识符,其中所述第二标识符具有可控制量的独特性。
20.如权利要求16所述的系统,其特征在于,所述HRM用于实现所述系统存储器中访客操作系统可访问的存储器分区的页的验证。
CN201010610084.2A 2009-12-16 2010-12-15 在隐藏执行环境中提供完整性验证和证明 Expired - Fee Related CN102103673B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/639,616 2009-12-16
US12/639,616 US8510569B2 (en) 2009-12-16 2009-12-16 Providing integrity verification and attestation in a hidden execution environment

Publications (2)

Publication Number Publication Date
CN102103673A CN102103673A (zh) 2011-06-22
CN102103673B true CN102103673B (zh) 2014-08-06

Family

ID=44144243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010610084.2A Expired - Fee Related CN102103673B (zh) 2009-12-16 2010-12-15 在隐藏执行环境中提供完整性验证和证明

Country Status (9)

Country Link
US (3) US8510569B2 (zh)
EP (1) EP2513837A4 (zh)
JP (1) JP5390703B2 (zh)
KR (1) KR101371784B1 (zh)
CN (1) CN102103673B (zh)
BR (1) BRPI1010193A2 (zh)
DE (1) DE112010004885T5 (zh)
TW (2) TWI567581B (zh)
WO (1) WO2011084210A2 (zh)

Families Citing this family (197)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819450B2 (en) * 2008-11-25 2014-08-26 Dell Products L.P. System and method for providing data integrity
US8589625B2 (en) 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of reconstructive I/O read operations in a storage environment
US11614893B2 (en) 2010-09-15 2023-03-28 Pure Storage, Inc. Optimizing storage device access based on latency
US11275509B1 (en) 2010-09-15 2022-03-15 Pure Storage, Inc. Intelligently sizing high latency I/O requests in a storage environment
US8468318B2 (en) 2010-09-15 2013-06-18 Pure Storage Inc. Scheduling of I/O writes in a storage environment
US8589655B2 (en) 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of I/O in an SSD environment
US8732426B2 (en) 2010-09-15 2014-05-20 Pure Storage, Inc. Scheduling of reactive I/O operations in a storage environment
US9244769B2 (en) 2010-09-28 2016-01-26 Pure Storage, Inc. Offset protection data in a RAID array
US8775868B2 (en) 2010-09-28 2014-07-08 Pure Storage, Inc. Adaptive RAID for an SSD environment
US8627464B2 (en) * 2010-11-02 2014-01-07 Microsoft Corporation Globally valid measured operating system launch with hibernation support
US9087196B2 (en) * 2010-12-24 2015-07-21 Intel Corporation Secure application attestation using dynamic measurement kernels
CN103329093B (zh) 2011-01-19 2017-09-12 国际商业机器公司 用于更新执行环境中的代码的方法和系统
US20120254526A1 (en) * 2011-03-28 2012-10-04 Advanced Micro Devices, Inc. Routing, security and storage of sensitive data in random access memory (ram)
US9111099B2 (en) * 2011-05-31 2015-08-18 Red Hat, Inc. Centralized kernel module loading
US11636031B2 (en) 2011-08-11 2023-04-25 Pure Storage, Inc. Optimized inline deduplication
US8589640B2 (en) 2011-10-14 2013-11-19 Pure Storage, Inc. Method for maintaining multiple fingerprint tables in a deduplicating storage system
CN103765427B (zh) 2011-09-07 2017-02-15 英特尔公司 检验设备的固件完整性
JP5905586B2 (ja) 2011-09-30 2016-04-20 インテル・コーポレーション 仮想マシンおよびネストにされた仮想マシンマネージャの認証されたランチ
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8973144B2 (en) * 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US10803970B2 (en) * 2011-11-14 2020-10-13 Seagate Technology Llc Solid-state disk manufacturing self test
CN104012032B (zh) * 2011-12-22 2017-04-19 英特尔公司 处理sha‑1安全散列算法的方法和设备
WO2013101083A1 (en) * 2011-12-29 2013-07-04 Intel Corporation An apparatus for hardware accelerated runtime integrity measurement
US10303503B2 (en) * 2011-12-31 2019-05-28 Intel Corporation Hardware protection of virtual machine monitor runtime integrity watcher
WO2013101248A1 (en) * 2011-12-31 2013-07-04 Intel Corporation Hardware protection of virtual machine monitor runtime integrity watcher
US8719540B1 (en) 2012-03-15 2014-05-06 Pure Storage, Inc. Fractal layout of data blocks across multiple devices
US20130254906A1 (en) * 2012-03-22 2013-09-26 Cavium, Inc. Hardware and Software Association and Authentication
EP2831787B1 (en) * 2012-03-30 2020-07-08 Irdeto B.V. Method and system for preventing and detecting security threats
US20130305391A1 (en) * 2012-05-14 2013-11-14 Rosemount Aerospace, Inc. Common Computing Apparatus Providing Distinct Non-Certified And Certified Computing Platforms
US9043903B2 (en) 2012-06-08 2015-05-26 Crowdstrike, Inc. Kernel-level security agent
US9367688B2 (en) 2012-06-22 2016-06-14 Intel Corporation Providing geographic protection to a system
US8973095B2 (en) 2012-06-25 2015-03-03 Intel Corporation Authenticating a user of a system via an authentication image mechanism
US8800052B2 (en) * 2012-06-29 2014-08-05 Intel Corporation Timer for hardware protection of virtual machine monitor runtime integrity watcher
US9367691B2 (en) 2012-07-31 2016-06-14 Hewlett-Packard Development Company, L.P. Modify executable bits of system management memory page table
JP6026666B2 (ja) * 2012-09-14 2016-11-16 インテル・コーポレーション 方法、装置、プログラム、及びコンピュータ可読記憶媒体
US8745415B2 (en) 2012-09-26 2014-06-03 Pure Storage, Inc. Multi-drive cooperation to generate an encryption key
US11032259B1 (en) 2012-09-26 2021-06-08 Pure Storage, Inc. Data protection in a storage system
US10623386B1 (en) 2012-09-26 2020-04-14 Pure Storage, Inc. Secret sharing data protection in a storage system
US8838997B2 (en) * 2012-09-28 2014-09-16 Intel Corporation Instruction set for message scheduling of SHA256 algorithm
US9215249B2 (en) 2012-09-29 2015-12-15 Intel Corporation Systems and methods for distributed trust computing and key management
US8924727B2 (en) 2012-10-12 2014-12-30 Intel Corporation Technologies labeling diverse content
US10095433B1 (en) 2012-10-24 2018-10-09 Western Digital Technologies, Inc. Out-of-order data transfer mechanisms for data storage systems
US9064109B2 (en) 2012-12-20 2015-06-23 Intel Corporation Privacy enhanced key management for a web service provider using a converged security engine
US9646039B2 (en) 2013-01-10 2017-05-09 Pure Storage, Inc. Snapshots in a storage system
US11768623B2 (en) 2013-01-10 2023-09-26 Pure Storage, Inc. Optimizing generalized transfers between storage systems
US10908835B1 (en) 2013-01-10 2021-02-02 Pure Storage, Inc. Reversing deletion of a virtual machine
US11733908B2 (en) 2013-01-10 2023-08-22 Pure Storage, Inc. Delaying deletion of a dataset
US9681378B2 (en) * 2013-04-12 2017-06-13 Microsoft Technology Licensing, Llc Energy efficient data handling for mobile devices
US10223156B2 (en) 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
US9705869B2 (en) 2013-06-27 2017-07-11 Intel Corporation Continuous multi-factor authentication
US10263770B2 (en) 2013-11-06 2019-04-16 Pure Storage, Inc. Data protection in a storage system using external secrets
US10365858B2 (en) 2013-11-06 2019-07-30 Pure Storage, Inc. Thin provisioning in a storage device
US11128448B1 (en) 2013-11-06 2021-09-21 Pure Storage, Inc. Quorum-aware secret sharing
CN103607279B (zh) * 2013-11-14 2017-01-04 中国科学院数据与通信保护研究教育中心 基于多核处理器的密钥保护方法及系统
US9535712B2 (en) * 2013-12-04 2017-01-03 Insyde Software Corp. System and method to store data securely for firmware using read-protected storage
US9208086B1 (en) 2014-01-09 2015-12-08 Pure Storage, Inc. Using frequency domain to prioritize storage of metadata in a cache
US9509502B2 (en) 2014-03-13 2016-11-29 Intel Corporation Symmetric keying and chain of trust
US9348997B2 (en) 2014-03-13 2016-05-24 Intel Corporation Symmetric keying and chain of trust
US9521125B2 (en) 2014-03-13 2016-12-13 Intel Corporation Pseudonymous remote attestation utilizing a chain-of-trust
US10289405B2 (en) 2014-03-20 2019-05-14 Crowdstrike, Inc. Integrity assurance and rebootless updating during runtime
US10656864B2 (en) 2014-03-20 2020-05-19 Pure Storage, Inc. Data replication within a flash storage array
US10430487B2 (en) 2014-04-04 2019-10-01 Paypal, Inc. System and method to share content utilizing universal link format
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
US9779268B1 (en) 2014-06-03 2017-10-03 Pure Storage, Inc. Utilizing a non-repeating identifier to encrypt data
US9218244B1 (en) 2014-06-04 2015-12-22 Pure Storage, Inc. Rebuilding data across storage nodes
US11399063B2 (en) 2014-06-04 2022-07-26 Pure Storage, Inc. Network authentication for a storage system
US9218407B1 (en) 2014-06-25 2015-12-22 Pure Storage, Inc. Replication and intermediate read-write state for mediums
US10496556B1 (en) 2014-06-25 2019-12-03 Pure Storage, Inc. Dynamic data protection within a flash storage system
US9785801B2 (en) * 2014-06-27 2017-10-10 Intel Corporation Management of authenticated variables
US10296469B1 (en) 2014-07-24 2019-05-21 Pure Storage, Inc. Access control in a flash storage system
US9690922B2 (en) * 2014-07-28 2017-06-27 Avago Technologies General Ip (Singapore) Pte. Ltd. System, apparatus, and method for anti-replay protection of data stored in a non-volatile memory device
US9495255B2 (en) 2014-08-07 2016-11-15 Pure Storage, Inc. Error recovery in a storage cluster
US9558069B2 (en) 2014-08-07 2017-01-31 Pure Storage, Inc. Failure mapping in a storage array
US9864761B1 (en) 2014-08-08 2018-01-09 Pure Storage, Inc. Read optimization operations in a storage system
US9928385B2 (en) * 2014-08-29 2018-03-27 The Boeing Company Periodic memory refresh in a secure computing system
US10430079B2 (en) 2014-09-08 2019-10-01 Pure Storage, Inc. Adjusting storage capacity in a computing system
US10164841B2 (en) 2014-10-02 2018-12-25 Pure Storage, Inc. Cloud assist for storage systems
US9489132B2 (en) 2014-10-07 2016-11-08 Pure Storage, Inc. Utilizing unmapped and unknown states in a replicated storage system
US10430282B2 (en) 2014-10-07 2019-10-01 Pure Storage, Inc. Optimizing replication by distinguishing user and system write activity
CN104270252B (zh) * 2014-10-16 2018-03-02 广州柏诚智能科技有限公司 热量表远程抄表系统及该系统实现可信增强的方法
US9727485B1 (en) 2014-11-24 2017-08-08 Pure Storage, Inc. Metadata rewrite and flatten optimization
US9773007B1 (en) 2014-12-01 2017-09-26 Pure Storage, Inc. Performance improvements in a storage system
US9552248B2 (en) 2014-12-11 2017-01-24 Pure Storage, Inc. Cloud alert to replica
US9588842B1 (en) 2014-12-11 2017-03-07 Pure Storage, Inc. Drive rebuild
US9864769B2 (en) 2014-12-12 2018-01-09 Pure Storage, Inc. Storing data utilizing repeating pattern detection
US10545987B2 (en) 2014-12-19 2020-01-28 Pure Storage, Inc. Replication to the cloud
US10296354B1 (en) 2015-01-21 2019-05-21 Pure Storage, Inc. Optimized boot operations within a flash storage array
US11947968B2 (en) 2015-01-21 2024-04-02 Pure Storage, Inc. Efficient use of zone in a storage device
US9710165B1 (en) 2015-02-18 2017-07-18 Pure Storage, Inc. Identifying volume candidates for space reclamation
US10082985B2 (en) 2015-03-27 2018-09-25 Pure Storage, Inc. Data striping across storage nodes that are assigned to multiple logical arrays
US10178169B2 (en) 2015-04-09 2019-01-08 Pure Storage, Inc. Point to point based backend communication layer for storage processing
US10140149B1 (en) 2015-05-19 2018-11-27 Pure Storage, Inc. Transactional commits with hardware assists in remote memory
US10491708B2 (en) 2015-06-05 2019-11-26 Apple Inc. Context notifications
US9547441B1 (en) 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US10339316B2 (en) 2015-07-28 2019-07-02 Crowdstrike, Inc. Integrity assurance through early loading in the boot phase
US11250134B2 (en) * 2015-08-21 2022-02-15 Cryptography Research, Inc. Secure computation environment
US11341136B2 (en) 2015-09-04 2022-05-24 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
US11269884B2 (en) 2015-09-04 2022-03-08 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
KR20170028825A (ko) 2015-09-04 2017-03-14 퓨어 스토리지, 아이앤씨. 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색
US10073964B2 (en) 2015-09-25 2018-09-11 Intel Corporation Secure authentication protocol systems and methods
KR101678793B1 (ko) * 2015-10-07 2016-11-22 (주)에이티솔루션즈 보안운영체제를 통한 앱 무결성 검증 방법
US9843453B2 (en) 2015-10-23 2017-12-12 Pure Storage, Inc. Authorizing I/O commands with I/O tokens
KR102411770B1 (ko) 2015-11-13 2022-06-22 삼성전자주식회사 전자 장치를 보호하기 위한 장치 및 방법
US10235526B2 (en) * 2015-12-18 2019-03-19 Intel Corporation Secure resume from a low power state
US10567170B2 (en) * 2015-12-24 2020-02-18 Mcafee, Llc Hardware-generated dynamic identifier
KR101786006B1 (ko) 2016-01-29 2017-10-17 한국과학기술원 머클 트리 기반 메모리 무결성 검증 방법 및 장치
US10833863B2 (en) * 2016-02-29 2020-11-10 Intel Corporation Device provisioning service
JP6304837B2 (ja) * 2016-03-16 2018-04-04 インテル・コーポレーション 仮想マシンおよびネストにされた仮想マシンマネージャの認証されたランチ
US10452297B1 (en) 2016-05-02 2019-10-22 Pure Storage, Inc. Generating and optimizing summary index levels in a deduplication storage system
US10133503B1 (en) 2016-05-02 2018-11-20 Pure Storage, Inc. Selecting a deduplication process based on a difference between performance metrics
US10790978B2 (en) 2016-05-25 2020-09-29 Intel Corporation Technologies for collective authorization with hierarchical group keys
US10203903B2 (en) 2016-07-26 2019-02-12 Pure Storage, Inc. Geometry based, space aware shelf/writegroup evacuation
KR102538096B1 (ko) 2016-09-13 2023-05-31 삼성전자주식회사 어플리케이션을 검증하는 디바이스 및 방법
US10162523B2 (en) 2016-10-04 2018-12-25 Pure Storage, Inc. Migrating data between volumes using virtual copy operation
US10191662B2 (en) 2016-10-04 2019-01-29 Pure Storage, Inc. Dynamic allocation of segments in a flash storage system
US10545861B2 (en) 2016-10-04 2020-01-28 Pure Storage, Inc. Distributed integrated high-speed solid-state non-volatile random-access memory
US10756816B1 (en) 2016-10-04 2020-08-25 Pure Storage, Inc. Optimized fibre channel and non-volatile memory express access
US10481798B2 (en) 2016-10-28 2019-11-19 Pure Storage, Inc. Efficient flash management for multiple controllers
US10185505B1 (en) 2016-10-28 2019-01-22 Pure Storage, Inc. Reading a portion of data to replicate a volume based on sequence numbers
US10359942B2 (en) 2016-10-31 2019-07-23 Pure Storage, Inc. Deduplication aware scalable content placement
US10452290B2 (en) 2016-12-19 2019-10-22 Pure Storage, Inc. Block consolidation in a direct-mapped flash storage system
US11550481B2 (en) 2016-12-19 2023-01-10 Pure Storage, Inc. Efficiently writing data in a zoned drive storage system
US11093146B2 (en) 2017-01-12 2021-08-17 Pure Storage, Inc. Automatic load rebalancing of a write group
US10387228B2 (en) 2017-02-21 2019-08-20 Crowdstrike, Inc. Symmetric bridge component for communications between kernel mode and user mode
US10528488B1 (en) 2017-03-30 2020-01-07 Pure Storage, Inc. Efficient name coding
WO2018194568A1 (en) * 2017-04-18 2018-10-25 Hewlett-Packard Development Company, L.P. Executing processes in sequence
US11403019B2 (en) 2017-04-21 2022-08-02 Pure Storage, Inc. Deduplication-aware per-tenant encryption
US10944671B2 (en) 2017-04-27 2021-03-09 Pure Storage, Inc. Efficient data forwarding in a networked device
US10339154B2 (en) * 2017-05-24 2019-07-02 Sap Se Decentralized image management
US10402266B1 (en) 2017-07-31 2019-09-03 Pure Storage, Inc. Redundant array of independent disks in a direct-mapped flash storage system
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US10776202B1 (en) 2017-09-22 2020-09-15 Pure Storage, Inc. Drive, blade, or data shard decommission via RAID geometry shrinkage
US10789211B1 (en) 2017-10-04 2020-09-29 Pure Storage, Inc. Feature-based deduplication
US10884919B2 (en) 2017-10-31 2021-01-05 Pure Storage, Inc. Memory management in a storage system
CN108055132B (zh) 2017-11-16 2020-04-28 阿里巴巴集团控股有限公司 一种业务授权的方法、装置及设备
US10860475B1 (en) 2017-11-17 2020-12-08 Pure Storage, Inc. Hybrid flash translation layer
US10740459B2 (en) 2017-12-28 2020-08-11 Crowdstrike, Inc. Kernel- and user-level cooperative security processing
US11144638B1 (en) 2018-01-18 2021-10-12 Pure Storage, Inc. Method for storage system detection and alerting on potential malicious action
US11010233B1 (en) 2018-01-18 2021-05-18 Pure Storage, Inc Hardware-based system monitoring
US10970395B1 (en) 2018-01-18 2021-04-06 Pure Storage, Inc Security threat monitoring for a storage system
US10853090B2 (en) * 2018-01-22 2020-12-01 Hewlett Packard Enterprise Development Lp Integrity verification of an entity
US10467527B1 (en) 2018-01-31 2019-11-05 Pure Storage, Inc. Method and apparatus for artificial intelligence acceleration
US11036596B1 (en) 2018-02-18 2021-06-15 Pure Storage, Inc. System for delaying acknowledgements on open NAND locations until durability has been confirmed
US11494109B1 (en) 2018-02-22 2022-11-08 Pure Storage, Inc. Erase block trimming for heterogenous flash memory storage devices
US11934322B1 (en) 2018-04-05 2024-03-19 Pure Storage, Inc. Multiple encryption keys on storage drives
US10678433B1 (en) 2018-04-27 2020-06-09 Pure Storage, Inc. Resource-preserving system upgrade
US11385792B2 (en) 2018-04-27 2022-07-12 Pure Storage, Inc. High availability controller pair transitioning
US10678436B1 (en) 2018-05-29 2020-06-09 Pure Storage, Inc. Using a PID controller to opportunistically compress more data during garbage collection
US11436023B2 (en) 2018-05-31 2022-09-06 Pure Storage, Inc. Mechanism for updating host file system and flash translation layer based on underlying NAND technology
US10776046B1 (en) 2018-06-08 2020-09-15 Pure Storage, Inc. Optimized non-uniform memory access
US11714910B2 (en) * 2018-06-13 2023-08-01 Hewlett Packard Enterprise Development Lp Measuring integrity of computing system
US11281577B1 (en) 2018-06-19 2022-03-22 Pure Storage, Inc. Garbage collection tuning for low drive wear
DE102018213616A1 (de) * 2018-06-20 2019-12-24 Robert Bosch Gmbh Kryptografiemodul und Betriebsverfahren hierfür
US11869586B2 (en) 2018-07-11 2024-01-09 Pure Storage, Inc. Increased data protection by recovering data from partially-failed solid-state devices
US11133076B2 (en) 2018-09-06 2021-09-28 Pure Storage, Inc. Efficient relocation of data between storage devices of a storage system
US11194759B2 (en) 2018-09-06 2021-12-07 Pure Storage, Inc. Optimizing local data relocation operations of a storage device of a storage system
US10795829B2 (en) * 2018-09-28 2020-10-06 Intel Corporation Device, method and system to selectively provide data validation functionality
US10846216B2 (en) 2018-10-25 2020-11-24 Pure Storage, Inc. Scalable garbage collection
US11113409B2 (en) 2018-10-26 2021-09-07 Pure Storage, Inc. Efficient rekey in a transparent decrypting storage array
CN112292678A (zh) * 2019-01-04 2021-01-29 百度时代网络技术(北京)有限公司 用于验证将要由主机系统的数据处理加速器执行的内核对象的方法与系统
US11194473B1 (en) 2019-01-23 2021-12-07 Pure Storage, Inc. Programming frequently read data to low latency portions of a solid-state storage array
US10936506B2 (en) * 2019-02-22 2021-03-02 Chengdu Haiguang Integrated Circuit Design Co., Ltd. Method for tagging control information associated with a physical address, processing system and device
US11588633B1 (en) 2019-03-15 2023-02-21 Pure Storage, Inc. Decommissioning keys in a decryption storage system
US11163912B2 (en) 2019-03-25 2021-11-02 Micron Technology, Inc. Data attestation in memory
US11334254B2 (en) 2019-03-29 2022-05-17 Pure Storage, Inc. Reliability based flash page sizing
US11397674B1 (en) 2019-04-03 2022-07-26 Pure Storage, Inc. Optimizing garbage collection across heterogeneous flash devices
US11775189B2 (en) 2019-04-03 2023-10-03 Pure Storage, Inc. Segment level heterogeneity
US10990480B1 (en) 2019-04-05 2021-04-27 Pure Storage, Inc. Performance of RAID rebuild operations by a storage group controller of a storage system
US11099986B2 (en) 2019-04-12 2021-08-24 Pure Storage, Inc. Efficient transfer of memory contents
US11151256B2 (en) * 2019-05-13 2021-10-19 Dell Products, L.P. Detecting security threats by monitoring chains of configuration changes made to basic input/output system (BIOS) or unified extensible firmware interface (UEFI) attributes
US11487665B2 (en) 2019-06-05 2022-11-01 Pure Storage, Inc. Tiered caching of data in a storage system
US11281394B2 (en) 2019-06-24 2022-03-22 Pure Storage, Inc. Replication across partitioning schemes in a distributed storage system
US10929046B2 (en) 2019-07-09 2021-02-23 Pure Storage, Inc. Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device
US11422751B2 (en) 2019-07-18 2022-08-23 Pure Storage, Inc. Creating a virtual storage system
US11086713B1 (en) 2019-07-23 2021-08-10 Pure Storage, Inc. Optimized end-to-end integrity storage system
US11963321B2 (en) 2019-09-11 2024-04-16 Pure Storage, Inc. Low profile latching mechanism
US11403043B2 (en) 2019-10-15 2022-08-02 Pure Storage, Inc. Efficient data compression by grouping similar data within a data segment
US11755751B2 (en) 2019-11-22 2023-09-12 Pure Storage, Inc. Modify access restrictions in response to a possible attack against data stored by a storage system
US11687418B2 (en) 2019-11-22 2023-06-27 Pure Storage, Inc. Automatic generation of recovery plans specific to individual storage elements
US11720692B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Hardware token based management of recovery datasets for a storage system
US11341236B2 (en) 2019-11-22 2022-05-24 Pure Storage, Inc. Traffic-based detection of a security threat to a storage system
US11657155B2 (en) 2019-11-22 2023-05-23 Pure Storage, Inc Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system
US11520907B1 (en) 2019-11-22 2022-12-06 Pure Storage, Inc. Storage system snapshot retention based on encrypted data
US11720714B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Inter-I/O relationship based detection of a security threat to a storage system
US11625481B2 (en) 2019-11-22 2023-04-11 Pure Storage, Inc. Selective throttling of operations potentially related to a security threat to a storage system
US11651075B2 (en) 2019-11-22 2023-05-16 Pure Storage, Inc. Extensible attack monitoring by a storage system
US11675898B2 (en) 2019-11-22 2023-06-13 Pure Storage, Inc. Recovery dataset management for security threat monitoring
US11615185B2 (en) 2019-11-22 2023-03-28 Pure Storage, Inc. Multi-layer security threat detection for a storage system
US11500788B2 (en) 2019-11-22 2022-11-15 Pure Storage, Inc. Logical address based authorization of operations with respect to a storage system
US11941116B2 (en) 2019-11-22 2024-03-26 Pure Storage, Inc. Ransomware-based data protection parameter modification
US11645162B2 (en) 2019-11-22 2023-05-09 Pure Storage, Inc. Recovery point determination for data restoration in a storage system
US11455395B2 (en) 2020-06-17 2022-09-27 Hewlett Packard Enterprise Development Lp Perform verification check in response to change in page table base register
US11829612B2 (en) 2020-08-20 2023-11-28 Micron Technology, Inc. Security techniques for low power mode of memory device
US20220197829A1 (en) * 2020-12-21 2022-06-23 Intel Corporation High capacity hidden memory
US20220198064A1 (en) * 2020-12-22 2022-06-23 International Business Machines Corporation Provisioning secure/encrypted virtual machines in a cloud infrastructure
TWI812042B (zh) * 2021-03-30 2023-08-11 新唐科技股份有限公司 安全系統

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1662869A (zh) * 2002-06-26 2005-08-31 英特尔公司 休眠保护
US7051366B1 (en) * 2000-06-21 2006-05-23 Microsoft Corporation Evidence-based security policy manager
CN101515316A (zh) * 2008-02-19 2009-08-26 北京工业大学 一种可信计算终端及可信计算方法
CN101533447A (zh) * 2008-05-24 2009-09-16 威盛电子股份有限公司 提供安全执行环境的微处理器及其执行安全编码的方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5167029A (en) * 1989-12-13 1992-11-24 International Business Machines Corporation Data processing system and associated process using memory cards having data modify functions utilizing a data mask and an internal register
US5493669A (en) * 1993-03-03 1996-02-20 Motorola, Inc. Data processor for simultaneously searching two fields of the rename buffer having first and second most recently allogated bits
US5664156A (en) * 1994-09-16 1997-09-02 Philips Electronics North America Corporation Microcontroller with a reconfigurable program status word
CN1183841A (zh) * 1995-02-13 1998-06-03 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US6990579B1 (en) 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US6986052B1 (en) 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US7036020B2 (en) 2001-07-25 2006-04-25 Antique Books, Inc Methods and systems for promoting security in a computer system employing attached storage devices
US7835520B2 (en) * 2003-02-20 2010-11-16 Zoran Corporation Unique identifier per chip for digital audio/video data encryption/decryption in personal video recorders
DE10338032B4 (de) 2003-08-19 2009-12-17 Infineon Technologies Ag Prozessor mit elektronischen Sicherungen zum Speichern von Geheimdaten
US7103779B2 (en) * 2003-09-18 2006-09-05 Apple Computer, Inc. Method and apparatus for incremental code signing
US7500098B2 (en) * 2004-03-19 2009-03-03 Nokia Corporation Secure mode controlled memory
US7725703B2 (en) * 2005-01-07 2010-05-25 Microsoft Corporation Systems and methods for securely booting a computer with a trusted processing module
US8510859B2 (en) 2006-09-26 2013-08-13 Intel Corporation Methods and arrangements to launch trusted, co-existing environments
US20080184028A1 (en) * 2007-01-29 2008-07-31 Dell Products L.P. Methods, Apparatus and Products for Establishing a Trusted Information Handling System
US7945786B2 (en) 2007-03-30 2011-05-17 Intel Corporation Method and apparatus to re-create trust model after sleep state
US20080320263A1 (en) * 2007-06-20 2008-12-25 Daniel Nemiroff Method, system, and apparatus for encrypting, integrity, and anti-replay protecting data in non-volatile memory in a fault tolerant manner
JP4775744B2 (ja) * 2007-10-19 2011-09-21 インテル・コーポレーション 信頼できる共存環境をラウンチする方法およびプログラム
US20090132837A1 (en) 2007-11-15 2009-05-21 Mcm Portfolio Llc System and Method for Dynamically Selecting Clock Frequency
US8171321B2 (en) 2007-12-26 2012-05-01 Intel Corporation Method and apparatus for cost and power efficient, scalable operating system independent services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7051366B1 (en) * 2000-06-21 2006-05-23 Microsoft Corporation Evidence-based security policy manager
CN1662869A (zh) * 2002-06-26 2005-08-31 英特尔公司 休眠保护
CN101515316A (zh) * 2008-02-19 2009-08-26 北京工业大学 一种可信计算终端及可信计算方法
CN101533447A (zh) * 2008-05-24 2009-09-16 威盛电子股份有限公司 提供安全执行环境的微处理器及其执行安全编码的方法

Also Published As

Publication number Publication date
JP5390703B2 (ja) 2014-01-15
EP2513837A2 (en) 2012-10-24
US8510569B2 (en) 2013-08-13
JP2012531000A (ja) 2012-12-06
KR101371784B1 (ko) 2014-03-07
US20130179693A1 (en) 2013-07-11
TWI567581B (zh) 2017-01-21
TW201145069A (en) 2011-12-16
WO2011084210A3 (en) 2011-09-09
KR20120093439A (ko) 2012-08-22
US20150013002A1 (en) 2015-01-08
EP2513837A4 (en) 2013-06-19
US8887267B2 (en) 2014-11-11
BRPI1010193A2 (pt) 2016-03-29
WO2011084210A2 (en) 2011-07-14
DE112010004885T5 (de) 2012-09-20
US20110145598A1 (en) 2011-06-16
TWI544356B (zh) 2016-08-01
US9195824B2 (en) 2015-11-24
TW201701178A (zh) 2017-01-01
CN102103673A (zh) 2011-06-22

Similar Documents

Publication Publication Date Title
CN102103673B (zh) 在隐藏执行环境中提供完整性验证和证明
KR102092453B1 (ko) 보안되는 실행 컨텍스트 데이터
JP5972924B2 (ja) Tpmアクセスを仮想化するシステム
CN100447736C (zh) 包括固件接口运行时环境保护字段的设备和方法
TW201500960A (zh) 在配有適用統一可延伸韌體介面(uefi)之韌體之計算裝置中的安全性變數變化檢測技術
CN102509046A (zh) 带有休眠支持的全局有效的测量的操作系统发动
CN111264044A (zh) 芯片、生成私钥的方法和可信证明的方法
US8108905B2 (en) System and method for an isolated process to control address translation
WO2020145944A1 (en) Securing node groups
US20230342472A1 (en) Computer System, Trusted Function Component, and Running Method
US20140283032A1 (en) Inter-processor attestation hardware
CN114547656A (zh) 一种云环境下基于Intel SGX的两阶段远程证明方法
US20230015334A1 (en) Deriving dependent symmetric encryption keys based upon a type of secure boot using a security processor
Yadav SECURE BOOTLOADER IN EMBEDDED SYSTEM USING MISRA-C
You et al. KVSEV: A Secure In-Memory Key-Value Store with Secure Encrypted Virtualization
CN114817936A (zh) 基于异构内存的内存全加密管理方法、装置、设备及介质
CN116956267A (zh) 平台证书的基于管理控制器的验证
CN117390630A (zh) 安全启动方法、安全架构系统及计算设备
CN117390631A (zh) 安全启动方法、安全架构系统及计算设备
Malipatlolla Sustainable Trusted Computing: A Novel Approach for a Flexible and Secure Update of Cryptographic Engines on a Trusted Platform Module
Akram et al. Trusted Platform Module: State-of-the-Art to Future Challenges

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140806

Termination date: 20181215

CF01 Termination of patent right due to non-payment of annual fee