Paolo Perego
Paolo Perego Specialista di sicurezza applicativa e certificato OSCE e OSCP, amo spaccare e ricostruire il codice in maniera sicura. Sono cintura nera di taekwon-do, marito e papà. Ranger Caotico Neutrale, scrivo su @codiceinsicuro.

Password vs Passphrase: la cracking challenge

370 parole - Lo leggerai in 2 minuti

Settimana scorsa ho scritto un post che su LinkedIN ha creato una vivace discussione.

Come potete vedere, accanto a commenti mirati a promuovere il proprio blog o commenti mirati a provare a rivendere qualche tecnologia proprietaria, la questione su cosa sia meglio tra password e passphrase è dibattuta e non sembra esserci una visione comune.

Per provare a rendere la cosa più interessante, oggi sempre su LinkedIN ho lanciato una #passwordcrackingchallenge che ripropongo anche qui.

Come algoritmo di hash ho scelto uno sha256 senza usare salt. Le hash sono state generate usando il comando:

```
$ echo -n "stringa" | sha256sum
```

</div>Come policy per la password ho scelto: almeno 1 maiuscola, almeno 1 numero, almeno un carattere speciale, almeno 8 caratteri mentre per la passphrase ho pescato solo dall’italiano, solo caratteri minuscoli tranne i nomi di persona che sono stati scritti secondo le regole della nostra grammatica, che spero conosciate.

Questi gli hash:

```
 021911e07fbd55e6480cc9127b6da3cd5a25f57dc47a14213d298dc06a082a4f (Password di 13 caratteri)
f3ddebd7a0379a6626c19c95a068c173734f910c6c32d14936f34ec9a33290d9 (Password di 9 caratteri)
a6fabf6238568215f9f00cc5caad69ec96e46b33fd88e5591fcb502aef58fd44 (Passphrase di 4 parole italiane (frase di senso compiuto))
8345147c1367174a397cfe1e0695871197dc66f7d3c5f6a865f9106a87a34b3e (Passphrase di 4 parole italiane (frase non di senso compiuto))
7791a9337f4fcc36499a7ec123ef3d4c55b94fc1ffcacfc08d9fc1022d8f39e7 (Passphrase di 11 parole italiane (frase di senso compiuto, presa da una canzone))

```

</div>La sfida è, entro il 31 dicembre 2022, vedere quanti hash hanno resistito. Siete liberi di usare qualsiasi mezzo a vostra disposizione.

Mentre scrivevo questo post ho preso una decina di minuti per accompagnare mia figlia a danza e la [prima hash è già caduta](https://www.linkedin.com/feed/update/urn:li:activity:6922927684033417216?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A6922927684033417216%2C6922939189579628544%29):

```
f3ddebd7a0379a6626c19c95a068c173734f910c6c32d14936f34ec9a33290d9: P4ssw0rd_
```

</div>## Off by one

Lo scopo di questa challenge non è tanto confrontare password e passphrase empiricamente. Il confronto, come vedete dalla hash che è stata trovata, è su segreti che l’utente medio sceglie per via della loro mnemonicità.

Io sono convinto che le passphrase siano una scelta migliore di una parola chiave con astrusi meccanismi di complessità; complessità che è solo per l’utente non certo per un elaboratore per il quale un carattere… è pur sempre un carattere.

Happy cracking!

Vuoi aiutarmi a portare avanti il progetto Codice Insicuro con una donazione? Fantastico, allora non ti basta che premere il pulsante qui sotto.

Supporta il progetto

comments powered by Disqus
Codice Insicuro, blog di Cyber Security, sviluppo sicuro, code review e altro.   Non perdere neanche un post, iscriviti ora alla mailing list