¿Cómo detectar chips FTDI falsos?

8

Aparentemente, hay algunos chips FTDI USB / Seriales falsificados en el mercado.

Al buscar en la web, se encuentran personas que comparan las falsas / originales abriéndolas mecánica / químicamente .

¿Pero cómo detectar los falsos de manera menos intrusiva?

Quiero decir, la infame actualización del controlador FTDI seguramente contiene una rutina de detección; de lo contrario, no podría mostrar una identificación de proveedor cero en las falsificaciones.

¿Quizás se publique el 'algoritmo' de detección o métodos similares menos intrusivos?

maxschlepzig
fuente
1
Esta es una pregunta interesante. ¿Sin embargo, le has preguntado a FTDI? Por ejemplo, pueden tener un servicio de prueba donde envía el IC (o su placa) a FTDI, lo prueban internamente y le envían un informe. Si se entera de ellos, ¿podría publicar sus hallazgos aquí (siempre y cuando, por supuesto, la información no esté bajo un NDA)?
Nick Alexeev
1
@Nick Alexeev: si las preguntas de compras están fuera de tema ... ¡detectar falsificaciones particulares probablemente aún más!
Fizz
1
@RespawnedFluff El OP pregunta sobre "algoritmo" o "método". Veamos a dónde irá este hilo.
Nick Alexeev
1
Compre a distribuidores franquiciados de buena reputación que certifiquen su cadena de suministro, problema resuelto. Pero en serio, esta es solo la punta del iceberg: se podrían vender piezas malas que no pasaron la prueba y que en realidad son piezas de un hombre, comentarios antiguos, devoluciones dañadas, o una vez que tuvimos un fabuloso ejecutando un segundo turno para hacer piezas para ellos. .. La falsificación es una gran pita en este momento.
Some Hardware Guy
2
@RespawnedFluff: No veo cómo cualquier forma de detectar versiones falsas de un chip en particular se basaría en una opinión o quedaría desactualizada rápidamente, que son las dos razones principales por las que las preguntas de compra son poco comunes.
PlasmaHH

Respuestas:

8

El controlador se ha desmontado http://hackaday.com/2014/10/24/ftdi-screws-up-backs-down/

La detección se encuentra en la línea WriteEEPromValue a continuación. No puedo molestarme en encontrar la fuente de texto, así que aquí está la imagen de ese artículo con el código / comentario crítico encerrado en un círculo

ingrese la descripción de la imagen aquí

Efervescencia
fuente
1
Como puede ver, el método se basa en la EEPROM de chip falso que acepta / ejecuta escrituras cortas y / o desalineadas, mientras que los chips FT reales las ignoran. Quién sabe qué hará la próxima ola de falsificaciones.
Fizz
También intentaron fusionar su código de desactivación en el controlador del kernel de Linux lkml.org/lkml/2014/10/23/129 Adivina cómo terminó eso ...
Fizz
En realidad, no estoy seguro de que alguien que trabaja en FTDI haya enviado el parche ... porque el siguiente mensaje dice algo sobre "performance art": D
Fizz
Finalmente, puede usar los controladores más recientes (posteriores a julio de 2015). Estos se niegan a hablar con chips falsos sin matarlos aparentemente. electropit.com/index.php/2015/09/06/arduino-nano-v3-0-clones El método exacto utilizado para lograr esto aún no ha sido modificado, por lo que puedo decir. Pero no es difícil imaginar modificar el código anterior para escribir en una ubicación no crítica (y luego verificar lo que contiene).
Fizz
2

El problema es que si se conoce ampliamente un método simple para detectar falsificaciones, los falsificadores intentarán corregir sus falsificaciones para que sean inmunes.

Entonces, la pregunta es qué pruebas son posibles contra las cuales los falsificadores encontrarán muy difícil inmunizarse. Sospecho que la respuesta es medidas de sincronización precisas, los chips IIRC FTDI están basados ​​en hardware, por lo que deben tener una sincronización muy estable y predecible que sería muy difícil de clonar con precisión en una falsificación basada en microcontrolador.

Peter Green
fuente
Además, ¿en qué punto es un clon una copia perfecta? ¿Qué pasa si no hay más pruebas de caja negra que pueda hacer?
crasic
No, las mediciones de tiempo probablemente no sean la respuesta, ya que el dispositivo se encuentra en el extremo más alejado de un bus USB que impone su propio tiempo, y la mayoría trabaja con una asombrosa variedad de hosts con sus propios retrasos e ineficiencias.
Chris Stratton
Claro, dichas mediciones de tiempo tendrían que tomarse en una configuración de prueba con un host estrictamente controlado (muy probablemente un FPGA de algún tipo). Construir una configuración para medir con precisión el comportamiento de temporización de un dispositivo USB no sería barato ni fácil, pero esperaría que fuera muy efectivo para eliminar clones.
Peter Green