¿La tecnología ARM TrustZone permite sellar una clave privada con un código hash?

14

Una de las funciones extremadamente valiosas de un chip del Módulo de plataforma segura (TPM) es su capacidad para sellar una clave privada bajo el hash del código que la usará. Esto significa que uno puede crear una clave privada que solo puede ser leída por un fragmento de código que hace hash a un determinado valor.

Al usar esta tecnología, esencialmente podemos emular una tarjeta inteligente en el software: podemos crear una clave privada que nunca se puede leer; solo es posible pedirle al hardware que firme un mensaje con esta clave.

Para mí, esto parece ser un gran paso adelante en la seguridad de TI. Principalmente esto parece útil para dispositivos móviles, que se utilizan para pagos. Las carteras de Bitcoin, por ejemplo, parecen ser un uso obvio para esta tecnología.

Los chips ARM incluyen una función llamada TrustZone. ¿Esta tecnología permite hacer lo anterior, sellar una clave privada con un código hash?

    
pregunta runeks 19.04.2014 - 18:58
fuente

2 respuestas

13

Sí y no.

Estrictamente hablando, TrustZone es solo una característica del procesador que proporciona aislamiento entre las tareas a través de la MMU y el bus de memoria. Puede pensarlo como la virtualización de un hombre pobre: solo está el hipervisor (el mundo seguro de TZ) y el sistema operativo normal (el mundo normal de TZ). Esta arquitectura permite que los datos confidenciales se manipulen fuera del alcance del sistema operativo normal, pero hay un gran obstáculo: TrustZone en sí no proporciona ninguna forma de almacenar datos. Por lo tanto, puede crear una clave en el mundo seguro pero no almacenarla en ningún lugar.

Todos los procesadores ARM de gama alta (como los que se encuentran en la mayoría de los teléfonos inteligentes y tabletas) tienen TrustZone (es parte de la arquitectura del procesador central), pero se necesita más para que sea útil. Algunos procesadores incluyen características adicionales que hacen que TZ sea útil, en particular una forma de almacenar una clave. Esto puede tomar la forma de alguna memoria de una sola escritura (por ejemplo, fusibles, típicamente unos pocos cientos de bits de la misma) que solo es accesible para el código de mundo seguro TZ. Con un entorno de tiempo de ejecución protegido más una clave criptográfica que solo se conoce en este entorno, puede crear un marco similar a TPM para almacenar y manipular datos confidenciales, incluidas las claves de firma. El Trusted Computing Group está trabajando en ello.

Se ha utilizado en varios dispositivos móviles, aunque la información (especialmente información confiable) es escasa . La tableta Surface RT de Microsoft se basa en un procesador ARM y no tiene un chip TPM discreto, pero tiene una implementación de Bitlocker basada en un TPM basado en firmware , aparentemente usando TrustZone . Varios dispositivos Android de Motorola tienen características de seguridad que usan código en TrustZone (por supuesto, el uso de un entorno protegido no es útil si el código que coloca allí tiene agujeros de seguridad). Puede encontrar propuestas para arquitecturas de seguridad aprovechando TrustZone tanto en literatura promocional de ARM y en academic publicaciones .

Entonces, con TrustZone y un poco más, puede construir una arquitectura de sistema donde una clave puede almacenarse de una manera que no puede extraerse a través de medios puramente de software. Los medios de hardware son otra cuestión (a diferencia de las tarjetas inteligentes, los procesadores de teléfonos inteligentes no están diseñados para autodestruirse cuando alguien raspa el envoltorio del paquete).

    
respondido por el Gilles 20.04.2014 - 00:25
fuente
0

De: enlace

  

¿Se puede usar ARM TrustZone directamente como TPM? ¿Tiene ARM TrustZone?   ¿Proporcionar almacenamiento de claves seguro?

     

Me temo que no. El problema es la falta de almacenamiento seguro, ya que   La especificación TrustZone no proporciona ningún mecanismo para implementar   almacenamiento seguro. Sin embargo, la característica TrustZone: asignar una específica   periférico para asegurar el acceso mundial solamente es el punto clave, pero está arriba   a los Soc Socors oa los desarrolladores de TEE para decidir qué periférico es   utilizado como un medio de almacenamiento seguro.

    
respondido por el superboy 05.09.2014 - 08:06
fuente

Lea otras preguntas en las etiquetas