Criptoprocesador seguro - Secure cryptoprocessor

Criptoprocesador Western Electric 229G.

Un criptoprocesador seguro es una computadora en un chip o microprocesador dedicado para realizar operaciones criptográficas , incrustado en un paquete con múltiples medidas de seguridad física , que le confieren un grado de resistencia a la manipulación . A diferencia de los procesadores criptográficos que envían datos descifrados a un bus en un entorno seguro, un criptoprocesador seguro no genera datos descifrados ni instrucciones de programas descifrados en un entorno donde la seguridad no siempre se puede mantener.

El propósito de un criptoprocesador seguro es actuar como la piedra angular de un subsistema de seguridad, eliminando la necesidad de proteger el resto del subsistema con medidas de seguridad físicas.

Ejemplos de

Un módulo de seguridad de hardware (HSM) contiene uno o más chips de criptoprocesador seguros . Estos dispositivos son criptoprocesadores seguros de alto grado que se utilizan con servidores empresariales. Un módulo de seguridad de hardware puede tener varios niveles de seguridad física con un criptoprocesador de un solo chip como componente más seguro. El criptoprocesador no revela claves o instrucciones ejecutables en un bus, excepto en forma encriptada, y pone a cero las claves al intentar sondear o escanear. El (los) chip (s) criptográfico también pueden estar encapsulados en el módulo de seguridad de hardware con otros procesadores y chips de memoria que almacenan y procesan datos cifrados. Cualquier intento de eliminar el encapsulado hará que las claves del chip criptográfico se pongan a cero. Un módulo de seguridad de hardware también puede ser parte de una computadora (por ejemplo, un cajero automático ) que opera dentro de una caja fuerte cerrada para disuadir el robo, la sustitución y la manipulación.

Las tarjetas inteligentes modernas son probablemente la forma más extendida de criptoprocesador seguro, aunque los criptoprocesadores seguros más complejos y versátiles se implementan ampliamente en sistemas como cajeros automáticos , decodificadores de TV , aplicaciones militares y equipos de comunicación portátiles de alta seguridad. Algunos criptoprocesadores seguros pueden incluso ejecutar sistemas operativos de propósito general como Linux dentro de su límite de seguridad. Los criptoprocesadores ingresan las instrucciones del programa en forma encriptada, descifran las instrucciones a instrucciones simples que luego se ejecutan dentro del mismo chip del criptoprocesador donde las instrucciones descifradas se almacenan de manera inaccesible. Al no revelar nunca las instrucciones del programa descifrado, el criptoprocesador evita la manipulación de los programas por parte de técnicos que pueden tener acceso legítimo al bus de datos del subsistema. Esto se conoce como cifrado de bus . Los datos procesados ​​por un criptoprocesador también se cifran con frecuencia.

El Módulo de plataforma confiable (TPM) es una implementación de un criptoprocesador seguro que lleva la noción de computación confiable a las PC comunes al permitir un entorno seguro . Las implementaciones actuales de TPM se centran en proporcionar un entorno de arranque a prueba de manipulaciones y cifrado de almacenamiento persistente y volátil.

También se encuentran disponibles chips de seguridad para sistemas integrados que brindan el mismo nivel de protección física para claves y otro material secreto que un procesador de tarjetas inteligentes o TPM, pero en un paquete más pequeño, menos complejo y menos costoso. A menudo se denominan dispositivos de autenticación criptográfica y se utilizan para autenticar periféricos, accesorios y / o consumibles. Al igual que los TPM, generalmente son circuitos integrados llave en mano destinados a integrarse en un sistema, generalmente soldados a una placa de circuito impreso.

Características

Medidas de seguridad utilizadas en criptoprocesadores seguros:

  • Contención con detección de manipulaciones y a prueba de manipulaciones .
  • Capas de blindaje conductivo en el chip que impiden la lectura de señales internas.
  • Ejecución controlada para evitar que los retrasos en el tiempo revelen información secreta.
  • Puesta a cero automática de secretos en caso de manipulación.
  • Cargador de arranque de cadena de confianza que autentica el sistema operativo antes de cargarlo.
  • Sistema operativo de cadena de confianza que autentica el software de la aplicación antes de cargarlo.
  • Registros de capacidad basados ​​en hardware , implementando un modelo de separación de privilegios unidireccional .

Grado de seguridad

Los criptoprocesadores seguros, si bien son útiles, no son invulnerables a los ataques, particularmente para oponentes bien equipados y decididos (por ejemplo, una agencia de inteligencia del gobierno) que están dispuestos a gastar suficientes recursos en el proyecto.

Un ataque a un criptoprocesador seguro tuvo como objetivo el IBM 4758 . Un equipo de la Universidad de Cambridge informó sobre la extracción exitosa de información secreta de un IBM 4758, utilizando una combinación de matemáticas y hardware de descifrado de códigos de propósito especial . Sin embargo, este ataque no fue práctico en los sistemas del mundo real porque requería que el atacante tuviera acceso completo a todas las funciones de la API del dispositivo. Las prácticas normales y recomendadas utilizan el sistema de control de acceso integral para dividir la autoridad de modo que ninguna persona pueda montar el ataque.

Si bien la vulnerabilidad que explotaron fue una falla en el software cargado en el 4758, y no en la arquitectura del 4758 en sí, su ataque sirve como un recordatorio de que un sistema de seguridad es tan seguro como su eslabón más débil: el vínculo fuerte del 4758. el hardware se volvió inútil debido a fallas en el diseño y la especificación del software cargado en él.

Las tarjetas inteligentes son significativamente más vulnerables, ya que están más expuestas a ataques físicos. Además, las puertas traseras de hardware pueden socavar la seguridad en tarjetas inteligentes y otros criptoprocesadores, a menos que se invierta en métodos de diseño anti-puerta trasera.

En el caso de aplicaciones de cifrado de disco completo , especialmente cuando se implementan sin un PIN de arranque , un criptoprocesador no estaría seguro contra un ataque de arranque en frío si se pudiera explotar la remanencia de datos para volcar el contenido de la memoria después de que el sistema operativo haya recuperado las claves criptográficas de su TPM .

Sin embargo, si todos los datos confidenciales se almacenan solo en la memoria del criptoprocesador y no en el almacenamiento externo, y el criptoprocesador está diseñado para que no pueda revelar claves o datos descifrados o no cifrados en almohadillas de unión de chips o golpes de soldadura , entonces dichos datos protegidos serían accesible solo al sondear el chip del criptoprocesador después de quitar cualquier envoltorio y capas de protección de metal del chip del criptoprocesador. Esto requeriría tanto la posesión física del dispositivo como habilidades y equipos más allá de los de la mayoría del personal técnico.

Otros métodos de ataque implican analizar cuidadosamente la sincronización de varias operaciones que pueden variar según el valor secreto o mapear el consumo de corriente frente al tiempo para identificar diferencias en la forma en que los bits '0' se manejan internamente frente a los bits '1'. O el atacante puede aplicar temperaturas extremas, frecuencias de reloj excesivamente altas o bajas o voltaje de suministro que excede las especificaciones para inducir una falla. El diseño interno del criptoprocesador se puede adaptar para prevenir estos ataques.

Algunos criptoprocesadores seguros contienen núcleos de procesador dual y generan claves de cifrado inaccesibles cuando es necesario, de modo que incluso si el circuito tiene ingeniería inversa, no revelará ninguna clave que sea necesaria para descifrar de forma segura el software arrancado desde la memoria flash cifrada o comunicado entre núcleos.

El primer diseño de criptoprocesador de un solo chip fue para la protección de copia de software de computadora personal (ver Patente de Estados Unidos 4.168.396, 18 de septiembre de 1979) y se inspiró en la Carta abierta de Bill Gates a los aficionados .

Historia

El módulo de seguridad de hardware (HSM), un tipo de criptoprocesador seguro, fue inventado por el ingeniero egipcio-estadounidense Mohamed M. Atalla , en 1972. Inventó un módulo de alta seguridad denominado "Atalla Box" que encriptaba mensajes PIN y ATM , y protegía dispositivos fuera de línea con una clave generadora de PIN imposible de adivinar. En 1972, presentó una patente para el dispositivo. Ese año fundó Atalla Corporation (ahora Utimaco Atalla ) y comercializó la "Caja Atalla" al año siguiente, oficialmente como el sistema Identikey. Era un lector de tarjetas y un sistema de identificación de clientes , que constaba de una consola de lectura de tarjetas , dos teclados de PIN de clientes , un controlador inteligente y un paquete de interfaz electrónico integrado. Permitía al cliente escribir un código secreto, que el dispositivo transformaba, utilizando un microprocesador , en otro código para el cajero. Durante una transacción , el lector de tarjetas leyó el número de cuenta del cliente . Fue un éxito y dio lugar a un amplio uso de módulos de alta seguridad.

Temerosos de que Atalla dominara el mercado, los bancos y las compañías de tarjetas de crédito comenzaron a trabajar en un estándar internacional en la década de 1970. El IBM 3624 , lanzado a finales de la década de 1970, adoptó un proceso de verificación de PIN similar al anterior sistema Atalla. Atalla fue uno de los primeros competidores de IBM en el mercado de seguridad bancaria.

En la conferencia de la Asociación Nacional de Cajas Mutuas de Ahorro (NAMSB) en enero de 1976, Atalla dio a conocer una actualización de su sistema Identikey, llamado Interchange Identikey. Agregó las capacidades de procesar transacciones en línea y lidiar con la seguridad de la red . Diseñado con el objetivo de realizar transacciones bancarias en línea , el sistema Identikey se extendió a las operaciones de instalaciones compartidas. Era coherente y compatible con varias redes de conmutación , y era capaz de reiniciarse electrónicamente a cualquiera de los 64.000 algoritmos no lineales irreversibles según lo indicado por la información de datos de la tarjeta . El dispositivo Interchange Identikey se lanzó en marzo de 1976. Más tarde, en 1979, Atalla presentó el primer procesador de seguridad de red (NSP). Los productos HSM de Atalla protegen 250 millones de transacciones con tarjeta todos los días a partir de 2013 y aseguran la mayoría de las transacciones en cajeros automáticos del mundo a partir de 2014.  

Ver también

Referencias

Otras lecturas

  • Ross Anderson , Mike Bond, Jolyon Clulow y Sergei Skorobogatov, Procesadores criptográficos: una encuesta, abril de 2005 (PDF) . Esta no es una encuesta de procesadores criptográficos; es una encuesta de cuestiones de seguridad relevantes.
  • Robert M. Best, Patente de EE.UU. 4.278.837 , 14 de julio de 1981
  • R. Elbaz, et al., Motores de hardware para cifrado de bus: una encuesta, 2005 (PDF) .
  • David Lie, Ejecutar sólo memoria, [1] .
  • Extrayendo una clave 3DES de un IBM 4758
  • JD Tygar y Bennet Yee, un sistema para utilizar coprocesadores físicamente seguros , Dyad