Background
Estoy creando un sistema de automatización del hogar usando RF 315/433 Módulo transmisor-receptor de MHz , un Ethernet Shield y AT Mega AVR Micro controlador (ATMega328 PPU) que funciona de la siguiente manera.
Un conjunto de API REST se integra con una base de datos back-end. Una interfaz web y de aplicaciones móviles con esta base de datos para cambiar la configuración. Las interfaces AT Mega MC con el escudo Ethernet se conectan a mi enrutador ADSL de mi hogar.
AT Mega MC lee (HTTPS) los valores de la API a través del blindaje de Ethernet e intenta controlar los dispositivos (la puerta de mi rodillo, los interruptores de luz, la calefacción, etc.) utilizando un módulo transmisor-receptor RF 315/433 MHz. El punto final que presenta el receptor de RF y AT Mega MC envía mensajes de control utilizando el transmisor de RF.
Problema
Tengo los siguientes problemas de seguridad en esta configuración.
-
¿Cuál es la forma más eficiente en que puedo cifrar mis mensajes desde el transmisor de RF al receptor? En este momento hago una simple operación XOR a los mensajes de control en ambos extremos. Así que el valor del XOR es simplemente actúa como una clave compartida. Sé que esto no es seguro en absoluto! No puedo implementar un algoritmo de consumo de recursos en mi punto final (extremo receptor) porque está usando el ATtiny85 MC.
-
Incluso si cifro el mensaje de RF TX a RX, alguien puede interceptar el mensaje saliente (usando alguna herramienta como HackRF) y volver a reproducir el mensaje más tarde. Así que pueden hacer un ataque de repetición fácilmente y abrir mi puerta en cualquier momento posterior.
Preguntas
-
¿Cuáles son las mejores precauciones de seguridad que puedo usar para asegurar mi transmisión de RF? Recuerde que estoy trabajando con dispositivos IoT que no tienen una gran capacidad informática.
-
¿Cómo puedo evitar este ataque de reproducción?