Integrado - cifrar o hashear la transmisión de Bluetooth

Iniciado por TickTack, 21 Octubre 2021, 22:50 PM

0 Miembros y 1 Visitante están viendo este tema.

TickTack

¡Hola comunidad!

tengo nuevamente otra pregunta. Se trata del cifrado del tráfico de datos a través de Bluetooth en un proyecto integrado.

El proyecto:
Hago un control para mi vecino para un box spring. Todo debería de funcionar también a través de una aplicación de Android.

Utilizo el módulo HC-05 para la conexión de Bluetooth. Es posible cambiar la clave de emparejamiento en el módulo, algo que quiero hacer en la aplicación. La clave estándar es 1234.

Dado que un PIN de cuatro dígitos es demasiado inseguro para mí, una vez pensé que usaría el algoritmo SHA-256 para la comunicación. Al menos ya lo he implementado con éxito en un proyecto anterior. He pensado a la ligera en cómo el protocolo hasheado debería de verse. A saber, en el hardware también quité la memoria de 1 Wire DS2430A. Ella tiene una ID única de 64 bits y un EEPROM de 256 bits.

El protocolo sin rodeos para un comando se vería así, por ejemplo:
BCGETTXVER\r\n -> Imprimir la versión de firmware, como ejemplo. Es decir, un comando que envía la aplicación.

De momento lo hashearia así:
SHA256(BCGETTXVER + [DS2430A_UniqueID] + [DS2430A_Password] + [Bluetooth_PIN])

Y envíar el valor hash.

Con respecto a DS2430A_Password:
Dado que el EEPROM del DS2430A es exactamente de 256 bits, también podría usar SHA256 para almacenar la contraseña como un hash.

Quería preguntar cómo harían eso... ¿Qué mejorarían?


Gracias y saludos
Citar
"Ninguna mentira puede inventarse lo suficientemente patán: el pueblo hispanohablante la cree. Por una consigna que se les dio, persiguieron a sus compatriotas con mayor encarnizamiento que a sus verdaderos enemigos."


Danielㅤ

¡Regresando como cual Fenix! ~
Bomber Code © 2021 https://www.bombercode.net/foro/

Ayudas - Aportes - Tutoriales - Y mucho mas!!!

Bundor

Eso mismo he hecho Daniel, buscarlo en google y al salir una cama he pensado que no podía ser.
Por eso lo he preguntado. No relaciono una cosa con la otra. Pero gracias igual es eso, quien sabe  :xD