Introducción
En este post vamos a ver cómo funciona el microchip ATECC608A. Es un microprocesador utilizado para la seguridad de la red y la autentificación. Por ello, es muy importante proporcionar seguridad a todos aquellos dispositivos que no la tienen en sus versiones de stock.
Enlaces relacionados
Computer Networking: A top Down Approach, Jim Kurose, Keith Ross (bibiliografía de las imágenes y es interesante para información relacionada)
Tiene todos los mecanismos para proporcionar una gama completa de seguridad, como la confidencialidad, la integridad de los datos y la autentificación a los sistemas con MCU o MPU que ejecutan algoritmos de cifrado/descifrado. Emplea un almacenamiento ultra seguro de claves criptográficas basado en hardware y contramedidas criptográficas que eliminan posibles puertas traseras relacionadas con las debilidades del software.
El dispositivo es agnóstico de cualquier microprocesador o microcontrolador y es compatible con los MCU o MPU de Microchip AVR/ARM. Ofrece un consumo de energía extremadamente bajo, requiere solo una única GPIO en un amplio rango de voltaje y tiene un factor de forma diminuto, lo que lo hace ideal para una variedad de aplicaciones que requieren una mayor duración de la batería y factores de forma flexibles.
Coprocesador criptográfico con almacenamiento seguro de claves basado en hardware.
Almacenamiento protegido para hasta 16 claves, certificados o datos.
Soporte de hardware para firma asimétrica, verificación, acuerdo de claves - ECDSA.
Soporte de hardware para algoritmos simétricos.
Soporte de gestión de claves en red.
Soporte de arranque seguro.
Etc.
Sistemas de seguridad
Curva elíptica Diffie Hellman (ECDH)
Es un protocolo ultra seguro que proporciona un acuerdo de clave para el cifrado/descifrado. Se basa en el establecimiento de claves, totalmente anónimo, que permite a las dos partes (cada una tiene un par de claves de curva elíptica privadas-públicas) establecer un secreto compartido en un canal inseguro. Este secreto compartido puede ser usado directamente como clave o para derivar otra clave. La clave, o la clave privada, puede utilizarse para cifrar comunicaciones sucesivas utilizando la clave simétrica. La parte de la curva elíptica se basa en que ambas partes tienen un par de claves de criptografía especializadas (una pública y otra privada, como vimos anteriormente). La encriptación de clave pública y privada es un método en el que podríamos profundizar mucho más, así como la función hash, que se suele aplicar al secreto con el fin de eliminar los bits débiles debidos al intercambio Diffie-Hellman.
En esta imagen podemos ver un ejemplo de la criptografía de clave simétrica, pero hay que tener en cuenta que ésta es sólo una parte, en ausencia de la clave Privada-Pública y de las partes de hash si son necesarias. (No es exactamente el mecanismo ECDH, es sólo para fines de explicación).
Algoritmo de firma digital de la curva elíptica (ECDSA)
Es una autentificación de verificación de signos para el mercado de Internet de las cosas. La principal ventaja de este sistema es que requiere números más pequeños para proporcionar el mismo nivel de seguridad que la DSA o la RSA. Todo el proceso consiste en generar las claves (sistema de claves previas Privado-Público), hacer el signo y hacer la verificación (usando algoritmos matemáticos).
Here we can see another example and, as in the previous one, the two parts are represented by Bob and Alice. Bob sends a digitally signed message; on the one hand, the large message is sent in the original format and, on the other hand, a hash is applied to the message to ensure its integrity, it is digital signed (encrypted) with Bob's private key and sent too.
After that, Alice verifies the signature and the integrity of the digitally signed message; on the one hand, she applies a hash function to the message and, on the other hand, she decrypts the encrypted message with Bob's public key. She has two encrypted messages with the same hash function and she compares both to verify Bob's authentication. (It is not exactly the ECDSA mechanism, it is only for explanation purposes).
Automatización industrial y seguridad de red con ATECC608A