Estado del proyecto en Marzo

El estado actual del proyecto no es el que me gustaría, mi idea era por estas fechas tener algo mucho mas avanzado, y que, como mínimo, fuese funcional, pero me temo que por diversos factores esto no ha podido ser, actualmente sólo he implementado la lectura del código a través del teclado en el arduino exterior y algunas funciones para que entre en modo de bajo de consumo y así gastar menos energía pero aún es un montón de código incapaz de realizar ninguna de las tareas que tenía en mente, espero poder corregir esto en breve y que al menos funcione (aunque no lo haga con la seguridad que tenía en mente), esto tardará mas en llegar.

Para la lectura del teclado he decido no usar una librería externa porque me parecía una tarea lo suficientemente simple como para poder realizarla yo sin depender de librerías externas, además así tengo un control mayor del código que se ejecuta y puedo adaptarlo mejor a mis necesidades. Aunque luego me he dado cuenta de que no soy tan bueno estimando el tiempo que me llevará implementar una u otra cosa ya que he tardado bastante más de lo que esperaba.

En cuanto a la conexión entre ambos arduinos, finalmente usaré unos módulos nrf240l01, que están bastante bien de precio por internet y implementan muchas cosas útiles como control de errores, ack y demás, para estos si que usaré alguna de las librerías disponibles ya que llevo mucho tiempo con este proyecto y no quiero perder tiempo en reinventar la rueda como hice con el teclado, tal vez en un futuro me anime y implemente mi propia librería.

NRF24l01_Nordic_Semiconductor_radio

Por último el tema criptográfico creo que no va a ser tan sencillo como me lo parecía inicialmente, estoy barajando varias opciones, una de ellas es usar memorias externas para almacenar las claves, otra es usar estas memorias para almacenar números primos y generar las claves a partir de estos cada vez que se introduzca un pin, aunque esto deja el sistema extremadamente vulnerable al hacking por hardware. Otra opción es usar un par clave pública y privada generado previamente y hardcodeado en el códgio y introducir algún tipo de dato que cambie en cada envío como la ventana de tiempo en la que es válido el tiempo, así me ahorro el problema de generar o almacenar muchas claves y evito que alguien pueda interceptar un código y almacenarlo para su posterior uso. Aún no se si para esto usaré algún tipo de librería externa o lo implementaré yo, depende de que opción sea la que finalmente elija y cuales sean las opciones disponibles.

Leave a Reply

Your email address will not be published. Required fields are marked *

twenty seven − seventeen =