Actualmente estoy en el proceso de diseño del modelo de seguridad para un producto de IoT que mi empresa está desarrollando.
El dispositivo se conectará a Internet a través de WiFi y solo se comunicará con el servidor de nuestra empresa.
- La comunicación se realizará a través de HTTPS
- Durante el montaje físico del producto, la huella digital SSL del servidor se almacenará en el dispositivo. El dispositivo utiliza esta huella dactilar para asegurarse de que realmente habla con su servidor "doméstico" cada vez que establece una conexión.
Un problema con este enfoque surge tan pronto como cambia el certificado SSL del servidor. Todos los dispositivos en el campo ya no podrán conectarse al servidor debido a una falla en la comprobación de huellas dactilares.
Una solución parcial sería crear un período de tiempo en el que el servidor distribuiría su nueva huella digital a todos los dispositivos conectados, junto con la hora exacta en que se volverá válido. Los dispositivos podrían almacenar la nueva clave y utilizarla a partir de la fecha anunciada. Pero esto no resuelve el problema para los dispositivos que no están en línea durante el período de distribución de huellas dactilares.
¿Hay alguna solución potencial a este problema que podría haber pasado por alto? ¿Cuál es "la manera correcta" de hacer tal cosa? (No puedo ser el primero en hacerlo, ¿verdad?)