Innanzitutto, md5
è una funzione hash, non una funzione di crittografia.
-
Per quanto riguarda le funzioni di hash considerate non funzionanti:
Ne esistono solo pochi: un semplice egrep potrebbe sputare alcuni file sorgente offensivi, data l'espressione corretta.
-
Per quanto riguarda le cifre:
-
codici forti:
Come questa recente domanda dimostra, nella maggior parte dei casi, che il problema non è l'effettiva crittografia utilizzata ma che viene utilizzata in modo errato, senza una sufficiente comprensione della questione.
Questo non può essere rilevato sufficientemente buono, perché i problemi sono spesso introdotti in un modo molto sottile, dove ad es. solo i nomi delle variabili suggeriscono un problema.
-
codici deboli (o modi deboli, come ECB) possono essere messi sullo stesso file di stringa lista nera usato per cercare md5
et al.
In secondo luogo, come ci penso: md5
ha casi d'uso legittimi diversi da hashing sicuro (che non è abbastanza buono in).
Inoltre, dici
Weak cryptographic algorithm should be removed from source code to avoid a false sense of security
che non capisco: da dove viene il falso senso di sicurezza? Gli utenti finali raramente guardano le fonti - e se lo fanno, molto probabilmente possono individuare ciò che si può rilevare molto rapidamente. Gli sviluppatori delle fonti dovrebbero sapere meglio. Se questo è un problema, preferisci educare gli sviluppatori piuttosto che scansionare le loro fonti per un debole utilizzo della crittografia.