Hacer una llave RFID universal para intercomunicadores

Saludos a todos los interesados ​​en el tema de las llaves electrónicas: vehículos todo terreno. En verdad, yo mismo no he estado siguiendo las noticias en esta área durante mucho tiempo. Pero quiero publicar mi desarrollo de hace tres años, ya que es fácil de repetir y puede ser de interés para alguien. La conclusión: en lugar de una docena de llaves con códigos todo terreno y solo códigos, todas las llaves se pueden transportar en un pequeño dispositivo.



Descargo de responsabilidad: repita - no lo exhorto, para el montaje y uso - usted es responsable, comparto información únicamente con fines informativos. Por ejemplo, para ayudar a las empresas que prestan servicios a teléfonos con altavoz en la puerta a reparar "agujeros" a tiempo, si se detectan utilizando el dispositivo.

1. ¿Qué es? Que puede


El dispositivo que recolecté en 2017 no es más que un spoofer para una tecla RFID de intercomunicación que funciona a una frecuencia de 125 kHz. La palabra "spoofer" en este caso significa que el dispositivo, de hecho no es una clave, se hace pasar por él y los intercomunicadores responden en consecuencia.

El dispositivo puede transmitir cualquier código clave que esté grabado en su memoria. Algunos códigos se pueden encontrar en la Web para "claves todo terreno", primero los inserté en el firmware. Pero con un poco de habilidad y deseo, puede insertar en el firmware los códigos de todas las claves RFID que utiliza (si funcionan a una frecuencia de 125 kHz), y así poder reemplazar un montón de llaveros con un solo dispositivo.

Sé que en la inmensidad de la Web hay una gran cantidad de circuitos de tales dispositivos. Mi objetivo era crear la versión más simple de todas las disponibles. Si tuvo éxito o no, juzgue usted mismo.

2. ¿Qué habilidades necesitas tener para repetir este proyecto?


En primer lugar, las habilidades para trabajar con Arduino: tener un entorno de desarrollo instalado, poder cargar firmware a la placa, instalar bibliotecas, controladores, eso es todo. Siguiente Hay un lugar en el proyecto donde sin soldar, bueno, nada. Porque, necesitas brazos rectos y un soldador con consumibles. Para poder leer diagramas de circuitos eléctricos (o sus similitudes). Bueno, habilidades de programación en C ++, para poder personalizar el dispositivo. Pero esto ya es opcional.

3. ¿Qué partes se necesitan y cómo montarlas?


Sin demora, aquí hay un diagrama del dispositivo:
Perdón por el hecho de que "no está de acuerdo con GOST": dibujo en drawio, porque es la única alternativa gratuita y conveniente a Visio, y ahora solo uso software con licencia. Pero, supongo, todo ya está muy claro.


Como puede ver, la lista de materiales para la versión básica se ve así:

  1. Arduino Nano (o cualquier otro Dunya que esté a la mano);
  2. Clave RFID EM4100 (en lugar de inductor);
  3. transistor npn (cualquiera que se encuentre, las frecuencias aquí no son muy altas);
  4. Resistencia de 10K;
  5. Condensador de 560 pF (mejor SMD, puede soldar directamente en la carcasa desde la tecla);
  6. batería de iones de litio - al gusto;
  7. tres botones táctiles;
  8. Pantalla OLED con interfaz I2C;
  9. módulo de carga para liIon;
  10. Convertidor DC-DC elevador con salida de 5V.

El esquema de energía puede ser cualquiera, solo para tener suficiente Arduino para comenzar. Dispositivos de E / S, de manera similar: el firmware se puede adaptar fácilmente a los botones / pantallas disponibles (enlace a github, justo debajo). La versión actual del firmware está escrita para la pantalla OLED y los botones táctiles (tomados de consideraciones de "no rebote").

También puede recolectar una muestra de prueba en una placa de prueba sin soldadura. Aquí no se requieren instrucciones especiales, excepto qué hacer con la "inductancia". Sobre esto, con más detalle.



La clave, similar a la de la foto, se puede obtener de cualquier maestro local, o pedirla a Ali. Hay una tapa en el cuerpo de la llave, que debe abrirse cuidadosamente al llegar al relleno:



Es una bobina y un chip de memoria con dos almohadillas a los lados. Los resultados de la bobina se sueldan solo a estas almohadillas. Todo esto se inunda con una fina capa de termopolímero elástico (en apariencia y propiedades similares al adhesivo congelado B7000). Para obtener una bobina, hice lo siguiente. Tomando un cuchillo de oficina, presioné suavemente una textolita con una cuchilla entre las almohadillas y el microcircuito. Separó el microcircuito de la bobina y lo tiró. Luego, con un soldador, quemé suavemente (para no soldar los alambres delgados de la bobina) quemé el termopolímero sobre las almohadillas, haciendo posible marcar más.



Antes de soldar, debe medir la resistencia de la bobina, asegurándose de que no esté al aire libre. Si todo está en orden, entonces es mejor ensamblar así: primero suelde el condensador SMD a las almohadillas (debe encajar perfectamente entre ellas), luego las patas del transistor y, al final, la resistencia a la base. Todo esto se puede montar perfectamente en la carcasa de la llave. Los cables de la "tierra" y la base del transistor se sueldan en último lugar.



Luego, haga un agujero en la cubierta de la llave para estos cables y cierre el llavero, dándole una apariencia casi original. Para ensamblar en una placa sin soldadura, debe soldar los conectores de clavija a los cables (o simplemente desgarrarlos bien para poder insertarlos fácilmente en la placa).

4. Firmware, prueba y configuración


Según lo prometido, un enlace al repositorio del proyecto. Los archivos de firmware están en la carpeta My_125_kHz_spoofer_v.03.

Después de ensamblar y cargar el firmware, el dispositivo está listo para usar. Para asegurarse de que funciona, no es necesario buscar un intercomunicador: puede usar el módulo chino para leer las claves RFID, que se llama RDM6300 y otra placa Arduino (aunque es más fácil para cualquiera). También puse el firmware para el módulo RDM6300, que muestra el código clave traducido en el mismo formato que se incluyó en el firmware del spoofer, en el repositorio del proyecto. Diagrama de conexión del lector - en el mismo lugar.

Procedimiento de prueba con el lector RDM6300:

  1. Asegúrese de que el lector funciona manteniendo presionadas las teclas disponibles a 125 kHz de la antena (los datos se enviarán al puerto COM);
  2. Seleccione el código clave de interés en el menú del altavoz;
  3. Traiga la antena al lector. Si el lector lee la misma clave que se especifica en el firmware, ¡todo funcionó! De lo contrario, verifique el esquema, busque dónde está el error, elimínelo y comience desde el punto 1.

5. Qué se puede cambiar en el firmware y qué es mejor no tocar


Dado que el firmware fue moldeado sobre la base de este código, que no está del todo claro para mí, las funciones vitales que no se pueden cambiar en este momento son completamente, puse en una pestaña separada functions.ino. El resto del programa sirve exclusivamente para proporcionar al usuario una oportunidad conveniente de llamar a la función EmulateCard (bueno, y algunas líneas de código frente a ella).

Puede agregar sus claves a la matriz uint64_t universalID [] ubicada en la línea 75 del código. Como no he "definido" el número total de claves en la memoria del dispositivo, y algunas funciones están vinculadas a esta constante, al agregar mi propia clave, también debe cambiar los límites dentro de los cuales la variable keyNumber es responsable de elegir la clave. Bueno, no olvides agregar tu clave en el menú. En general, todo está húmedo, pero si lo desea, repito, no es difícil resolverlo.

6. Qué podría mejorarse en el dispositivo


  1. Agregue soporte para las teclas iButton (al menos las más comunes de Dallas).
  2. Para agregar la emulación de teclas que funcionan a una frecuencia de 13.5 MHz (según tengo entendido, ya sea usando un blanco regrabable y el módulo RC522, o es técnicamente difícil a través de la emulación real).
  3. Agregue lectores iButton, RDM6300 y RC522 al dispositivo para que el dispositivo sea aún más universal.

Quién tendrá éxito: escriba sobre los resultados. Yo mismo no voy a volver al desarrollo de este juguete en el futuro cercano)

7. Historia de la creación.


Estuve en el patio en el otoño de 2017. Como estudiante de segundo año, languidecía en cuestiones no resueltas de autodeterminación. En pocas palabras, sacudió la ociosidad y estaba buscando algo que hacer. Como resultado, decidió terminar sus viejos proyectos de ingeniería en detrimento de visitar la universidad.

El clima en el patio era simplemente lujoso. ¿Y qué podría ser mejor que sentarse en el techo de un edificio alto en una fresca noche de otoño, beber té de un termo y contemplar el bullicio de la ciudad nocturna bajo tus pies? ..

Por la tarde, llegar a la entrada de cualquier edificio de gran altura no es difícil: la ingeniería social de la serie "Hola, una encuesta social sobre la calidad del trabajo de la empresa de gestión para el nombre del periódico local" funciona bien y, de hecho, básicamente a los residentes no les importa que alguien ingrese a la entrada con ellos. Por la noche, otra cosa. Y me gustaba subir a los tejados al atardecer o por la noche ... Ha madurado un problema, que resolví de la manera descrita anteriormente.

Según recuerdo, no se encontró información sobre dichos dispositivos de inmediato. Buscar en Google las palabras clave "cracker de intercomunicador" no produjo casi nada. Comencé a ser adecuado cuando comprendía un poco la tecnología RFID, y comencé a hacer preguntas más significativas, como "emulador RFID", "RFID multykey", "RFID spoofer".

Como resultado, resultó encontrar dos artículos decentes en inglés sobre el tema. En uno, el autor describió cómo, basándose en el Arduino, una clave estaba bastante confundida desde el punto de vista del hardware, y en el segundo era todo lo mismo, pero sin la fuente, pero con un hardware muy simple. Habiendo razonado correctamente que dado que ambos circuitos están conectados a la antena con un pin Arduino, decidí cruzar una solución de hardware simple y de código abierto. Fue posible, aunque no la primera vez).

La foto al comienzo de este artículo está lejos de ser la primera versión del dispositivo. El primero estaba en el tablero y funcionaba a través del puerto COM. Recuerdo cómo los transeúntes me hicieron comprender de todas las formas posibles que me parecía sospechoso cuando estaba en la puerta de un edificio de varios pisos con una computadora portátil abierta y veía algo en el intercomunicador.

Luego hubo varias versiones más compactas, que reuní y desarmé por interés. El penúltimo robó uno de los personajes principales de mi artículo anterior. La versión actual se compiló el 29 de enero de este año, entre las lecciones que enseño en mi círculo. Fue ensamblado solo con el objetivo de asegurarme de que no desinformaba a nadie, y el firmware con el circuito funcionó.

Source: https://habr.com/ru/post/485104/


All Articles