Questo problema potrebbe essere relativamente semplice, ma mi vengono dati due file di testo. Un file di testo contiene tutte le password crittografate crittografate tramite crypt.crypt in python. L'altro elenco contiene oltre 400k + parole normali del dizionario.Che cosa è un modo efficiente per scrivere l'algoritmo di cracking della password (python)
L'assegnazione è data da 3 diverse funzioni che trasformano le stringhe dal loro caso normale a tutte le diverse permutazioni delle maiuscole, trasforma una lettera in un numero (se ha lo stesso aspetto, ad esempio G -> 6, B -> 8), e inverte una stringa. Il fatto è che date le 10 - 20 password crittografate nel file delle password, qual è il modo più efficiente per ottenere la soluzione più veloce in esecuzione in python per eseguire quelle funzioni sulla parola del dizionario nel file di parole? È dato che tutte quelle parole, una volta trasformate in qualsiasi modo, crittografano una password nel file delle password.
Ecco la funzione che controlla se una data stringa, quando cifrato, è la stessa della password crittografata in passato:
def check_pass(plaintext,encrypted):
crypted_pass = crypt.crypt(plaintext,encrypted)
if crypted_pass == encrypted:
return True
else:
return False
Grazie in anticipo.
'return crypted_pass == encrypted' – SilentGhost
' return encrypted == crypt.crypt (plaintext, encrypted) ' –