Procedimiento y aparato para proporcionar una virtualización segura de un módulo de plataforma de confianza.
Un procedimiento de operación de un sistema (20) de procesamiento que comprende un procesador (22) y unmódulo físico (30) de plataforma de confianza acoplado en comunicación con el procesador,
comprendiendo elprocedimiento:
a) ejecutar una máquina virtual (110) en el procesador;
b) ejecutar en el procesador un servicio (104) que usa el módulo físico de plataforma de confianza para crearpara la máquina virtual un módulo virtual (120) de plataforma de confianza en una memoria protegida delsistema (20) de procesamiento que tiene registros (92) de configuración de la plataforma virtual en unespacio de memoria del módulo virtual de plataforma de confianza;
c) almacenar una clave (68, 70, 72) para el módulo virtual de plataforma de confianza en el módulo físico deplataforma de confianza;
d) operar el módulo virtual de plataforma de confianza para proporcionar a la máquina virtual característicasemuladas del módulo de plataforma de confianza basadas en valores almacenados en los registros deconfiguración de la plataforma virtual en el espacio de memoria del módulo virtual de plataforma deconfianza y la clave almacenada en el módulo físico de plataforma de confianza.
Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2005/019724.
Solicitante: INTEL CORPORATION.
Nacionalidad solicitante: Estados Unidos de América.
Dirección: (A DELAWARE CORPORATION) 2200 MISSION COLLEGE BOULEVARD SANTA CLARA, CA 95052 ESTADOS UNIDOS DE AMERICA.
Inventor/es: SCARLATA,VINCENT, ROZAS,CARLOS.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G06F21/00 FISICA. › G06 CALCULO; CONTEO. › G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › Disposiciones de seguridad para la protección de computadores, sus componentes, programas o datos contra actividades no autorizadas.
PDF original: ES-2392440_T3.pdf
Fragmento de la descripción:
Procedimiento y aparato para proporcionar una virtualización segura de un módulo de plataforma de confianza
Campo de la invención
La presente divulgación versa en general acerca del campo del procesamiento de datos y, más en particular, acerca 5 de un procedimiento y de aparatos relacionados para proporcionar una virtualización segura de un módulo de plataforma de confianza.
Antecedentes
Un sistema de procesamiento convencional puede incluir recursos de soporte físico, tal como una unidad central de proceso (CPU) y una memoria de acceso aleatorio (RAM) , así como recursos de soporte lógico, tal como un sistema operativo (SO) y uno o más programas o aplicaciones de usuario final. Normalmente, una aplicación se desarrolla para ser ejecutada en un SO particular. Cuando se arranca un sistema de ordenador típico convencional, carga el SO antes de cargar los programas o aplicaciones de usuario final. Normalmente, el SO hace de intermediario entre las aplicaciones de soporte lógico y el soporte físico en un sistema de procesamiento.
Además de RAM y una o más CPU, un sistema de procesamiento puede incluir un módulo de plataforma de
confianza (TPM) . Un TPM es un componente de soporte físico que reside dentro de un sistema de procesamiento y proporciona diversos dispositivos y servicios para mejorar la seguridad del sistema de procesamiento. Por ejemplo, puede usarse un TPM para proteger datos y para certificar la configuración de una plataforma. Los subcomponentes de un TPM pueden incluir un motor de ejecución y memoria o almacenamiento seguro no volátil (NV) . La memoria segura NV se usa para almacenar información sensible, tal como claves de cifrado, y el motor de ejecución protege la información sensible según las normas de seguridad que han de ser implementadas por el TPM.
Puede implementarse un TPM según especificaciones tales como la Versión 1.2 de TPM del Trusted Computing Group (TCG) , fechada el 2 de octubre de 2003 (en lo sucesivo, “especificación TPM”) , que incluye partes como Principios de diseño, Estructuras TMP e Instrucciones TPM. La especificación TPM está publicada por el TCG es está disponible en Internet en www.trustedcomputinggroup.pro/home.
En general, un TPM compatible con TCG proporciona servicios de seguridad tales como certificación de la identidad y/o la integridad de la plataforma con base en las características de la plataforma. Las características de la plataforma normalmente consideradas por un TPM incluyen componentes de soporte físico de la plataforma tales como el o los procesadores y el conjunto de chips, así como el soporte lógico que reside en la plataforma, tal como el soporte lógico inalterable y el SO. Un TPM también puede soportar la auditoría y el registro de la procesos de soporte lógico, así como la verificación de la integridad de arranque de la plataforma, la integridad de los ficheros y la licencia de uso del soporte lógico. Por lo tanto, puede decirse que un TPM proporciona una raíz de confianza para una plataforma. En consecuencia, un tercero puede implementar normas de seguridad que requieran que los sistemas solicitantes proporcionen una certificación de la plataforma basada en TPM. Por ejemplo, el tercero puede configurar un servidor para que deniegue las peticiones de los clientes, a no ser que esos clientes estén
acompañados de una certificación válida, procedente de los sistemas clientes, de la plataforma basada en TPM.
Sin embargo, cuando un sistema de procesamiento convencional usa un TPM, ese sistema de procesamiento puede ser capaz de soportar únicamente un único entorno de soporte lógico en un momento dado.
Recientemente, la Intel Corporation empezó a desarrollar tecnología para proporcionar múltiples entornos independientes de soporte lógico dentro de un solo sistema de procesamiento. Por ejemplo, la tecnología desarrollada por Intel Corporation incluye características para particionar y gestionar los recursos de soporte físico de un sistema de procesamiento de una manera que permita que múltiples SO se ejecuten en la misma máquina de forma concurrente, operando cada SO sustancialmente como si estuviere en su propia máquina física independiente. En un sistema de procesamiento de ese tipo, cada SO puede operar dentro de un entorno de soporte lógico sustancialmente independiente. Tales entornos independientes pueden denominarse particiones o máquinas
45 virtuales (VM) . En la publicación de solicitud estadounidense nº 20020194482 se da a conocer una plataforma anfitriona de cálculo que proporciona uno o más entornos de cálculo e incluye un dispositivo de confianza dispuesto formando una métrica de integridad individual a cada entorno de cálculo. Se proporciona la métrica de integridad a un usuario en respuesta a una interrogación de integridad, firmada para su autenticación usando una clave de firma mantenida por el dispositivo de confianza. El usuario puede verificar que la métrica firmada de integridad corresponde al entorno de cálculo esperado.
Breve descripción de los dibujos
Las características y las ventajas de la presente invención se harán evidentes a partir de las reivindicaciones adjuntas, de la siguiente descripción detalladas de una o más realizaciones ejemplares y de las correspondientes figuras, en las cuales:
la FIG. 1 es un diagrama de bloques que representa un entorno adecuado de procesamiento de datos en el cual pueden implementarse ciertos aspectos de una realización ejemplar de la presente invención; la FIG. 2 es un diagrama de bloques que representa una arquitectura adecuada de máquina virtual según una realización ejemplar de la presente invención; la FIG. 3 es un diagrama de flujo que ilustra un procedimiento para proporcionar un TPM virtual según una realización de la presente invención; y la FIG. 4 es un diagrama de flujo que ilustra un procedimiento para utilizar un TPM virtual según una realización de la presente invención.
Descripción detallada
Un TPM virtual (vTPM) es un dispositivo lógico que proporciona una funcionalidad similar a la de un TPM. La presente divulgación describe una o más realizaciones ejemplares de sistemas, procedimientos y aparatos para proporcionar TPM virtuales.
La FIG. 1 es un diagrama de bloques que representa un entorno 12 adecuado de procesamiento de datos en el cual pueden implementarse ciertos aspectos de una realización ejemplar de la presente invención. El entorno 12 de procesamiento de datos incluye un sistema 20 de procesamiento que incluye uno o más procesadores o unidades centrales 22 de proceso (CPU) acopladas en comunicación con diversos componentes adicionales a través de uno o más buses 24 de sistema u otras vías o medios de comunicación.
Tal como se usan en el presente documento, se pretende que las expresiones “sistema de procesamiento” y “sistema de procesamiento de datos” abarquen en líneas generales una sola máquina o un sistema de máquinas o dispositivos acoplados de forma comunicativa que operan conjuntamente. Sistemas de procesamiento ejemplares incluyen, sin limitación, sistemas de cálculo distribuidos, superordenadores, sistemas de cálculo de alto rendimiento, agrupamientos informáticos, ordenadores centrales, miniordenadores, sistemas cliente-servidor, ordenadores personales, estaciones de trabajo, servidores, ordenadores de bolsillo, ordenadores portátiles, tableros, teléfonos, agendas electrónicas (PDA) , dispositivos de mano, dispositivos de entretenimiento tales como dispositivos de audio y/o vídeo y otros dispositivos para procesar o transmitir información.
El sistema 20 de procesamiento puede ser controlado, al menos en parte, por medio de indicaciones de dispositivos convencionales de entrada, tales como teclados, ratones, etc., y/o por directrices recibidas de otra máquina, interacción con un entorno de realidad virtual (VR) , información biométrica de retorno u otras fuentes o señales de entrada. El sistema 20 de procesamiento puede utilizar una o más conexiones con uno o más sistemas 76, 78 de procesamiento de datos remotos, tal como a través de un controlador de red, un módem u otro acoplamiento comunicativo. Los sistemas de procesamiento pueden estar interconectados por medio de una red física y/o lógica 80, tal como una red de área local (LAN) , una red de área amplia (WAN) , una intranet, Internet, etc. Las comunicaciones que implican a la red 80 pueden utilizar... [Seguir leyendo]
Reivindicaciones:
1. Un procedimiento de operación de un sistema (20) de procesamiento que comprende un procesador (22) y un módulo físico (30) de plataforma de confianza acoplado en comunicación con el procesador, comprendiendo el procedimiento:
a) ejecutar una máquina virtual (110) en el procesador;
b) ejecutar en el procesador un servicio (104) que usa el módulo físico de plataforma de confianza para crear para la máquina virtual un módulo virtual (120) de plataforma de confianza en una memoria protegida del sistema (20) de procesamiento que tiene registros (92) de configuración de la plataforma virtual en un espacio de memoria del módulo virtual de plataforma de confianza;
c) almacenar una clave (68, 70, 72) para el módulo virtual de plataforma de confianza en el módulo físico de plataforma de confianza;
d) operar el módulo virtual de plataforma de confianza para proporcionar a la máquina virtual características emuladas del módulo de plataforma de confianza basadas en valores almacenados en los registros de configuración de la plataforma virtual en el espacio de memoria del módulo virtual de plataforma de confianza y la clave almacenada en el módulo físico de plataforma de confianza.
2. Un procedimiento según la reivindicación 1 que, además, comprende:
emular la operación de los registros de configuración de registros estándar de configuración de plataforma usando los registros (92) de configuración de la plataforma virtual.
3. Un procedimiento según la reivindicación 1 en el que la operación de utilización del módulo virtual (120A:120B) de plataforma de confianza para proporcionar características de un módulo físico (30) de plataforma de confianza comprende:
usar el módulo virtual (120A:120B) de plataforma de confianza para emular un módulo físico (30) de plataforma de confianza de soporte físico para la máquina virtual (110A:110B) en el sistema (20) de procesamiento.
4. Un procedimiento según la reivindicación 3 en el que el módulo virtual (120A:120B) de plataforma de confianza comprende un primer módulo virtual (120A) de plataforma de confianza y la máquina virtual comprende una primera máquina virtual (110A:110B) , comprendiendo el procedimiento, además:
crear un segundo módulo virtual (120B) de plataforma de confianza en el sistema (20) de procesamiento; almacenar una clave para el segundo módulo virtual (120B) de plataforma de confianza en el módulo físico
(30) de plataforma de confianza; y emular un módulo físico de plataforma de confianza para la segunda máquina virtual usando el segundo módulo virtual (120B) de plataforma de confianza.
5. Un procedimiento según la reivindicación 1 en el que la operación de almacenamiento de una clave para el módulo virtual (120A:120B) de plataforma de confianza en el módulo físico de plataforma de confianza comprende almacenar al menos una clave seleccionada del grupo que consiste en:
una clave (52) de aprobación para el dispositivo virtual (120A:120B) de confianza; y
una clave raíz (50) de almacenamiento para el módulo virtual (120A:120B) de plataforma de confianza.
6. Un procedimiento según la reivindicación 1 que, además, comprende:
generar una clave (52) de aprobación para el módulo virtual (120A:120B) de plataforma de confianza,
estando ligada la clave (52) de aprobación a un entorno para la máquina virtual (110A: 110B) .
7. Un procedimiento según la reivindicación 6 que, además, comprende:
transmitir información de certificación para la clave (52) de aprobación a una autoridad de certificación; y
obtener una credencial de autorización de la autoridad de certificación.
8. Un procedimiento según la reivindicación 6 que, además, comprende:
transmitir información de certificación para la clave (52) de aprobación a una autoridad (78) de certificación de virtualización; obtener una credencial de autorización para el módulo virtual (120A:120B) de plataforma de confianza de la autoridad (78) de certificación de virtualización; transmitir la credencial de aprobación a una autoridad (76) de certificación de privacidad; y recibir una credencial de identidad de la autoridad (76) de certificación de privacidad.
9. Un procedimiento según la reivindicación 1 en el que la operación de uso del módulo virtual (120A:120B) de plataforma de confianza para proporcionar características emuladas del módulo (30) de plataforma de confianza comprende:
obtener, de una autoridad (76) de certificación de privacidad, una credencial de identidad para una clave virtual (70) de certificación de la identidad asociada con una máquina virtual (110A:110B) ; y transmitir la credencial de identidad a un interrogador.
10. Un aparato que comprende:
un medio accesible por máquina e instrucciones codificadas en el medio accesible por máquina en el que las instrucciones, cuando son ejecutadas por un sistema de procesamiento con un módulo físico (30) de plataforma de confianza, hacen que el sistema (20) de procesamiento lleve a cabo operaciones que comprenden:
a) ejecutar una máquina virtual (110) en el procesador;
b) ejecutar en el procesador un servicio (104) que usa el módulo físico de plataforma de confianza para crear para la máquina virtual un módulo virtual (120) de plataforma de confianza en una memoria protegida del sistema (20) de procesamiento que tiene registros (92) de configuración de la plataforma virtual en un espacio de memoria del módulo virtual de plataforma de confianza;
c) almacenar una clave (68, 70, 72) para el módulo virtual de plataforma de confianza en el módulo físico de plataforma de confianza;
d) operar el módulo virtual de plataforma de confianza para proporcionar a la máquina virtual características emuladas del módulo de plataforma de confianza basadas en valores almacenados en los registros de configuración de la plataforma virtual en el espacio de memoria del módulo virtual de plataforma de confianza y la clave almacenada en el módulo físico de plataforma de confianza.
11. Un aparato según la reivindicación 10 en el que el módulo virtual (120A:120B) de plataforma de confianza comprende un primer módulo virtual (120A) de plataforma de confianza, y las operaciones llevadas a cabo por las instrucciones comprenden, además:
crear un segundo módulo virtual (120B) de plataforma de confianza en el sistema (20) de procesamiento; y almacenar una clave para el segundo módulo virtual (120B) de plataforma de confianza en el módulo físico
(30) de plataforma de confianza.
12. Un aparato según la reivindicación 10 en el que la operación de uso del módulo virtual (120A:120B) de plataforma de confianza para proporcionar características emuladas del módulo físico (30) de plataforma de confianza comprende:
obtener, de una autoridad (76) de certificación de privacidad, una credencial de identidad para una clave virtual (70) de certificación de la identidad; y transmitir la credencial de identidad a un interrogador.
13. Un aparato según la reivindicación 10 en el que la operación de uso del módulo virtual (120A:120B) de plataforma de confianza para proporcionar características emuladas del módulo (30) de plataforma de confianza comprende:
usar el módulo virtual (120A:120B) de plataforma de confianza para emular un módulo físico (30) de plataforma de confianza para la máquina virtual (110A:110B) en el sistema (20) de procesamiento.
14. Un sistema (20) de procesamiento que comprende:
un procesador (22) ; un módulo físico (30) de plataforma de confianza acoplado en comunicación con el procesador (24) ; un medio accesible por máquina acoplado en comunicación con el procesador; e instrucciones para llevar a cabo operaciones que comprenden:
a) ejecutar una máquina virtual (110) en el procesador;
b) ejecutar en el procesador un servicio (104) que usa el módulo físico de plataforma de confianza para crear para la máquina virtual un módulo virtual (120) de plataforma de confianza en una memoria protegida del sistema (20) de procesamiento que tiene registros (92) de configuración de la plataforma virtual en un espacio de memoria del módulo virtual de plataforma de confianza;
c) almacenar una clave (68, 70, 72) para el módulo virtual de plataforma de confianza en el módulo físico de plataforma de confianza;
d) operar el módulo virtual de plataforma de confianza para proporcionar a la máquina virtual características emuladas del módulo de plataforma de confianza basadas en valores almacenados en los registros de configuración de la plataforma virtual en el espacio de memoria del módulo virtual de plataforma de confianza y la clave almacenada en el módulo físico de plataforma de confianza.
15. Un aparato según la reivindicación 14 en el que:
el sistema (20) de procesamiento comprende procesadores múltiples en uno o más servidores; y la operación de uso del módulo virtual (120A:120B) de plataforma de confianza para proporcionar características emuladas de plataforma de confianza comprende:
proporcionar un primer módulo virtual (120A) de plataforma de confianza a una primera partición en el sistema (20) de procesamiento y proporcionar un segundo módulo virtual (120B) de plataforma de confianza a una segunda partición en el sistema (20) de procesamiento.
16. Un aparato según la reivindicación 14 en el que la operación de uso del módulo virtual (120A:120B) de
plataforma de confianza para proporcionar características emuladas del módulo de plataforma de confianza 10 comprende:
proporcionar un módulo lógico de plataforma de confianza a uno o más coprocesadores de servicio.
Patentes similares o relacionadas:
Funcionamiento de red de frecuencia única (SFN) para mejoras de cobertura de comunicaciones de tipo máquina (MTC), del 17 de Junio de 2020, de QUALCOMM INCORPORATED: Un procedimiento para comunicaciones de tipo máquina, MTC, inalámbricas realizado por un dispositivo remoto caracterizado por: detectar […]
Método y aparato de procesamiento de servicio, del 3 de Junio de 2020, de Advanced New Technologies Co., Ltd: Un método para el procesamiento de servicios, el método que comprende: después de recibir una solicitud de procesamiento de servicios de un usuario, […]
Dispositivo de a bordo para un vehículo, del 20 de Mayo de 2020, de AUTOSTRADE TECH S.p.A: Dispositivo de a bordo (100, 100', 100") para un vehículo, siendo adecuado dicho dispositivo de a bordo (100, 100', 100") para su uso en un sistema […]
Método para detectar software clonado, del 29 de Abril de 2020, de NAGRAVISION S.A.: Método para detectar un software clonado para ser usado en una unidad de usuario cliente que se comunica con un servidor para solicitar un servicio enviando una solicitud […]
Dispositivo multimedia y procedimiento de transmisión de datos por un dispositivo multimedia, del 18 de Marzo de 2020, de FM Marketing GmbH: Un dispositivo multimedia con un control remoto , que comprende: - un primer microprocesador , - un primer dispositivo de hardware para identificar el control […]
Proceso para asegurar la comunicación de un archivo digital a través de una red de comunicación, del 26 de Febrero de 2020, de AMADEUS S.A.S.: Proceso para comunicar un archivo digital (D1) desde un servidor a un Sistema de Manejo de Información (IHS), comprendiendo el IHS un conjunto […]
Método y aparato para proporcionar entorno virtual personalizado, del 15 de Enero de 2020, de Beijing Xiaomi Mobile Software Co., Ltd: Un método realizado por una plataforma de servicios para proporcionar acceso a una comunidad de servicios que comprende: comparar la información de identificación […]
Procedimiento y dispositivo para controlar la pantalla de seguridad en un dispositivo electrónico, del 28 de Agosto de 2019, de SAMSUNG ELECTRONICS CO., LTD.: Un dispositivo electrónico que comprende: un módulo de representación; una primera memoria que tiene datos de representación almacenados en […]