IoT cubre una amplia gama de dispositivos y casos de uso, como en el hogar, el enrutador, las bombillas inteligentes, el termostato inteligente, quizás cerraduras inteligentes, etc. Y aún más se pueden encontrar casos en la industria donde los sensores o los sistemas de recolección de datos están en todas partes. .
Dada la amplia gama de dispositivos, tienen algunas cosas en común: tienen algunos firmware que pueden tener errores o características faltantes y, por lo tanto, necesitan actualizaciones. Y necesitan comunicarse con otros sistemas para recibir y / o proporcionar datos recopilados.
Y aquí es donde los certificados (u otros contenedores de confianza para una clave pública) ayudan:
- En la mayoría de los casos de uso, es esencial que el dispositivo solo ejecute firmware autorizado, es decir, que no haya ningún firmware que pueda usarse para destruir el dispositivo de IoT o incluso atacar máquinas conectadas, sensores u otros dispositivos en la red. Las firmas digitales que utilizan certificados se utilizan normalmente para proporcionar dicha autorización.
- Para proteger los datos en tránsito, generalmente se requiere el cifrado. Esto requiere que el cliente sepa que transmite los datos al servidor correcto. Los certificados se utilizan normalmente para esta autenticación de servidor, por ejemplo, en protocolos como TLS. Alternativamente, el cliente no confía en el servidor con el que está hablando directamente, sino que encripta los datos para que solo el destinatario final pueda descifrarlos. En este caso, el cliente puede usar protocolos como PGP, S / MIME o similares para cifrar los datos de los destinatarios finales al tener el certificado de destinatarios.
- A menudo, también es necesario que el destinatario de algunos datos sepa con seguridad qué dispositivo está enviando / creando los datos para asegurarse de que no reciba datos falsos de dispositivos no autorizados. Nuevamente, los certificados se utilizan para esto: ya sea en forma de certificados de cliente en autenticación mutua en protocolos como TLS. O firmando digitalmente los datos con un certificado específico del dispositivo.
¿O también para cifrar la comunicación?
Los certificados utilizan criptografía de clave pública (asimétrica), es decir, RSA o ECC. Este tipo de criptografía no es adecuado para cifrar grandes cantidades de datos. En su lugar, se utiliza la criptografía simétrica para esto (es decir, AES y similares). Los certificados siguen desempeñando un papel importante en el cifrado, ya que se utilizan para proteger las claves simétricas utilizadas para el cifrado, por ejemplo, en el intercambio de claves en TLS o para cifrar la clave simétrica con la clave pública del destinatario en protocolos como PGP o S / MIME.
¿Supongo que los sensores, etc. son demasiado pequeños para obtener certificados y usarlos?
La criptografía de clave pública como parte central del certificado no requiere tantos recursos como podría pensarse. Por ejemplo, ya está implementado en tarjetas inteligentes o chips TPM, lo que significa que probablemente también se puede implementar en la mayoría de los dispositivos de IoT que tienen la capacidad suficiente para realizar algún tipo de comunicación de red. Los casos de uso habituales para la criptografía de clave pública dentro de IoT solo requieren la creación o verificación ocasional de firmas digitales o el cifrado de datos pequeños, lo que significa que la velocidad de la operación generalmente no es tan crítica.