ES2381355T3 - Plataforma informática de confianza - Google Patents
Plataforma informática de confianza Download PDFInfo
- Publication number
- ES2381355T3 ES2381355T3 ES03742347T ES03742347T ES2381355T3 ES 2381355 T3 ES2381355 T3 ES 2381355T3 ES 03742347 T ES03742347 T ES 03742347T ES 03742347 T ES03742347 T ES 03742347T ES 2381355 T3 ES2381355 T3 ES 2381355T3
- Authority
- ES
- Spain
- Prior art keywords
- platform
- initialization
- module
- guidelines
- code
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/72—Protecting 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 in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/74—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0263—Rule management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2101—Auditing as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2153—Using hardware token as a secondary aspect
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
- Peptides Or Proteins (AREA)
- Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
Abstract
Un aparato que comprende: una plataforma (102) de cálculo que incluye: una raíz de confianza para un módulo (104) de medición que comprende un bloque (108) de arranque de inicialización de la plataforma; un procesador (124) para ejecutar instrucciones, incluido el código de inicialización de la plataforma, que incluye el bloque (108) de arranque de inicialización de la plataforma que comienza en un punto (122) de entrada dentro de la raíz de confianza para el módulo de medición y un código (148) de inicialización de la plataforma principal, ejecutando dicho bloque de arranque de inicialización de la plataforma código para habilitar dispositivos en la plataforma necesarios para que se ejecute el código de inicialización de la plataforma principal; y llevando a cabo dicho código de inicialización de la plataforma principal funciones necesarias para completar la inicialización de la plataforma de cálculo; un cargador (150) de sistema operativo; un módulo (112) de plataforma de confianza que incluye valores cargados de antemano almacenados en un emplazamiento (120) de almacenamiento blindado, estando relacionados dichos valores cargados de antemano con la integridad de la plataforma de cálculo; un módulo (106) de directrices de propiedades de seguridad de la plataforma que incluye una tabla (118) de directrices que contiene información de directrices (D1 - Dn) que definen propiedades de seguridad de la plataforma a las que hay que atenerse durante la inicialización de la plataforma; 20 un módulo (130) de comparación acoplado en comunicación con la raíz de confianza para el módulo (104) de medición; y en la que dicho bloque de arranque de inicialización de la plataforma y dicho módulo de directrices de propiedades de seguridad de la plataforma son para determinar si son dignos de confianza mediante la medición y la comparación con uno de dichos valores cargados de antemano de dicho módulo de plataforma de confianza usando código interno a dicho bloque de arranque de inicialización de la plataforma, en la que la medición es la acción de obtener un valor que pueda ser directamente asociado con la integridad de una entidad, y en la que el módulo de comparación verifica acto seguido que el valor medido coincide con uno de dichos valores cargados de antemano del módulo (112) de programa de confianza y, si no, impide el resto del procedimiento de arranque, permitiendo, de lo contrario, que la ejecución continúe con el bloque de arranque de inicialización de la plataforma para medir y verificar si la información de las directrices relativa al código de inicialización de la plataforma principal satisface una correspondiente directriz localizada en el módulo de plataforma de confianza y, si no, abstenerse de transferir el control a dicho código de inicialización principal, y, en caso afirmativo, permitir la ejecución del código de inicialización de la plataforma principal para medir y verificar si dispositivos adicionales (DISP1 a DISPn) acoplados a la plataforma satisfacen la información de las directrices y, en caso afirmativo, permitir la ejecución del código de inicialización de la plataforma principal y verificar si el cargador del sistema operativo satisface la información de las directrices y, en caso afirmativo, permitir que el procesador cargue un sistema operativo (110) y, si no, abstenerse de cargar un sistema operativo; y en la que el sistema operativo, si se carga, ha de ser ejecutado por el procesador.
Description
Plataforma informática de confianza
La presente invención versa en general acerca de aparatos, sistemas y procedimientos que proporcionan seguridad para plataformas de cálculo. Más en particular, la presente invención versa acerca de aparatos, sistemas y procedimientos usados para proporcionar autenticación de soporte físico y soporte lógico, como pueden darse en plataformas informáticas de confianza.
En un mundo crecientemente influido por la existencia de redes que conectan un amplio conjunto de recursos informáticos, nunca han sido más importantes los temas de la seguridad de los datos, la protección de la información y la privacidad de los usuarios. Típicamente, los ordenadores personales (PC) ofrecen una arquitectura abierta como estándar industrial que puede ser usado para construir una plataforma informática omnipresente. Sin embargo, la confianza en la plataforma no ha formado comúnmente parte de tales diseños. Tal como se usa en el presente documento, puede interpretarse que el término “plataforma” significa cualquier tipo de dispositivo, incluyendo soporte físico, soporte lógico o cualquier combinación de estos, cuya actividad se dirija según una pluralidad de instrucciones programadas.
Típicamente, las plataformas se ejecutan bajo el control de un sistema operativo (SO) cuando han de ejecutarse aplicaciones. Los sistemas operativos y los componentes previos al sistema operativo son complejos y requieren un procedimiento de carga (es decir, de “arranque”) para cargarlos en la memoria de la plataforma. La plataforma carga el SO cuando la plataforma pasa de un estado apagado o suspendido a un estado encendido, o cuando se aplica una señal de reposición a la línea de reposición de la plataforma. En el presente documento, la expresión “reposición de la plataforma” puede ser usada para referirse a cualquiera de estas condiciones. El código de inicialización de la plataforma incluye dos componentes: el bloque de arranque de inicialización de la plataforma (PIBB) y el código de inicialización de la plataforma principal (MPIC). Después de que ocurra una reposición de la plataforma, la unidad central de proceso (CPU) comienza la ejecución en una ubicación bien conocida y definida dentro del PIBB. Este código es intencionalmente pequeño, robusto y seguro. El PIBB ejecuta código para habilitar dispositivos en la plataforma necesarios para que se ejecute el código de inicialización de la plataforma principal. El PIBB pasa entonces el control de la plataforma al código de inicialización de la plataforma principal.
El código de inicialización de la plataforma principal lleva a cabo funciones necesarias para completar la inicialización de la plataforma. Tales funciones pueden incluir la inicialización de dispositivos integrados dentro de la plataforma y localizar e inicializar adaptadores opcionales acoplables o integrados (que tienen su propio código de inicialización de dispositivos). Después de esto, el código de inicialización de la plataforma principal localiza el cargador del SO y lo ejecuta. El cargador del SO, a su vez, carga el SO en memoria y comienza a ejecutar el SO. En este punto, se considera que la plataforma está en el estado actual del SO y bajo el control completo del SO cargado.
Siempre que una plataforma sin confianza carga un SO, pueden producirse violaciones de las directrices de seguridad sin tan siquiera conectar la plataforma a la red. Así, la informática de confianza está cobrando importancia en todos los aspectos de las operaciones de cálculo, incluso cuando tales operaciones se realicen aparte de una red.
El documento EP1085396 da a conocer una entidad informática que incluye una unidad autónoma autocontenida de confianza de proceso de datos que comprende un procesador que tiene un primer medio de proceso y un primer medio de memoria. La entidad también comprende una plataforma informática que tiene un medio de proceso principal y un área de memoria principal, junto con una pluralidad de recursos asociados físicos y lógicos, tales como dispositivos periféricos, incluyendo impresoras, módems, programas de aplicación, sistemas operativos y similares. La plataforma informática tiene una pluralidad de estados de operación diferentes, teniendo cada estado de operación un nivel diferente de seguridad y de fiabilidad. Estados seleccionados de los estados comprenden estados de confianza, en los que un usuario puede introducir información confidencial sensible con un alto grado de certeza de que la plataforma informática no se ha visto comprometida por influencias externas, como virus, piratas informáticos u ataques hostiles. Para entrar en un estado de confianza, se realizan automáticamente referencias al componente de confianza, y para salir de un estado de confianza debe hacerse referencia al componente de confianza. Al salir del estado de confianza, se borran de la plataforma informática todas las referencias al estado de confianza. Al entrar en el estado de confianza, se entra en el estado de una manera reproducible y conocida que tiene una configuración reproducible y conocida que es confirmada por el componente de confianza.
Según un aspecto de la presente invención, se proporciona un aparato según la reivindicación 1.
Según otro aspecto de la presente invención, se proporciona un procedimiento según la reivindicación 7.
Breve descripción de los dibujos
La FIG. 1 es un diagrama de bloques de un aparato, de un artículo que incluye un medio accesible por máquina y de un sistema según diversas realizaciones de la invención;
la FIG. 2 es un diagrama de bloques de un módulo de directrices según una realización de la invención; y las FIGURAS 3A y 3B son diagramas de flujo que ilustran un procedimiento de verificar la confianza en una plataforma según una realización de la invención.
Descripción detallada de las realizaciones
La confianza se establece cuando una primera entidad (por ejemplo, un programa que se ejecuta en nombre de una persona u organización) tiene base para creer que el estado, la configuración y las respuestas recibidas de una segunda entidad (por ejemplo, un ordenador personal) son precisamente las representadas para la primera entidad. La Alianza de Plataformas Informáticas de Confianza (TCPA) ha desarrollado un estándar para proporcionar a la industria un conjunto de condiciones operativas que den confianza en las plataformas y los entornos informáticos. Este estándar, “The TCPA Main Specification”, versión 1.1a, de 12 de noviembre de 2001, puede encontrarse en la actualidad en www-trusted computing-org (para evitar hiperenlaces involuntarios, los puntos del precedente URL han sido sustituidos por guiones). Como parte integral de cada plataforma, la “TCPA Main Specification” define elementos del entorno informático que operan para proteger la información dentro de las comunicaciones informáticas comerciales y personales. Los servicios existentes de seguridad basados en soporte lógico son inadecuados para dar prueba de que una plataforma es de confianza. La “TCPA Main Specification” detalla mecanismos que, cuando son implementados en una plataforma, proporcionan mayor confianza y permiten mejoras de los servicios existentes, así como la provisión de nuevos servicios.
La “TCPA Main Specification” también define un conjunto de componentes del que se puede confiar en que opere como se espera. Cuando están integrados en una plataforma, estos componentes medirán de forma fiable información sobre el entorno en esa plataforma, e informarán de ella. Esta “comprobación de integridad” de los componentes complementa y mejora los servicios de seguridad basados solo en componentes lógicos. Los componentes incluyen un motor informático aislado en cuyos procesos se puede confiar porque no pueden ser alterados. Estos procesos de confianza incluyen una almacenamiento protegido, una firma digital y un intercambio de datos de infraestructura de clave pública (PKI).
El comportamiento propuesto para una dispositivo habilitado por la TCPA, un módulo de plataforma de confianza (TPM), es “informar” de la integridad de la plataforma, permitiendo que la plataforma arranque hasta el SO incluso con componentes sin confianza instalados. Esto permite que un recurso externo (por ejemplo, un servidor en una red) determine la fiabilidad de la plataforma, pero no impide el acceso a la plataforma por el usuario.
La FIG. 1 es un diagrama de bloques de un aparato, de un artículo que incluye un medio accesible por máquina y de un sistema según diversas realizaciones de la invención. En una realización de la invención, un aparato 100 para proporcionar confianza en una plataforma 102 puede incluir una raíz de confianza para el módulo 104 de medición (RTM) y un módulo 106, 106’ de directrices de propiedades de seguridad de la plataforma. El RTM 104 establece la base de la confianza en la plataforma 102. Así, el usuario de la plataforma debe decidir en primer lugar confiar en el RTM 104 de la plataforma. Una vez que se ha adoptado esa decisión, puede usarse el aparato 100 descrito en el presente documento para proporcionar una base de la confianza en las porciones restantes del procedimiento de arranque.
Según se describe en el presente documento, se da por sentado que una entidad no autorizada no será capaz de modificar el PIBB 108, que puede ser el RTM 104. También puede darse por sentado que todos los demás componentes y/o módulos dentro de la plataforma 102 están sujetos a ataques o a modificación, intencional o no. Así, diversas realizaciones de la invención pueden actuar para evitar la carga del SO 110 (típicamente incluido en una memoria 111 u otro dispositivo de almacenamiento) dentro de la plataforma 102, y pueden alertar al usuario de la plataforma si ocurre una modificación no autorizada de los componentes de la plataforma.
La “TCPA Main Specification” define un conjunto de funciones de confianza y emplazamientos de almacenamiento blindados. Estas funciones y estos emplazamientos de almacenamiento están contenido en un módulo 112 de plataforma de confianza (TPM) que, típica, pero no necesariamente, está implementado como un dispositivo permanentemente conectado a la plataforma 102.
Ejemplos de emplazamientos de almacenamiento blindados incluyen registros 114 de integridad de datos (DIR), registros no volátiles que solo pueden ser modificados por el propietario de la plataforma y registros 116 de configuración de la plataforma (PCR) que contienen valores que miden la integridad de la plataforma 102. Parte de la “TCPA Main Specification” define la generación de una clave calculada de dianas y la puesta de los valores de clave calculada en un emplazamiento de almacenamiento blindado, posiblemente combinando los valores de clave calculada con valores almacenados previamente. Tales dianas pueden incluir código ejecutable, datos de configuración, un registro de información definida por la TCPA y otros elementos.
El módulo 106 de directrices de propiedades de seguridad de la plataforma, que incluye posiblemente información en forma de una tabla 118 de directrices, puede estar incluido en el PIBB 108. Típicamente, la tabla 118 de directrices contiene información que afecta a las operaciones de la plataforma durante el procedimiento de arranque.
Según se describe en el presente documento, uno de los DIR 114 es el DIR 120 de la tabla de directrices. El DIR 120 de la tabla de directrices (incluido en el TPM 112) contiene información puesta por el propietario de la plataforma, o por un agente autorizado, para validar el PIBB 108 y, por extensión, la tabla 118 de directrices. Así, se establece la confianza en el PIBB 108 y en el módulo 106, 106’ de directrices midiendo y comparando con un valor cargado de antemano puesto en el DIR 120 de la tabla de directrices por una entidad autorizada de confianza (es decir, el módulo 106, 106’ de directrices debe ser verificado). La tabla 118 de directrices contiene directrices a las que debe atenerse la plataforma 102 durante el procedimiento de inicialización/arranque.
La medición es la acción de obtener un valor que puede ser directamente asociado con la integridad de la entidad. Un ejemplo es calcular el valor de clave calculada de un gran flujo de bytes o, para valores pequeños, puede usarse directamente el propio valor. La verificación consiste en comparar el valor medido con un valor de confianza conocido. Así, tal como se define en el presente documento, “medir” significa reunir datos sobre un componente, introducir opcionalmente la información reunida en un registro (que puede estar en una ubicación sin confianza), crear opcionalmente una clave calculada de los valores de los datos y/o de los valores registrados, y almacenar los datos o los datos objeto de clave calculada en uno de los PCR 116. “Comparar mediciones” significa comparar valores en la tabla de directrices con los datos objeto de clave calculada o extendidos de un PCR 116 o del registro.
Tal como se ha hecho notar en lo que antecede, el módulo RTM 104 puede ser un PIBB 108 asociado con la plataforma 102, que incluye un punto 122 de entrada. Suponiendo que un procesador 124 dentro de la plataforma 102 esté acoplado con una línea 126 de reposición, el procesador 124 operará típicamente comenzando la ejecución en el punto 122 de entrada tras recibir una señal 128 de reposición por la línea 126 de reposición (es decir, una condición de reposición de la plataforma).
Un módulo 130 de comparación puede estar acoplado en comunicación y situado dentro del módulo RTM 104, con el módulo 106 de directrices de propiedades de seguridad de la plataforma y con diversas funciones internas 131 de medición. El módulo 130 de comparación puede operar evitando la transferencia de control al SO 110 y/o incluso impedir el resto del procedimiento de arranque si se viola una directriz D1-Dn incluida en el módulo 106 de directrices de propiedades de seguridad de la plataforma. Además, si, en cualquier momento durante la inicialización de la plataforma 102 un componente dentro de la plataforma 102 viola una directriz del módulo 106 de directrices de propiedades de seguridad de la plataforma, según la detección del módulo 130 de comparación, la plataforma 102 puede operar, por ejemplo, alertando al usuario de la plataforma (y/o posiblemente a otros dispositivos a través, por ejemplo, de una conexión de red) de que la plataforma 102 intentó inicializarse usando un componente inválido.
Así, el aparato 100 puede incluir un dispositivo 132 de alerto acoplado en comunicación con el procesador 124, posiblemente usando un módulo 134 del dispositivo de alerta. El dispositivo 132 de alerta puede ser accionado por el procesador 124 para proporcionar una señal 136 de alerta cuando se viola una directriz D1-Dn incluida en el módulo 106 de directrices de propiedades de seguridad de la plataforma. El dispositivo 132 de alerta puede ser un mecanismo de soporte físico usado para alertar al usuario de la plataforma que la plataforma no ha logrado completar la secuencia de arranque debido a la falta de conformidad de una o más directrices D1-Dn de seguridad definidas. La señal de alerta puede ser un simple tono audible o una secuencia de tonos, una luz o ráfagas de luz, pulsaciones táctiles, mensajería remota, etc. Además, pueden enviarse una alerta u otro mensaje 140, posiblemente usando el módulo 134 del dispositivo de alerta acoplado al módulo 130 de comparación, a otro dispositivo al otro lado de una red 142, normalmente por medio de una interfaz 144 de red. Después de accionar el dispositivo 132 de alerta, la plataforma 102 puede entrar en un estado que requiera una condición de reposición de la plataforma (por ejemplo, típicamente, una reposición del soporte físico, descrito en lo que antecede) para continuar.
El aparato 100 puede también tener una memoria 146 que incluya un MPIC 148 asociado con la plataforma 102. La memoria 146 puede estar acoplada en comunicación con la plataforma 102, y la plataforma 102 puede estar acoplada en comunicación con el módulo RTM 104.
Antes de transferir el control a la parte siguiente de la secuencia de inicialización de la plataforma, debe obtenerse autorización de la tabla 118 de directrices. La tabla 118 de directrices puede incluir valores no tratados de clave calculada, valores de PCR extendidos o identificadores de las credenciales de validación. Un identificador puede ser un puntero a una ubicación de memoria, un valor de índice o cualquier número único que pueda ser buscado.
Por último, antes de transferir el control de la plataforma 102 al cargador 150 del SO, el código 148 de inicialización de la plataforma principal compara la configuración global y la secuencia de carga de la plataforma 102 comprobando la tabla 118 de directrices para determinar que: existe un conjunto requerido de componentes contenido dentro de la plataforma 102, que la plataforma 102 no contiene componentes rechazados y/o que se ha cargado un conjunto de componentes en una secuencia particular. Así, la plataforma 102 puede incluir una memoria 152 u otro dispositivo de almacenamiento que incluyan la configuración 154 de la plataforma, así como una credencial 156 de aval de la plataforma y una credencial 158 de conformidad de la plataforma.
La TCPA también permite varios tipos de credenciales, incluyendo una credencial de aval, una credencial de plataforma y una credencial de validación. La credencial de aval proporciona seguridad de que la plataforma contiene un TPM válido. La credencial de plataforma proporciona seguridad de que el TPM está debidamente ligado a la plataforma. Y la credencial de validación proporciona seguridad de que un dispositivo o un código de 4
inicialización de dispositivos son del fabricante nombrado en la credencial. El módulo 106 de directrices de propiedades de seguridad de la plataforma (y/o la tabla 118 de directrices) puede también incluir una credencial de aval, una credencial de conformidad de la plataforma, validaciones de estas (por ejemplo, una clave calculada de las credenciales) si son externas al módulo 106 de directrices de propiedades de seguridad de la plataforma y/o un conjunto obligatorio de componentes en secuencia.
La plataforma 102 también puede incluir una memoria 160 u otro dispositivo de almacenamiento que incluya una o más configuraciones 162 de dispositivo asociadas con uno o más dispositivos DISP1-DISPn y sus dispositivoscódigos 164 de inicialización de dispositivos CÓDIGO1-CÓDIGOn. Las memorias 111, 152 y 160 pueden ser contiguas y estar contenidas dentro de una sola memoria mayor 166, o las memorias 111, 152, 160 pueden existir como parte de componentes o dispositivos físicamente separados de la plataforma 102.
La FIG. 2 es un diagrama de bloques de un módulo 206 de directrices según una realización de la invención. Tal como se ha hecho notar en lo que antecede, la tabla 218 de directrices incluida en el módulo 206 de directrices puede ser usada para definir las propiedades de seguridad de la plataforma usando una o más directrices contenidas en la misma. Típicamente, la tabla 218 de directrices reside dentro del PIBB. Alternativamente, la tabla 218 de directrices puede residir fuera del PIBB (véase la ubicación del módulo 106’ en la FIG. 1), pero su valor medido debe estar incluido con el del PIBB cuando se compara con el DIR de la tabla de directrices.
La tabla 218 de directrices puede incluir varias entradas, típicamente agrupadas en secciones 267 de directrices que definen las propiedades de seguridad de la plataforma, tales como: directrices 268 del código de inicialización de la plataforma, directrices 270 de configuración de la plataforma, directrices 272 de código de inicialización de dispositivos, directrices 274 de configuración de dispositivos opcionales o integrados, directrices 276 del cargador del SO, directrices 278 de configuración del cargador del SO y otras reglas y definiciones relacionadas con la seguridad. Cada una de las secciones 267 puede también incluir ninguno, algunos o todos los siguientes: valores 280 no tratados de directrices de clave calculada, valores extendidos 282 de directrices, identificadores 284 de credenciales de validación, valores que identifiquen la credencial 286 de aval de la plataforma, valores que identifiquen la credencial 288 de conformidad de la plataforma y/o valores que identifiquen las credenciales 290 de validación.
Típicamente, cada entrada incluye una bandera que indica la directriz requerida para esa sección. Por ejemplo, la sección puede contener solo valores no tratados de clave calculada que han de ser usados para verificar una directriz o puede contener solo identificador de las credenciales de validación que indique que para esa sección particular solo se permiten los componentes que tienen credenciales de validación.
La verificación de que un elemento/módulo del componente o la plataforma satisface las directrices definidas ocurre comparando mediciones del elemento/módulo con la debida entrada de la tabla de directrices. Puede haber múltiples entradas pertenecientes a un solo componente o módulo en la tabla 218 de directrices. Puede requerirse que ninguna, algunas o todas las entradas coincidan para que ese componente o módulo satisfaga una directriz definida. Por ejemplo, una directriz 274 para un componente requerido 292 puede incluir la comprobación del valor 280 no tratado de clave calculada, la comprobación de los valores extendidos 282 de clave calculada, la validación de al menos una de las credenciales 290 del componente y luego la comparación del valor 280 no tratado de clave calculada con los valores especificados dentro de la credencial 290. Si un componente 292 no logra satisfacer la directriz asociada 274, la entidad que comprobó el componente 292 puede transferir el control de la plataforma al módulo del dispositivo de alerta.
Con referencia de nuevo a la FIG. 1, es ahora fácil entender que una plataforma 102 puede incluir uno o más de los siguientes componentes: un procesador 124, código 194 de inicialización de la plataforma (dotado de un PIBB 108 y de un código 148 de inicialización de la plataforma principal) y diversos dispositivos, tales como dispositivos integrados y/u opcionales DISP1-DISPn dentro de la plataforma 102, que pueden contener sus propios códigosrespectivos CÓDIGO1-CÓDIGOn de inicialización del dispositivo. Típicamente, la plataforma 102 también incluye un dispositivo que incluye o tiene la capacidad de acceder al cargador 150 del SO y un dispositivo que incluye o tiene la capacidad de acceder al SO 110.
Así, en otra realización de la invención, un sistema 196 puede incluir un procesador 124 acoplado con una memoria
198. La memoria 198 puede incluir un módulo RTM 104, un módulo 106 de directrices de propiedades de seguridad de la plataforma (capaz de estar acoplado en comunicación con la memoria 198) y un módulo 130 de comparación (capaz de estar acoplado en comunicación con la memoria 198). Así, la memoria 198 puede incluir un bloque de arranque de inicialización, tal como un PIBB 108. Típicamente, el módulo 130 de comparación opera impidiendo la transferencia del control al sistema operativo 110 o a otros componentes previos al SO (por ejemplo, deteniendo por completo el procedimiento de arranque) cuando se viola una directriz incluida en el módulo 106 de directrices de propiedades de seguridad de la plataforma. Esto puede ocurrir, por ejemplo, cuando falla la medición y la comparación (es decir, la verificación) el módulo 106 de directrices de seguridad de la plataforma con el valor en el DIR 120 de la tabla de directrices incluido en el TPM 112. En esta realización, el módulo 130 de comparación debería ser verificado antes de que haya confianza en él para efectuar comparaciones válidas.
Con referencia aún a la FIG. 1, el sistema 196 también puede incluir una línea 126 de reposición acoplada al procesador 124 en la que el procesador 124 ejecuta un punto 122 de entrada incluido en el RTM 104 cuando se aplica una señal 128 de reposición a la línea 126 de reposición para iniciar una condición de reposición de la plataforma. Por último, debería hacerse notar que el sistema 196 puede también incluir un dispositivo 132 de alerta acoplado en comunicación con el procesador 124, en el que el dispositivo 132 de alerta puede ser accionado por el procesador 124 para proporcionar una señal de alerta cuando se viola una directriz incluida en el módulo 106 de directrices de propiedades de seguridad de la plataforma verificada.
Con referencia ahora tanto a la FIG. 1 como a la 2, el aparato 100; el módulo RTM 104; los módulos 106, 106’, 206 de directrices de propiedades de seguridad de la plataforma (incluyendo cada uno de los diversos elementos dentro de los mismos); el PIBB 108; los DIR 114; los PCR 116; las tablas 118, 218 de directrices; el procesador 124; el módulo 130 de comparación; las funciones internas 131 de medición; el dispositivo 132 de alerta; el módulo 134 del dispositivo de alerta; la interfaz 144 de red; y las memorias 111, 146, 152, 160, 166, 198 pueden ser caracterizados en el presente documento como “módulos”. Tales módulos pueden incluir circuitería de soporte físico y/o un microprocesador y/o circuitos de memoria, módulos de programas de soporte lógico y/o soporte lógico inalterable y combinaciones de los mismos, según desee el arquitecto del aparato 100 y del sistema 196, y apropiados para realizaciones particulares de la invención.
Las aplicaciones que pueden incluir el aparato y el sistema novedosos de la presente invención incluyen circuitería electrónica usada en ordenadores de alta velocidad, circuitería de procesamiento de comunicaciones y señales, módems, módulos de procesador, procesadores integrados y módulos específicos de aplicación, incluyendo módulos multicapa y de chips múltiples. Tales aparatos y sistemas pueden, además, estar incluidos como subcomponentes dentro de una variedad de sistemas electrónicos, tales como televisores, teléfonos celulares, ordenadores personales, radios, vehículos y otros.
Las FIGURAS 3A y 3B son diagramas de flujo que ilustran un procedimiento de verificación de la confianza en una plataforma según una realización de la invención. El procedimiento 313 puede empezar en la FIG. 3A en el bloque 315 cuando un procesador u otro módulo dentro de la plataforma detecta una condición de reposición de la plataforma. El procesador puede entonces comenzar la ejecución del código del punto de entrada en el bloque 317.
El PIBB contiene su propio código para llevar a cabo mediciones (es decir, las funciones internas de medición) porque todos los demás componentes carecen de confianza en este momento. El PIBB, usando el código interno, se mide a sí mismo en el bloque 319 y verifica que satisface la directriz según el DIR de la tabla de directrices dentro del TPM en los bloques 321 y 323. Si la medición no satisface la directriz, típicamente el control se pasa entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque
325. Opcionalmente, el TPM puede ser inhabilitado para que la plataforma se comporte como una plataforma sin confianza, pero se permite que el procedimiento de arranque continúe. Si la medición satisface la directriz, entonces se puede tener confianza en la tabla de directrices, y el procedimiento 313 puede continuar con el bloque 327.
Diversas realizaciones de la invención dada a conocer en el presente documento implican el uso del PIBB para medir el código de inicialización de la plataforma principal en el bloque 327, y verifican que satisface la directriz en el bloque 329. Con referencia aún al bloque 327, si hay extensiones al código de inicialización de la plataforma principal, el PIBB también mide las extensiones y verifica que satisfacen la directriz. Si los resultados de la medición no satisfacen la directriz en el bloque 329, típicamente el control se pasa entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
Si la plataforma contiene una o varias credenciales de plataforma, conformidad o aval, son verificadas con las entradas respectivas dentro de la tabla de directrices en el bloque 333. Si las credenciales no se verifican, la plataforma no satisface la directriz. Si la medición no satisface la directriz en el bloque 335, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
El código de inicialización de la plataforma principal puede ser usado para examinar la plataforma en busca de dispositivos opcionales o integrados y sus códigos de inicialización del dispositivo. Sin embargo, antes de transferir el control del código de inicialización de la plataforma principal a cualquier código de inicialización de dispositivos, el código de inicialización de la plataforma principal debería verificar que el dispositivo y su código de inicialización del dispositivo satisfacen la directriz en los bloques 337 y 339. Si la medición no satisface la directriz en el bloque 339, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
Los códigos de inicialización de dispositivos pueden validar la configuración de sus dispositivos asociados. En este caso, el control puede ser transferido al código de inicialización de dispositivo en el bloque 341. Para cada dispositivo, si hay una entrada en la tabla de directrices relacionada con un dispositivo seleccionado, el código de inicialización del dispositivo asociado con ese dispositivo puede verificar que la configuración del dispositivo asociado satisface la directriz en el bloque 343, incluyendo cualquier componente oculto del dispositivo asociado. Si la medición no satisface la directriz en el bloque 345, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325. Si se 6
determina en el bloque 347 que existen que otra entrada de la tabla de directrices y un código de inicialización del dispositivo asociado, el código puede ser medido entonces en el bloque 337 y los procedimientos esquematizados por los bloques 339, 341, 343, 345 y 347 pueden ser repetidos cualquier número de veces.
Después de que todos los códigos de inicialización de dispositivos han sido ejecutados y de que todos los dispositivos han sido inicializados, el procedimiento 313 puede continuar en la FIG. 3B en el bloque 349, en el que puede usarse el código de inicialización de la plataforma principal para reunir información relativa a la configuración de la plataforma y a verificar que satisface la directriz en el bloque 351. Si la medición no satisface la directriz en el bloque 351, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
Tras la conclusión de todas las funciones del código de inicialización de la plataforma principal, el código de inicialización de la plataforma principal puede localizar el cargador del SO y verificar que el cargador del SO satisface la directriz en los bloques 353 y 355. Si la medición no satisface la directriz en el bloque 355, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
Antes de transferir el control al cargador del SO, el código de inicialización de la plataforma principal puede verificar la tabla de directrices en busca de conjuntos requeridos, rechazados y/u obligatorios de componentes en secuencia en el bloque 357. La directriz puede requerir la presencia de componentes particulares; puede rechazar componentes particulares; o puede requerir una secuencia particular de componentes. Si no se satisface alguna de las condiciones requeridas, la plataforma no satisface la directriz en el bloque 359 y el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325.
Si la directriz es satisfecha en el bloque 359, el control es transferido al cargador del SO en el bloque 361. Si el cargador del SO permite opciones, el cargador del SO puede operar verificando que esas opciones satisfacen la directriz en los bloques 363 y 365. Si la medición no satisface la directriz en el bloque 365, el control es típicamente pasado entonces al módulo del dispositivo de alerta y/o al dispositivo de alerta, y el usuario de la plataforma es alertado en el bloque 325. Si la directriz es satisfecha en el bloque 365, entonces se permite que el cargador del SO cargue el SO y el control de la plataforma es transferido al SO en el bloque 369. En este punto finaliza el procedimiento 313.
En resumen, el procedimiento 313 puede incluir la detección de una condición de reposición de la plataforma, el comienzo de la ejecución en un punto de entrada dentro de una raíz de confianza para la medición (RTM), y la determinación de que el RTM es digno de confianza, lo que puede incluir determinar que un módulo de directrices de propiedades de seguridad de la plataforma asociado con el RTM es digno de confianza. Determinar que el módulo de directrices de propiedades de seguridad de la plataforma asociado con el RTM es digno de confianza puede incluir la medición de una tabla de directrices y la comparación de las mediciones con uno o más valores incluidos en un DIR (incluido en un TPM).
El procedimiento puede continuar con la determinación de que un código de inicialización principal asociado con una plataforma es digno de confianza, y con la transferencia del control al código de inicialización principal. Si no, el procedimiento puede operar determinando que un código de inicialización principal asociado con una plataforma no es digno de confianza, y puede abstenerse de transferir el control al código de inicialización principal. Además, el procedimiento puede operar absteniéndose de carga un sistema operativo asociado con la plataforma si se viola una directriz asociada con el RTM.
El procedimiento puede también incluir la determinación de que la configuración de una plataforma no viola una directriz asociada con el RTM, la determinación de que un dispositivo no viola una directriz asociada con el RTM, la determinación de que un código de inicialización de dispositivos asociado con el dispositivo no viola una directriz asociada con el RTM y la transferencia del control al código de inicialización del dispositivo.
El procedimiento puede incluir también la determinación de que un cargado de sistema operativo asociado con la plataforma no viole una directriz asociada con el RTM, la determinación de que está presente un grupo seleccionado de componentes y la transferencia del control a un cargador de sistema operativo asociado con la plataforma. El procedimiento también puede incluir la determinación de que no está presente un grupo seleccionado de componentes rechazados y la transferencia del control a un cargador de sistema operativo asociado con la plataforma.
Así, con referencia de nuevo a la FIG. 1, se entiende ahora fácilmente que otra realización de la invención puede incluir un artículo 199, tal como un ordenador, un sistema de memoria, un disco magnético u óptico, algún otro dispositivo de almacenamiento y/o cualquier tipo de dispositivo o de sistema electrónicos, que comprenda un medio 194 accesible por máquina (por ejemplo, una memoria que incluya un conductor eléctrico, óptico o electromagnético) que tenga datos asociados 108 (por ejemplo, instrucciones de programa de ordenador) que, cuando sean objeto de acceso, den como resultado que una máquina lleve a cabo acciones tales que comiencen la ejecución en un punto de entrada dentro de una raíz de confianza para la medición (RTM), determinando que un código de inicialización
principal asociado con una plataforma es digno de confianza y transfiriendo el control al código de inicialización principal y, si no, determinando que un código de inicialización principal asociado con una plataforma no es digno de confianza y absteniéndose de transferir el control al código de inicialización principal.
Otras acciones pueden incluir determinar que la configuración de una plataforma no viola una directriz asociada con
5 el RTM, determinar que un cargador de sistema operativo asociado con la plataforma no viola una directriz asociada con el RTM, determinar que un grupo seleccionado de componentes está presente, y transferir el control a un cargador de sistema operativo asociado con la plataforma. De forma similar, determinar que no está presente un grupo seleccionado de componentes rechazados y transferir el control a un cargador de sistema operativo asociado con la plataforma también puede estar incluido dentro del alcance de tales actividades.
Claims (8)
- REIVINDICACIONES1. Un aparato que comprende:una plataforma (102) de cálculo que incluye:una raíz de confianza para un módulo (104) de medición que comprende un bloque (108) de arranque5 de inicialización de la plataforma; un procesador (124) para ejecutar instrucciones, incluido el código de inicialización de la plataforma, que incluye el bloque (108) de arranque de inicialización de la plataforma que comienza en un punto (122) de entrada dentro de la raíz de confianza para el módulo de medición y un código (148) de inicialización de la plataforma principal, ejecutando dicho bloque de arranque de inicialización de la plataforma código10 para habilitar dispositivos en la plataforma necesarios para que se ejecute el código de inicialización de la plataforma principal; y llevando a cabo dicho código de inicialización de la plataforma principal funciones necesarias para completar la inicialización de la plataforma de cálculo; un cargador (150) de sistema operativo; un módulo (112) de plataforma de confianza que incluye valores cargados de antemano almacenados15 en un emplazamiento (120) de almacenamiento blindado, estando relacionados dichos valores cargados de antemano con la integridad de la plataforma de cálculo; un módulo (106) de directrices de propiedades de seguridad de la plataforma que incluye una tabla(118) de directrices que contiene información de directrices (D1 - Dn) que definen propiedades deseguridad de la plataforma a las que hay que atenerse durante la inicialización de la plataforma; 20 un módulo (130) de comparación acoplado en comunicación con la raíz de confianza para el módulo(104) de medición; y en la que dicho bloque de arranque de inicialización de la plataforma y dicho módulo de directrices de propiedades de seguridad de la plataforma son para determinar si son dignos de confianza mediante la medición y la comparación con uno de dichos valores cargados de antemano de dicho módulo de25 plataforma de confianza usando código interno a dicho bloque de arranque de inicialización de la plataforma, en la que la medición es la acción de obtener un valor que pueda ser directamente asociado con la integridad de una entidad, y en la que el módulo de comparación verifica acto seguido que el valor medido coincide con uno de dichos valores cargados de antemano del módulo (112) de programa de confianza y, si no, impide el resto del procedimiento de arranque, permitiendo, de lo contrario, que la30 ejecución continúe con el bloque de arranque de inicialización de la plataforma para medir y verificar si la información de las directrices relativa al código de inicialización de la plataforma principal satisface una correspondiente directriz localizada en el módulo de plataforma de confianza y, si no, abstenerse de transferir el control a dicho código de inicialización principal, y, en caso afirmativo, permitir la ejecución del código de35 inicialización de la plataforma principal para medir y verificar si dispositivos adicionales (DISP1 a DISPn) acoplados a la plataforma satisfacen la información de las directrices y, en caso afirmativo, permitir la ejecución del código de inicialización de la plataforma principal y verificar si el cargador del sistema operativo satisface la información de las directrices y, en caso afirmativo, permitir que el procesador cargue un sistema operativo (110) y, si no, abstenerse de cargar un sistema operativo; y en la que el40 sistema operativo, si se carga, ha de ser ejecutado por el procesador.
-
- 2.
- El aparato de la reivindicación 1 en el que el bloque de arranque de inicialización incluye un punto de entrada capaz de ser ejecutado por el procesador tras la recepción de una señal (128) de reposición en una línea (126) de reposición acoplada al procesador para iniciar una condición de reposición de la plataforma.
-
- 3.
- El aparato de la reivindicación 1 que, además, comprende:
45 punteros a credenciales (156, 158) de la plataforma incluidas en la tabla (118) de directrices. -
- 4.
- El aparato de la reivindicación 1 en el que la información de las directrices define un conjunto obligatorio de componentes en secuencia incluidos en la plataforma.
-
- 5.
- El aparato de cualquier reivindicación precedente que, además, comprende:
un dispositivo (132) de alerta operable para proporcionar una señal (136) de alerta cuando se viola la 50 información de las directrices incluida en la tabla de directrices. - 6. Un procedimiento en un aparato que comprende una plataforma (102) de cálculo que incluye un procesador (124), un cargador (150) de sistema operativo, un módulo (112) de plataforma de confianza que incluye valores cargados de antemano almacenados en un emplazamiento (120) de almacenamiento blindado, estando relacionados dichos valores cargados de antemano con la integridad de la plataforma de cálculo, una raíz de55 confianza para un módulo (104) de medición que comprende un bloque (108) de arranque de inicialización de la plataforma, un módulo (106) de directrices de propiedades de seguridad de la plataforma que incluye una tabla (118) de directrices que contiene información de directrices (D1 - Dn) que definen propiedades deseguridad de la plataforma a las que hay que atenerse durante la inicialización de la plataforma, un módulo(130) de comparación acoplado en comunicación con la raíz de confianza para el módulo (104) de medición, comprendiendo el procedimiento las etapas de que dicho procesador (124) ejecute instrucciones, incluido el código de inicialización de la plataforma, que tiene5 dicho bloque (108) de arranque de inicialización de la plataforma y un código (148) de inicialización de la plataforma principal, comenzando dicha ejecución en un punto (122) de entrada dentro de dicha raíz de confianza para el módulo de medición, ejecutando dicho bloque de arranque de inicialización de la plataforma código para habilitar dispositivos en la plataforma necesarios para que se ejecute el código de inicialización de la plataforma principal, y llevando a cabo dicho código de inicialización de la plataforma principal funciones10 necesarias para completar la inicialización de la plataforma de cálculo, determinando si dicho bloque de arranque de inicialización de la plataforma y dicho módulo de directrices de propiedades de seguridad de la plataforma son dignos de confianza mediante la medición y la comparación con uno de dichos valores cargados de antemano de dicho módulo de plataforma de confianza usando código interno a dicho bloque de arranque de inicialización de la plataforma, mediante lo cual son verificados dicho15 bloque de arranque de inicialización de la plataforma y dicho módulo de directrices de propiedades de seguridad de la plataforma, en el que la medición es la acción de obtener un valor que pueda ser directamente asociado con la integridad de una entidad y, si dicho bloque de arranque de inicialización de la plataforma y dicho módulo de directrices de propiedades de seguridad de la plataforma no son verificados, se detenga la ejecución y, en caso contrario,20 medir y verificar, usando dicho bloque de arranque de inicialización de la plataforma, si la información de las directrices relativa al código de inicialización de la plataforma principal satisface una correspondiente directriz localizada en el módulo de plataforma de confianza y, si no, impedir el resto del procedimiento de arranque y, en caso afirmativo, permitir la ejecución del código de inicialización de la plataforma principal para medir y verificar si dispositivos adicionales (DISP1 a DISPn) acoplados a la plataforma satisfacen la información de las25 directrices y, en caso afirmativo, permitir la ejecución del código de inicialización de la plataforma principal para medir y verificar si el cargador del sistema operativo satisface la información de las directrices y, en caso afirmativo, permitir que el procesador cargue un sistema operativo (110) y, si no, abstenerse de cargar un sistema operativo; y en el que el sistema operativo, si se carga, ha de ser ejecutado por el procesador.
- 7. El procedimiento de la reivindicación 6 que, además, comprende:30 detectar una condición de reposición de la plataforma.
- 8. Un artículo que comprende un medio accesible por máquina que tiene datos asociados en el que los datos, cuando son objeto de acceso, dan como resultado que una máquina lleve a cabo un procedimiento según cualquiera de las reivindicaciones 6 y 7.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/185,391 US7216369B2 (en) | 2002-06-28 | 2002-06-28 | Trusted platform apparatus, system, and method |
US185391 | 2002-06-28 | ||
PCT/US2003/020620 WO2004003824A1 (en) | 2002-06-28 | 2003-06-27 | Trusted computer platform |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2381355T3 true ES2381355T3 (es) | 2012-05-25 |
Family
ID=29779616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES03742347T Expired - Lifetime ES2381355T3 (es) | 2002-06-28 | 2003-06-27 | Plataforma informática de confianza |
Country Status (7)
Country | Link |
---|---|
US (1) | US7216369B2 (es) |
EP (1) | EP1518158B1 (es) |
CN (1) | CN100388150C (es) |
AT (1) | ATE550728T1 (es) |
AU (1) | AU2003280494A1 (es) |
ES (1) | ES2381355T3 (es) |
WO (1) | WO2004003824A1 (es) |
Families Citing this family (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103574B1 (en) * | 1999-03-27 | 2006-09-05 | Microsoft Corporation | Enforcement architecture and method for digital rights management |
GB2376763B (en) * | 2001-06-19 | 2004-12-15 | Hewlett Packard Co | Demonstrating integrity of a compartment of a compartmented operating system |
US7350228B2 (en) * | 2001-01-23 | 2008-03-25 | Portauthority Technologies Inc. | Method for securing digital content |
US7380130B2 (en) * | 2001-12-04 | 2008-05-27 | Microsoft Corporation | Methods and systems for authentication of components in a graphics system |
US7694139B2 (en) * | 2002-10-24 | 2010-04-06 | Symantec Corporation | Securing executable content using a trusted computing platform |
US8041933B2 (en) * | 2002-12-20 | 2011-10-18 | The Invention Science Fund I | Method and apparatus for selectively enabling a microprocessor-based system |
US8881270B2 (en) | 2002-12-20 | 2014-11-04 | Creative Mines Llc | Method and apparatus for selectively enabling a microprocessor-based system |
US7210034B2 (en) * | 2003-01-30 | 2007-04-24 | Intel Corporation | Distributed control of integrity measurement using a trusted fixed token |
US7370212B2 (en) | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
GB2403820A (en) * | 2003-03-28 | 2005-01-12 | Hewlett Packard Development Co | Security policy in trusted computing systems |
GB2399902A (en) * | 2003-03-28 | 2004-09-29 | Hewlett Packard Development Co | Security in trusted computing systems |
US7366305B2 (en) * | 2003-09-30 | 2008-04-29 | Intel Corporation | Platform and method for establishing trust without revealing identity |
JP4064914B2 (ja) * | 2003-12-02 | 2008-03-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム |
US7587607B2 (en) * | 2003-12-22 | 2009-09-08 | Intel Corporation | Attesting to platform configuration |
US8037314B2 (en) | 2003-12-22 | 2011-10-11 | Intel Corporation | Replacing blinded authentication authority |
US7526649B2 (en) * | 2003-12-30 | 2009-04-28 | Intel Corporation | Session key exchange |
US7330977B2 (en) * | 2003-12-30 | 2008-02-12 | Lenovo Pte Ltd | Apparatus, system, and method for secure mass storage backup |
US7421588B2 (en) * | 2003-12-30 | 2008-09-02 | Lenovo Pte Ltd | Apparatus, system, and method for sealing a data repository to a trusted computing platform |
US7574600B2 (en) * | 2004-03-24 | 2009-08-11 | Intel Corporation | System and method for combining user and platform authentication in negotiated channel security protocols |
US7664965B2 (en) | 2004-04-29 | 2010-02-16 | International Business Machines Corporation | Method and system for bootstrapping a trusted server having redundant trusted platform modules |
US7484091B2 (en) * | 2004-04-29 | 2009-01-27 | International Business Machines Corporation | Method and system for providing a trusted platform module in a hypervisor environment |
US20060242406A1 (en) | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
US7546447B2 (en) * | 2004-05-08 | 2009-06-09 | Intel Corporation | Firmware interface runtime environment protection field |
GB0411654D0 (en) * | 2004-05-25 | 2004-06-30 | Hewlett Packard Development Co | A generic trusted platform architecture |
US8006100B2 (en) | 2004-06-10 | 2011-08-23 | Oracle America, Inc. | Enhancing trusted platform module performance |
US8429423B1 (en) | 2004-06-10 | 2013-04-23 | Oracle America, Inc. | Trusted platform modules |
US20050283601A1 (en) * | 2004-06-22 | 2005-12-22 | Sun Microsystems, Inc. | Systems and methods for securing a computer boot |
US7568225B2 (en) | 2004-09-08 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for remote security enablement |
US7711942B2 (en) * | 2004-09-23 | 2010-05-04 | Hewlett-Packard Development Company, L.P. | Computer security system and method |
US8347078B2 (en) | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
US20060089917A1 (en) * | 2004-10-22 | 2006-04-27 | Microsoft Corporation | License synchronization |
US20060090085A1 (en) * | 2004-10-23 | 2006-04-27 | Mckenney Paul E | Method and apparatus for improving computer security |
US8464348B2 (en) * | 2004-11-15 | 2013-06-11 | Microsoft Corporation | Isolated computing environment anchored into CPU and motherboard |
US20060106920A1 (en) * | 2004-11-15 | 2006-05-18 | Microsoft Corporation | Method and apparatus for dynamically activating/deactivating an operating system |
US8336085B2 (en) * | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
US8176564B2 (en) * | 2004-11-15 | 2012-05-08 | Microsoft Corporation | Special PC mode entered upon detection of undesired state |
US10204338B2 (en) * | 2004-11-24 | 2019-02-12 | Microsoft Technology Licensing, Llc | Synchronizing contents of removable storage devices with a multimedia network |
US7725703B2 (en) * | 2005-01-07 | 2010-05-25 | Microsoft Corporation | Systems and methods for securely booting a computer with a trusted processing module |
US7565553B2 (en) * | 2005-01-14 | 2009-07-21 | Microsoft Corporation | Systems and methods for controlling access to data on a computer with a secure boot process |
GB2424494A (en) * | 2005-03-22 | 2006-09-27 | Hewlett Packard Development Co | Methods, devices and data structures for trusted data |
US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
US8725646B2 (en) * | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
US9436804B2 (en) * | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
US8972743B2 (en) * | 2005-05-16 | 2015-03-03 | Hewlett-Packard Development Company, L.P. | Computer security system and method |
US20060265758A1 (en) * | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
US7396257B2 (en) * | 2005-05-26 | 2008-07-08 | Itt Manufacturing Enterprises, Inc. | Computer input/output (I/O) connector assembly having a security circuit disposed therein |
US8353046B2 (en) * | 2005-06-08 | 2013-01-08 | Microsoft Corporation | System and method for delivery of a modular operating system |
US7603707B2 (en) * | 2005-06-30 | 2009-10-13 | Intel Corporation | Tamper-aware virtual TPM |
US20070061535A1 (en) * | 2005-09-12 | 2007-03-15 | Microsoft Corporation | Processing unit enclosed operating system |
US8201240B2 (en) * | 2005-09-16 | 2012-06-12 | Nokia Corporation | Simple scalable and configurable secure boot for trusted mobile phones |
US9268971B2 (en) * | 2005-09-21 | 2016-02-23 | Broadcom Corporation | Secure processor supporting multiple security functions |
US20070192580A1 (en) * | 2006-02-10 | 2007-08-16 | Challener David C | Secure remote management of a TPM |
US7581141B2 (en) * | 2006-03-01 | 2009-08-25 | Sun Microsystems, Inc. | Kernel module compatibility validation |
GB2440170B8 (en) | 2006-07-14 | 2014-07-16 | Vodafone Plc | Digital rights management |
US20080077592A1 (en) * | 2006-09-27 | 2008-03-27 | Shane Brodie | method and apparatus for device authentication |
US9135444B2 (en) * | 2006-10-19 | 2015-09-15 | Novell, Inc. | Trusted platform module (TPM) assisted data center management |
JP4288292B2 (ja) * | 2006-10-31 | 2009-07-01 | 株式会社エヌ・ティ・ティ・ドコモ | オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置 |
US8117429B2 (en) * | 2006-11-01 | 2012-02-14 | Nokia Corporation | System and method for a distributed and flexible configuration of a TCG TPM-based local verifier |
GB0623101D0 (en) * | 2006-11-20 | 2006-12-27 | British Telecomm | Secure network architecture |
US20080178257A1 (en) * | 2007-01-20 | 2008-07-24 | Takuya Mishina | Method for integrity metrics management |
US20080184026A1 (en) * | 2007-01-29 | 2008-07-31 | Hall Martin H | Metered Personal Computer Lifecycle |
US20080235754A1 (en) * | 2007-03-19 | 2008-09-25 | Wiseman Willard M | Methods and apparatus for enforcing launch policies in processing systems |
US8291495B1 (en) | 2007-08-08 | 2012-10-16 | Juniper Networks, Inc. | Identifying applications for intrusion detection systems |
MY145949A (en) * | 2007-09-20 | 2012-05-31 | Mimos Berhad | Trusted computer platform method and system without trust credential |
WO2009044533A1 (ja) * | 2007-10-05 | 2009-04-09 | Panasonic Corporation | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 |
US7921286B2 (en) * | 2007-11-14 | 2011-04-05 | Microsoft Corporation | Computer initialization for secure kernel |
EA201070673A1 (ru) * | 2008-01-30 | 2011-02-28 | Панасоник Корпорэйшн | Безопасная начальная загрузка с помощью способа необязательных компонентов |
US8661234B2 (en) * | 2008-01-31 | 2014-02-25 | Microsoft Corporation | Individualized per device initialization of computing devices in avoidance of mass exploitation of vulnerabilities |
US8479262B2 (en) * | 2008-02-13 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Managing electronic devices using an electronic device as a root of trust |
WO2009102353A1 (en) * | 2008-02-13 | 2009-08-20 | Hewlett-Packard Development Company, L.P. | Managing electronic devices with different types of device location limited device management clients |
WO2009118801A1 (ja) * | 2008-03-28 | 2009-10-01 | パナソニック株式会社 | ソフトウェア更新装置、ソフトウェア更新システム、無効化方法、及び無効化プログラム |
JP2009278015A (ja) * | 2008-05-16 | 2009-11-26 | Nec Corp | 平面光波回路及びこれを備えた波長可変レーザ装置 |
US8103909B2 (en) * | 2008-09-15 | 2012-01-24 | Juniper Networks, Inc. | Automatic hardware-based recovery of a compromised computer |
US8923520B2 (en) | 2009-02-06 | 2014-12-30 | Dell Products L.P. | System and method for recovery key management |
US8892862B2 (en) | 2009-07-01 | 2014-11-18 | Panasonic Corporation | Secure boot method for executing a software component including updating a current integrity measurement based on whether the software component is enabled |
US8990584B2 (en) | 2010-05-28 | 2015-03-24 | Dell Products, Lp | System and method for supporting task oriented devices in a client hosted virtualization system |
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 |
US8938774B2 (en) * | 2010-05-28 | 2015-01-20 | Dell Products, Lp | System and method for I/O port assignment and security policy application in a client hosted virtualization system |
US8996851B2 (en) | 2010-08-10 | 2015-03-31 | Sandisk Il Ltd. | Host device and method for securely booting the host device with operating system code loaded from a storage device |
US9208318B2 (en) | 2010-08-20 | 2015-12-08 | Fujitsu Limited | Method and system for device integrity authentication |
US9087196B2 (en) | 2010-12-24 | 2015-07-21 | Intel Corporation | Secure application attestation using dynamic measurement kernels |
US20120179904A1 (en) * | 2011-01-11 | 2012-07-12 | Safenet, Inc. | Remote Pre-Boot Authentication |
US9256745B2 (en) | 2011-03-01 | 2016-02-09 | Microsoft Technology Licensing, Llc | Protecting operating system configuration values using a policy identifying operating system configuration settings |
US8782389B2 (en) | 2011-07-19 | 2014-07-15 | Sandisk Technologies Inc. | Storage device and method for updating a shadow master boot record |
US8973158B2 (en) * | 2011-07-20 | 2015-03-03 | Microsoft Technology Licensing Llc | Trust level activation |
US8924737B2 (en) * | 2011-08-25 | 2014-12-30 | Microsoft Corporation | Digital signing authority dependent platform secret |
JP5779281B2 (ja) * | 2011-09-30 | 2015-09-16 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | コンピュータシステムにおける仮想化装置の制御 |
US8775784B2 (en) | 2011-11-11 | 2014-07-08 | International Business Machines Corporation | Secure boot up of a computer based on a hardware based root of trust |
US8949954B2 (en) | 2011-12-08 | 2015-02-03 | Uniloc Luxembourg, S.A. | Customer notification program alerting customer-specified network address of unauthorized access attempts to customer account |
AU2012100460B4 (en) | 2012-01-04 | 2012-11-08 | Uniloc Usa, Inc. | Method and system implementing zone-restricted behavior of a computing device |
AU2012100462B4 (en) | 2012-02-06 | 2012-11-08 | Uniloc Usa, Inc. | Near field authentication through communication of enclosed content sound waves |
US8938796B2 (en) | 2012-09-20 | 2015-01-20 | Paul Case, SR. | Case secure computer architecture |
US9152793B2 (en) * | 2012-09-28 | 2015-10-06 | Intel Corporation | Methods, systems and apparatus to self authorize platform code |
AU2013100355B4 (en) | 2013-02-28 | 2013-10-31 | Netauthority, Inc | Device-specific content delivery |
US9230081B2 (en) | 2013-03-05 | 2016-01-05 | Intel Corporation | User authorization and presence detection in isolation from interference from and control by host central processing unit and operating system |
AU2013100883B4 (en) * | 2013-04-25 | 2014-02-20 | Uniloc Luxembourg S.A. | Detection of device tampering |
US9705869B2 (en) | 2013-06-27 | 2017-07-11 | Intel Corporation | Continuous multi-factor authentication |
US9239918B2 (en) | 2013-10-02 | 2016-01-19 | Andes Technology Corporation | Method and apparatus for software-hardware authentication of electronic apparatus |
US9830456B2 (en) * | 2013-10-21 | 2017-11-28 | Cisco Technology, Inc. | Trust transference from a trusted processor to an untrusted processor |
US10108168B2 (en) | 2014-06-01 | 2018-10-23 | Si-Ga Data Security (2014) Ltd. | Industrial control system smart hardware monitoring |
CN104573423B (zh) * | 2015-01-26 | 2017-10-31 | 无锡信捷电气股份有限公司 | 一种plc软硬件结合加密保护方法 |
EP3073405B1 (en) * | 2015-03-23 | 2019-02-06 | ABB Schweiz AG | Method and device providing secure vendor service access |
US9858412B2 (en) * | 2015-06-25 | 2018-01-02 | Intel Corporation | Secure trusted execution environment data store |
US10073964B2 (en) | 2015-09-25 | 2018-09-11 | Intel Corporation | Secure authentication protocol systems and methods |
US10210333B2 (en) * | 2016-06-30 | 2019-02-19 | General Electric Company | Secure industrial control platform |
US11405201B2 (en) | 2016-11-10 | 2022-08-02 | Brickell Cryptology Llc | Secure transfer of protected application storage keys with change of trusted computing base |
US10498712B2 (en) | 2016-11-10 | 2019-12-03 | Ernest Brickell | Balancing public and personal security needs |
US10855465B2 (en) | 2016-11-10 | 2020-12-01 | Ernest Brickell | Audited use of a cryptographic key |
US11398906B2 (en) | 2016-11-10 | 2022-07-26 | Brickell Cryptology Llc | Confirming receipt of audit records for audited use of a cryptographic key |
US10652245B2 (en) | 2017-05-04 | 2020-05-12 | Ernest Brickell | External accessibility for network devices |
US10348706B2 (en) | 2017-05-04 | 2019-07-09 | Ernest Brickell | Assuring external accessibility for devices on a network |
JP7318305B2 (ja) | 2019-05-17 | 2023-08-01 | 富士フイルムビジネスイノベーション株式会社 | 発光装置 |
US11386234B2 (en) * | 2019-12-17 | 2022-07-12 | Nuvoton Technology Corporation | Security systems and methods for integrated circuits |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4975950A (en) * | 1988-11-03 | 1990-12-04 | Lentz Stephen A | System and method of protecting integrity of computer data and software |
US5944821A (en) * | 1996-07-11 | 1999-08-31 | Compaq Computer Corporation | Secure software registration and integrity assessment in a computer system |
US5953502A (en) * | 1997-02-13 | 1999-09-14 | Helbig, Sr.; Walter A | Method and apparatus for enhancing computer system security |
US5919257A (en) * | 1997-08-08 | 1999-07-06 | Novell, Inc. | Networked workstation intrusion detection system |
US6185678B1 (en) * | 1997-10-02 | 2001-02-06 | Trustees Of The University Of Pennsylvania | Secure and reliable bootstrap architecture |
US6401208B2 (en) * | 1998-07-17 | 2002-06-04 | Intel Corporation | Method for BIOS authentication prior to BIOS execution |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
EP1056010A1 (en) | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | Data integrity monitoring in trusted computing entity |
EP1085396A1 (en) | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Operation of trusted state in computing platform |
AU2001243176A1 (en) | 2000-02-16 | 2001-08-27 | Watchguard Technologies, Inc. | Computer security using dual functional security contexts |
US6625730B1 (en) * | 2000-03-31 | 2003-09-23 | Hewlett-Packard Development Company, L.P. | System for validating a bios program and memory coupled therewith by using a boot block program having a validation routine |
GB0020371D0 (en) * | 2000-08-18 | 2000-10-04 | Hewlett Packard Co | Apparatus and method for establishing trust |
US7000249B2 (en) * | 2001-05-18 | 2006-02-14 | 02Micro | Pre-boot authentication system |
US6938164B1 (en) * | 2000-11-22 | 2005-08-30 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
GB2376763B (en) * | 2001-06-19 | 2004-12-15 | Hewlett Packard Co | Demonstrating integrity of a compartment of a compartmented operating system |
US7237121B2 (en) * | 2001-09-17 | 2007-06-26 | Texas Instruments Incorporated | Secure bootloader for securing digital devices |
US20030182561A1 (en) * | 2002-03-25 | 2003-09-25 | International Business Machines Corporation | Tamper detection mechanism for a personal computer and a method of use thereof |
US7343493B2 (en) * | 2002-03-28 | 2008-03-11 | Lenovo (Singapore) Pte. Ltd. | Encrypted file system using TCPA |
US6782349B2 (en) * | 2002-05-03 | 2004-08-24 | International Business Machines Corporation | Method and system for updating a root of trust measurement function in a personal computer |
-
2002
- 2002-06-28 US US10/185,391 patent/US7216369B2/en not_active Expired - Fee Related
-
2003
- 2003-06-27 AU AU2003280494A patent/AU2003280494A1/en not_active Abandoned
- 2003-06-27 WO PCT/US2003/020620 patent/WO2004003824A1/en not_active Application Discontinuation
- 2003-06-27 EP EP03742347A patent/EP1518158B1/en not_active Expired - Lifetime
- 2003-06-27 ES ES03742347T patent/ES2381355T3/es not_active Expired - Lifetime
- 2003-06-27 CN CNB038199068A patent/CN100388150C/zh not_active Expired - Fee Related
- 2003-06-27 AT AT03742347T patent/ATE550728T1/de active
Also Published As
Publication number | Publication date |
---|---|
CN100388150C (zh) | 2008-05-14 |
EP1518158B1 (en) | 2012-03-21 |
AU2003280494A1 (en) | 2004-01-19 |
CN1678968A (zh) | 2005-10-05 |
US20040003288A1 (en) | 2004-01-01 |
US7216369B2 (en) | 2007-05-08 |
EP1518158A1 (en) | 2005-03-30 |
WO2004003824A1 (en) | 2004-01-08 |
ATE550728T1 (de) | 2012-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2381355T3 (es) | Plataforma informática de confianza | |
US11093600B2 (en) | Chip accessing method, security controlling module, chip and debugging device | |
EP2854066B1 (en) | System and method for firmware integrity verification using multiple keys and OTP memory | |
ES2372989T3 (es) | Proyección de fiabilidad desde un entorno de confianza a un entorno sin confianza. | |
US9111097B2 (en) | Secure execution architecture | |
ES2218484T3 (es) | Un metodo de proteger la integridad de un programa de ordenador. | |
US7139915B2 (en) | Method and apparatus for authenticating an open system application to a portable IC device | |
US7010684B2 (en) | Method and apparatus for authenticating an open system application to a portable IC device | |
ES2334336T3 (es) | Distribucion y ejecucion de aplicacion seguras en un entorno inalambrico. | |
KR101458780B1 (ko) | 다단계 락스텝 무결성 보고 메커니즘 제공 | |
US9256734B2 (en) | Security controlled multi-processor system | |
US8219496B2 (en) | Method of and apparatus for ascertaining the status of a data processing environment | |
TWI494785B (zh) | 用以提供系統管理命令之系統與方法 | |
WO2016190968A1 (en) | Policies for secrets in trusted execution environments | |
US20120096450A1 (en) | Mechanism for updating software | |
KR20070084257A (ko) | Cpu 및 마더보드에 고정된 고립형 컴퓨팅 환경 | |
US10936722B2 (en) | Binding of TPM and root device | |
Ammar et al. | Verify&revive: Secure detection and recovery of compromised low-end embedded devices | |
ES2963328T3 (es) | Procedimiento para verificar la integridad de un código de aplicación, dispositivo y producto de programa informático correspondientes | |
CN113987468A (zh) | 安全检查方法和安全检查装置 | |
Yao et al. | Building secure firmware | |
Msgna et al. | Secure application execution in mobile devices | |
EP1535124B1 (en) | Computer architecture for executing a program in a secure of insecure mode | |
CN111176737A (zh) | 可信Option ROM的访问控制方法及装置 | |
Rauter et al. | Thingtegrity: A Scalable Trusted Computing Architecture for the Internet of Things. |