La situazione è la seguente: Un dispositivo USB è collegato a un computer e invia dati a un software specifico, che dovrebbe accettare solo questi dati se il dispositivo di invio è stato precedentemente convalidato / autenticato da esso.
Poiché chiunque è in grado di decodificare ciò che il software sta facendo (con più o meno sforzo), il codice sorgente del software è considerato pubblico al momento.
Il software del dispositivo, ovviamente, non è sicuro al 100% e può essere decodificato, ma rompere i chip ecc. richiederebbe molto più tempo e impegno, quindi il dispositivo (e il suo software) è considerato privato.
Né il computer né il dispositivo sono connessi a Internet.
Hai idea di come il processo di autenticazione può essere fatto senza che il software sul computer contenga alcuna parte critica (che potrebbe essere decodificata e ricostruita, portando ad un'autenticazione positiva di un dispositivo USB "falso" e il software accetta dati falsi)?
Grazie a tutti per il vostro aiuto!