Identificación rfid

Yo hice un acceso, para mi casa, que se basa en leer un determinado sector de la tarjeta. El sector contiene un numero compuesto por 4 Bytes(el uid) + 12 bytes generados al azar y el bloque esta cerrado con las llaves que tiene la cerradura, dos llaves de 6 bytes cada una.

Esta realizado con un esp8266 y para el control de cerradura uso un nano. La cerradura es una ABUS hometec a la que retiré la electronica que llevaba ya que quería abrir con rfid. Solo uso el soporte mecánico y el motor con la reductora.

Para dar de alta una tarjeta:
Se escribe en un sector determinado el UID+12 bytes al azar, yo a esto lo llamo idtarjeta. Se escribe en el sector y tambien en una entrada libre para tarjetas registradas en la EEPROM del esp. Después se escribe las llaves de las cerradura en el sector trailer y se cierra el bloque de forma que para leerlo/escribirlo hace falta autenticar con las llaves de la cerradura.

Para comprobar el acceso:
Se intenta autenticar en la tarjeta con las llaves de la cerradura para leer el sector cerrado, si no se puede, no se abre la puerta.
Si se ha podido autenticar, se lee el sector y se comprueba que contiene un 'idtarjeta' que exista en la EEPROM, si existe se abre la cerradura, sino no abre.

Esto da una seguridad bastante alta comparado con el uso del uid, que como sabes se puede leer siempre.

Además envía correos de la apertura, cierra la puerta a horas programadas, lleva reloj NTP, servidor web, log, etc. Tambien permite dar de alta/baja tarjetas con el uso de una tarjeta maestra.