当前位置: 首页 > 专利查询>英特尔公司专利>正文

安全输入/输出设备管理制造技术

技术编号:17445590 阅读:40 留言:0更新日期:2018-03-10 19:38
公开了用于安全I/O设备管理的装置和方法的实施例。在实施例中,一种装置包括处理器和I/O控制器。处理器具有安全执行环境支持,其中,处理器要使用安全执行环境支持来建立安全执行环境。I/O控制器包括集成的可信I/O设备,其中,可信I/O设备要经由可信I/O设备的默认控制端点来接收要配置可信I/O设备的未加密请求,响应于未加密请求的接收而配置命令端点和响应端点,经由命令端点从安全执行环境接收加密命令,响应于加密命令的接收而执行与I/O控制器相关的设备管理操作,以及响应于设备管理操作的执行而经由响应端点将加密响应发送到安全执行环境。

【技术实现步骤摘要】
【国外来华专利技术】安全输入/输出设备管理
技术介绍
当前的处理器可以提供对诸如安全飞地(enclave)(也称为架构飞地)之类的安全和/或可信执行环境的支持。安全飞地包括由处理器保护免于未授权的访问(包括未授权的读取和写入)的存储器区段(包括代码和/或数据)。具体地,某些处理器可包括英特尔®软件防护扩展(SGX)以提供安全飞地支持。具体地,SGX向安全飞地数据提供机密性、完整性和重放保护,同时数据驻留在平台存储器中,并且从而提供针对软件和硬件攻击二者的保护。片上边界形成自然的安全边界,其中数据和代码可以用明文来存储,并被假定是安全的。英特尔®SGX不保护跨越片上边界移动的输入/输出(I/O)数据。当前的计算设备“以明码”执行通用串行总线(USB)设备枚举和拓扑管理,也就是说,操作未被加密。因而,对于当前的计算设备,恶意系统软件可容易地识别命令、修改命令、修改结果以向安全飞地提供假信息或者阻止命令或结果以便完全地拒绝服务。附图说明本文描述的概念在附图中通过示例而非限制的方式进行例示。为了例示的简单和清楚,图中所示的元件不一定按比例绘制。在认为适当的情况下,在附图当中重复了参考标记以指示对应或类似的元件。图1是用于I/O设备的安全枚举和拓扑管理的计算设备的至少一个实施例的简化框图;图2是图1的计算设备的示例配置的简化框图;图3是图1和图2的计算设备的USB主机控制器的简化框图;图4是图3的USB主机控制器的数据流的示意图;以及图5是用于安全I/O设备管理的方法的实施例。具体实施方式虽然本公开的概念易于进行各种修改和替代形式,但是其具体实施例已经通过示例的方式在附图中示出并且将在本文中进行详细描述。然而,应当理解的是,没有意图将本公开的概念限制到所公开的特定形式,而是相反,意图是覆盖与本公开和所附权利要求一致的所有修改、等同和替代。说明书中对“一个实施例”、“实施例”、“例示性实施例”等的引用指示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可以或可以不必须包括所述特定特征、结构或特性。另外,这样的短语不一定指代相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,不论是否明确描述,都主张结合其它实施例实现这样的特征、结构或特性在本领域技术人员的知识范围内。此外,应当认识到,以“A、B和C中的至少一个”的形式包括在列表中的项目可以意味着(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。类似地,以“A、B或C中的至少一个”的形式列出的项目可以表示(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。在一些情况下,可以以硬件、固件、软件或其任何组合来实现所公开的实施例。所公开的实施例也可以被实现为存储或承载在一个或多个暂态或非暂态机器可读(例如,计算机可读)存储介质上的指令,所述指令可由一个或多个处理器读取和执行。机器可读存储介质可体现为用于存储或发送机器可读形式的信息的任何存储设备、机构或其它物理结构(例如,易失性或非易失性存储器、介质盘或其它介质设备)。在附图中,可以以具体布置和/或排序示出一些结构特征或方法特征。然而,应当认识到,可能不需要这样的具体布置和/或排序。相反,在一些实施例中,这样的特征可以以与例示性的图中所示的方式和/或顺序不同的方式和/或顺序来进行布置。此外,在特定图中包括结构特征或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中可以不包括这样的特征或可以将这样的特征与其它特征组合。现在参考图1,在例示性实施例中,用于I/O设备的安全枚举和拓扑管理的计算设备100除其它组件之外还包括处理器120、融合硬件密码学(密码)引擎140以及与一个或多个I/O设备146通信的一个或多个I/O控制器144。在使用中,如下面进一步描述的那样,密码引擎140提供对经由直接存储器访问(DMA)操作从平台I/O控制器144传送至存储器132或从存储器132传送至平台I/O控制器144的数据的运行中(on-the-fly)加密和解密。每个DMA事务加有表示与特定I/O设备146或I/O设备146的集合相关联的数据流的通道ID(CID)的标签。密码引擎140使用CID来可靠地标识必须被保护的事务,检索对应的加密密钥,并对DMA数据执行适当的密码操作。密码引擎140由可信软件使用处理器120的一个或多个专门指令被编程有例如通道信息和相关联的加密密钥。为了支持USB设备的安全枚举和拓扑管理,本公开描述了集成到USB主机控制器(例如,xHCI)中的USB可信I/O(TIO)设备。所公开的USBTIO设备可以支持向安全的和/或可信的执行环境(例如,使用英特尔®SGX建立的安全飞地)安全地发送I/O或者从安全的和/或可信的执行环境(例如,使用英特尔®SGX建立的安全飞地)安全地接收I/O。如下面进一步描述的那样,USBTIO设备提供了使安全飞地安全地枚举连接到USB主机控制器的设备的能力以及使安全飞地在发生安全I/O的同时管理设备改变(例如,连接/断开连接)的能力。因而,所公开的技术使用支持I/O设备的热插和热拔的I/O技术来支持安全飞地的安全I/O数据完整性(即,I/O数据的源的验证)。尽管本公开描述了涉及USB的例示性实施例,但是应当理解的是,潜在的公开内容可以适用于支持热插设备的任何I/O总线技术(例如,蓝牙,PCIe等)。计算设备100可以体现为能够执行本文描述的功能的任何类型的计算设备或计算机设备,包括但不限于:计算机、台式计算机、工作站、服务器、膝上型计算机、笔记本计算机、平板计算机、移动计算设备、可穿戴计算设备、网络器具、web器具、分布式计算系统、基于处理器的系统和/或消费电子设备。如图1所示,计算设备100例示性地包括处理器120、输入/输出子系统128、存储器132、数据存储设备134和通信电路136。当然,在其它实施例中计算设备100可以包括其它组件或附加组件,诸如通常在台式计算机中找到的那些组件(例如,各种输入/输出设备)。另外,在一些实施例中,例示性组件中的一个或多个可以并入另一组件,或以其它方式形成另一组件的一部分。例如,在一些实施例中,存储器132或其部分可以被并入处理器120中。处理器120可以体现为能够执行本文描述的功能的任何类型的处理器。处理器120可以体现为(一个或多个)单核处理器或多核处理器、数字信号处理器、微控制器或其它处理器或处理/控制电路。如图所示,处理器120可以包括硬件虚拟化支持122、安全飞地支持124和密码引擎编程支持126。硬件虚拟化支持122支持计算设备100对操作系统、应用和其它软件的虚拟化执行。硬件虚拟化支持122可以通过提供两种执行模式(VMX根模式和VMX非根模式)来包括虚拟机扩展(VMX)支持。VMX根模式允许执行软件对计算设备100及其硬件资源具有广泛的控制。相反地,管理程序(hypervisor)、虚拟机监视器(VMM)或主机操作系统(OS)可以在VMX根模式中执行。VMX非根模式约束对某些硬件指令的访问,同时仍然实现处理器120的普通环/特权系统。一个或多个访客OS可以在VMX非根模式中执行。这些访客操作系统可以在环零(ringzero)中执行,类似于在没有虚拟本文档来自技高网...
安全输入/输出设备管理

【技术保护点】
一种装置,包括:具有安全执行环境支持的处理器,其中,所述处理器要使用所述安全执行环境支持来建立安全执行环境;以及包括集成的可信输入/输出(I/O)设备的I/O控制器,其中,所述可信I/O设备要经由所述可信I/O设备的默认控制端点来接收要配置所述可信I/O设备的未加密请求,响应于所述未加密请求的接收而配置命令端点和响应端点,经由所述命令端点从所述安全执行环境接收加密命令,响应于所述加密命令的接收而执行与所述I/O控制器相关的设备管理操作;以及响应于所述设备管理操作的执行而经由所述响应端点向所述安全执行环境发送加密响应。

【技术特征摘要】
【国外来华专利技术】2015.07.31 US 62/199,687;2016.01.29 US 15/010,7851.一种装置,包括:具有安全执行环境支持的处理器,其中,所述处理器要使用所述安全执行环境支持来建立安全执行环境;以及包括集成的可信输入/输出(I/O)设备的I/O控制器,其中,所述可信I/O设备要经由所述可信I/O设备的默认控制端点来接收要配置所述可信I/O设备的未加密请求,响应于所述未加密请求的接收而配置命令端点和响应端点,经由所述命令端点从所述安全执行环境接收加密命令,响应于所述加密命令的接收而执行与所述I/O控制器相关的设备管理操作;以及响应于所述设备管理操作的执行而经由所述响应端点向所述安全执行环境发送加密响应。2.根据权利要求1所述的装置,其中,要执行所述设备管理操作包括要从所述I/O控制器检索状态信息以生成所述加密响应。3.根据权利要求1所述的装置,其中,要执行所述设备管理操作包括要向与所述I/O控制器耦合的I/O设备的默认控制端点发布请求。4.根据权利要求1所述的装置,其中,要执行所述设备管理操作包括要:阻止指示I/O设备连接或I/O设备断开连接的拓扑改变通知,以及响应于所述拓扑改变通知的阻止,将所述拓扑改变通知转发到所述安全执行环境。5.根据权利要求1所述的装置,其中:所述I/O控制器包括包含根集线器的通用串行总线(USB)主机控制器,并且所述可信I/O设备包括与所述USB主机控制器的所述根集线器的端口永久耦合的USB设备。6.一种方法,包括:由集成在计算设备的输入输出(I/O)控制器中的可信I/O设备经由所述可信I/O设备的默认控制端点来接收要配置所述可信I/O设备的未加密请求;响应于接收到要配置所述可信I/O设备的所述未加密请求,由所述可信I/O设备配置命令端点和响应端点;由所述可信I/O设备经由所述命令端点从所述计算设备的安全执行环境接收加密命令,其中,所述安全执行环境是使用所述计算设备的处理器的安全执行环境支持来建立的;响应于接收到所述加密命令,由所述可信I/O设备执行与所述I/O控制器相关的设备管理操作;以及响应于执行所述设备管理操作,由所述可信I/O设备经由所述响应端点向所述安全执行环境发送加密响应。7.根据权利要求6所述的方法,其中,执行所述设备管理操作包括从所述I/O控制器检索状态信息以生成所述加密响应。8.根据权利要求6所述的方法,其中,执行所述设备管理操作包...

【专利技术属性】
技术研发人员:SB麦克戈万
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1