Inicio Artículos de fondo Funciones de seguridad basadas en hardware

Funciones de seguridad basadas en hardware

3553
0

Tras explicarnos el arsenal de defensas en los microcontroladores estándar y sus características de seguridad, Martin Motz, Product Manager de CPU de Rutronik escribe sobre las funciones de seguridad basadas en hardware.

La revisión de redundancia cíclica determina un valor de comprobación que permite detectar los errores en la transmisión o el almacenamiento de datos. Esto significa que no sólo se puede analizar la integridad de los datos, sino que también se puede verificar la firma del software mientras se ejecuta.

El sistema de monitorización de una fuente de alimentación especialmente securizado (POR [Power on RESET]/PDR [Power down RESET]/BOR [Brown out RESET]/PVD [Programmable Voltage Detector] flag status) identifica el motivo de un reinicio y asegura que se ha producido un acceso legítimo. Se complementa con la función “read while writing” – “lectura mientas se escribe” para aumentar la eficiencia en la detección de sabotaje y logging.

El Sistema de Seguridad de Reloj (Clock Security SystemCSS) se basa en el reloj y el sistema bajo recuperación, donde los relojes interno y externo funcionan independientemente entre ellos. El Watchdog y el Window Watchdog también monitorizan las ventanas de tiempo de manera autónoma.

La integridad y la confianza de los contenidos de memoria quedan garantizadas usando Códigos de Corrección de Error (Error Correction CodeECC) y control de paridad. También amplían la protección ante ataques destinados a escabullirse entre los errores.

Un sensor mide continuamente la temperatura ambiente del circuito integrado para evitar que supere un límite especificado y, por lo tanto, impedir su deterioro.

Métodos de cifrado para las funciones de seguridad

Funciones de seguridad basadas en hardwareLos métodos de cifrado protegen un texto fuente ante el acceso no autorizado al encriptar el texto sin formato original usando un código. La rotura del código permite al hacker decodificar el texto cifrado. Las técnicas criptográficas más sofisticadas utilizan cifrado simétrico o asimétrico. Con el simétrico, sólo existe una clave con cifrado y descifrado, lo que implica que el emisor y el receptor emplean la misma clave.

Con los métodos asimétricos, cada uno de los participantes en la comunicación tiene su propia clave, que se usa para generar un par de claves. Se compone de una clave pública que encripta lo datos y de una clave privada que los descifra.

La serie STM32 del conocido fabricante STMicroelectronics posee un auténtico generador de números aleatorios que se utiliza para crear claves de 32-bit e integrar cifrado en el chip. El cifrado se basa en el Advanced Encryption Standard (AES) simétrico. Las series STM32F2, F4, F7 y L4 emplean una longitud de clave de 128 bits (AES-128) y 256 bit (AES -256) con una amplia variedad de métodos (ECB, CBC, CTR, GCM, GMAC y CMAC), mientras que las unidades STM32L0 / L1 usan una longitud de 128 bits (AES-128).

La ventaja del cifrado simétrico es que, a pesar de haber una sola clave, la gestión es más sencilla que con métodos asimétricos. El cifrado y el descifrado también son significativamente más rápidos.

Algunos modelos STM32 integran funciones hash (resumen criptográfico), donde los datos se “muelen y esparcen” y se realiza la conversión de los datos de entrada.

También existe, como otra de las funciones de seguridad, el código de autentificación de mensajes en clave-hash (keyed-hash message authentication codeHMAC). La estructura de este código de autentificación de mensajes (MAC) se basa en una función hash criptográfica. Los HMAC están especificados en solicitud de comentarios (Request for CommentsRFC) 2104 y en el estándar FIPS 198 del NIST (National Institute of Standards and Technology – Instituto Nacional de Normas y Tecnología de Estados Unidos).

Mecanismos de antisabotaje

El mecanismo antisabotaje se utiliza para defenderse de ataques físicos lanzados de forma voluntaria o involuntaria contra el sistema de hardware fuera del microcontrolador. El dominio de backup, que remite a varias fuentes de despertador, garantiza que la protección se mantiene incluso en modo de bajo consumo (low-power). El reloj en tiempo real (RTC) registra la hora y la fecha de cada evento de sabotaje.

Varias series de los microcontroladores STM32 también disponen de protección de registro de RTC, que bloquea las operaciones de escritura no autorizadas y funciona de manera independiente del reinicio (reset) del sistema, pero no incluye protección cuando se escribe una secuencia de teclas (keypresses).

Si se detecta el intento de sabotaje, el registro de backup asegura que el contenido escrito se borra automáticamente. Los canales de comunicación también se pueden bloquear de modo selectivo con un bloque de comunicación GPIO. Así se protegen las entradas / salidas de propósitos generales (GPIO) seleccionadas y el bloqueo se puede eliminar tras el siguiente reinicio.

Bloque de depuración

El bloque de depuración evita el acceso no autorizado al microcontrolador vía una interfaz de depuración. El nivel de seguridad se puede seleccionar para cada aplicación o requisito, aunque no se puede bajar de categoría después.

Gestión de derechos de acceso

Los derechos de acceso, como funciones de seguridad, otorgan a los usuarios o grupos de usuarios la autorización para realizar determinadas acciones. Para este fin, la unidad de protección de memoria (MPU) integrada divide la memoria en regiones con diferentes derechos y reglas de acceso.

Durante la transferencia de datos, el firewall aísla el código o el componente de datos de la memoria Flash o SRAM del resto del código ejecutado fuera del área protegida: El firewall es más restrictivo que la MPU y sólo se integra en los modelos STM32L0 y L4.

Protección de memoria

La protección de lectura se usa para gestionar el acceso a la memoria. Por ejemplo, los volcados de memoria y las copias de seguridad de IP de usuario no están permitidos. La protección de escritura, por su parte, permite salvaguardar cada sector ante operaciones de escritura no deseadas. Y la protección de código privado posibilita que cada segmento de memoria se configure como “execute only”, lo que significa que aquí sólo se puede ejecutar código – no es posible escribir en esta región.

Las IP y los datos confidenciales se pueden eliminar de modo seguro usando las funciones mass erase o secure erase, las cuales reinician la memoria a su estado de fábrica.

Trazabilidad de datos

Muchas series STM32 tienen una ID de 96 bit exclusiva para poder garantizar que un producto final es trazable. Esto también se puede utilizar para la diversificación de claves de seguridad.

Algunos modelos también cuentan con funciones que permiten una actualización segura de firmware.

Métodos de cifrado basados en software

Las funciones de seguridad implementadas en hardware se pueden complementar con soluciones fundamentadas en software. Los paquetes de librería criptográfica se encuentran disponibles para la familia STM32 con un amplio rango de algoritmos criptográficos que se ejecutan en todos los microcontroladores STM32. Se suministran (de manera estándar) como objeto binario y pueden ofrecerse en forma de código fuente bajo los términos de una licencia basada en NDA. También está disponible una expansión de hardware para dotar de grupos seguros de circuitos integrados con soporte funcional.

Además del generador de números aleatorios integrado en el chip, un paquete de software proporciona protección ante ataques de reproducción (replay), que emplean peticiones previas para un nuevo ataque.

Un algoritmo hash verifica las firmas digitales y los códigos de autentificación de los mensajes con la misión de garantizar que los datos son fiables y proteger su integridad. También están disponibles paquetes de software con métodos de cifrado simétrico y asimétrico.

Para soluciones IoT sofisticadas, también existe la opción de emplear otro módulo on-board – la serie STSAFE-A100 se suministra como una solución ready-to-run con un sistema operativo seguro. Esta última generación de microcontroladores securizados ayuda a mejorar las funciones de seguridad en servicios de autentificación y gestión de datos para PC host locales y remotos, proyectos de smart home y smart city, aplicaciones industriales, electrónica de consumo y todo tipo de productos finales y accesorios.


SERVICIO AL LECTOR gratuito para ampliar info de este producto

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.