Come rilevare chip FTDI falsi?


8

Apparentemente, ci sono alcuni chip FTDI USB / seriali contraffatti sul mercato.

Effettuando una ricerca sul Web si trovano persone che confrontano quelle false / originali aprendole meccanicamente / chimicamente .

Ma come rilevare quelli falsi in modo meno intrusivo?

Voglio dire, il famigerato aggiornamento del driver FTDI contiene sicuramente una routine di rilevamento - altrimenti non potrebbe mostrare un ID fornitore zero su quelli contraffatti.

Forse viene pubblicato l'algoritmo di rilevamento o metodi simili meno invadenti?


1
Questa è una domanda interessante Hai chiesto FTDI, però? Ad esempio, potrebbero avere un servizio di test in cui spedisci l'IC (o la tua scheda) a FTDI, lo testano internamente e ti inviano un rapporto. Se scopri da loro, potresti pubblicare i tuoi risultati qui (a condizione, ovviamente, che le informazioni non siano sotto un accordo di riservatezza)?
Nick Alexeev

1
@ Nick Alexeev: se le domande sullo shopping sono fuori tema ... il rilevamento di falsi particolari probabilmente lo è ancora di più!
Fizz,

1
@RespawnedFluff L'OP chiede "algoritmo" o "metodo". Vediamo dove andrà questa discussione.
Nick Alexeev

1
Acquista da rinomati distributori in franchising che certificano la loro catena di fornitura, problema risolto. Ma seriamente questa è solo la punta dell'iceberg che potresti vendere parti difettose che hanno fallito il test che in realtà sono parti di un manf, hanno osservato vecchi registri, resi danneggiati, o una volta abbiamo persino avuto un fab che eseguiva un secondo turno costruendo parti per sé. .. La contraffazione è una grande pita in questo momento.
Some Hardware Guy,

2
@RespawnedFluff: non vedo come qualsiasi modo di rilevare versioni false di un determinato chip sarebbe basato sull'opinione o rapidamente obsoleto, che sono entrambi i motivi principali per cui le domande sullo shopping sono offtopiche.
PlasmaHH,

Risposte:


8

Il driver è stato smontato http://hackaday.com/2014/10/24/ftdi-screws-up-backs-down/

Il rilevamento si trova nella riga WriteEEPromValue di seguito. Non posso preoccuparmi di trovare l'origine del testo, quindi ecco l'immagine di quell'articolo con il codice / commento critico cerchiato

inserisci qui la descrizione dell'immagine


1
Come puoi vedere, il metodo si basa sulla EEPROM a chip falso che accetta / esegue scritture brevi e / o disallineate, mentre i chip FT reali ignorano quelli. Chissà cosa farà la prossima ondata di falsi.
Fizz,

Inoltre hanno cercato di unire il loro codice di disabilitazione nel driver del kernel Linux lkml.org/lkml/2014/10/23/129 Indovina come è andata a finire ...
Fizz,

In realtà non sono sicuro che la patch sia stata inviata da qualcuno che lavora all'FTDI ... perché il prossimo messaggio dice qualcosa su "performance art": D
Fizz

Infine, puoi utilizzare i driver più recenti (post luglio 2015). Questi si rifiutano di parlare con chip falsi senza ucciderli apparentemente. electropit.com/index.php/2015/09/06/arduino-nano-v3-0-clones Il metodo esatto utilizzato per raggiungere questo obiettivo non è stato ancora progettato per il contrario, per quanto ne so. Ma non è difficile immaginare di modificare il codice sopra per scrivere in una posizione non critica (e quindi controllare cosa contiene).
Fizz,

2

Il problema è che se un metodo semplice per rilevare i falsi diventa ampiamente noto, i falsi cercheranno di sistemare i loro falsi per renderli immuni.

Quindi la domanda è: quali test sono possibili per i quali i faker troveranno molto difficile immunizzare. Sospetto che le risposte precise alla misurazione del tempo siano la risposta, i chip di IIRC FTDI sono basati su hardware, quindi dovrebbero avere un tempismo molto stabile e prevedibile che sarebbe molto difficile clonare con precisione in un falso basato su microcontrollore.


Inoltre, a che punto un clone è una copia perfetta? E se non ci fossero più test in black box che puoi fare?
crasic

No, le misurazioni di temporizzazione probabilmente non sono la risposta, poiché il dispositivo si trova sul lato opposto di un bus USB che impone il proprio tempismo e la maggior parte di essi funziona con una varietà sbalorditiva di host con i propri ritardi e inefficienze.
Chris Stratton,

Certo, le misurazioni di temporizzazione dovrebbero essere prese in una configurazione di prova con un host strettamente controllato (molto probabilmente un FPGA di qualche tipo). Costruire un'impostazione per misurare accuratamente il comportamento di temporizzazione di un dispositivo USB non sarebbe economico o facile ma mi aspetterei che sia molto efficace per eliminare i cloni.
Peter Green,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.