È una buona idea combinare parole di lingue diverse per aumentare la forza di una password? [duplicare]

1

Stavo pensando a un modo per generare una password che sia facile da ricordare, ma difficile da decifrare, come la famosa "graffetta della batteria del cavallo corretta" suggerita da XKCD , anche discusso qui , e ho capito che non ho mai sentito il suggerimento di combinare parole di lingue diverse. Altre domande su questo sito riguardano la lingua inglese password o dizionari , ma non considerare la possibilità di mescolare i linguaggi, che è quello su cui mi sto concentrando.

Facciamo un esempio. La mia lingua madre è l'italiano. Se avessi tradotto le ultime due parole e avessi proposto "corretta graffetta a cavallo", non sarebbe stato molto più difficile da decifrare della frase inglese?

Molte persone hanno almeno una conoscenza di base di una seconda lingua, quindi dovrebbe essere facile per loro scegliere una parola straniera. Certo, se il loro livello è basso, è probabile che scelgano parole molto semplici (come "ciao", "gatto", "cane") che sarebbe facile indovinare, e questo sarebbe male. Ma escludendo questo caso, cioè assumendo che le parole scelte non siano completamente banali, questo suggerimento funzionerebbe? Fornirebbe password più forti, a parità di tutti gli altri (vale a dire: la lunghezza totale, la presenza di lettere minuscole / maiuscole, numeri e altri simboli, l'entropia ...)?

A mio parere l'efficacia di questa strategia dipende dall'attacco. Se è puramente forza bruta (cioè nessun dizionario), direi che è lo stesso. Ma se l'attacco è basato sul dizionario (come è probabile), questa tecnica non ostacolerebbe molti attacchi? Quanti dizionari ci sono che combinano le parole di più di una lingua? Penso che la mia frase di esempio "correggere graffetta a cavallo" sarebbe abbastanza difficile da indovinare.

Prendiamo questo approccio ancora di più e aggiungiamo un'altra lingua. "Cavallo" in italiano è "cavallo", e in tedesco è "Pferd" (con la P maiuscola, ma ignoriamolo e mantieni tutto in minuscolo). "Horse cavallo pferd" non sarebbe ancora più difficile? E questa è solo una parola tradotta in 3 lingue, che è probabilmente una pessima idea. Prendiamo 3 parole non correlate: finestra, squalo, albicocca. Che mi dici di "window squalo aprikose"? Penso che sarebbe davvero difficile da indovinare.

Naturalmente, questo è "sicurezza attraverso l'oscurità", cioè, questo metodo funziona bene se l'attaccante non sa che viene usato. Assumiamo il caso peggiore: ne è consapevole e sa persino quali lingue parlo. Chiaramente la mia idea sarebbe per lo più inefficace in questo caso, ma ancora: non sarebbe meglio che scegliere le parole da una sola lingua? L'utente malintenzionato sarebbe costretto a utilizzare un dizionario più grande e i suoi attacchi richiederebbero più tempo.

Per concludere: Penso che la creazione di una password combinando parole di lingue diverse possa ridurre notevolmente l'efficacia di un attacco di dizionario non mirato (e possibilmente contrastarlo completamente). Se, invece, l'attacco è mirato, il vantaggio è minore, ma d'altra parte non vi è alcun inconveniente. Pertanto, questo metodo può essere considerato un miglioramento rispetto al suggerimento di XKCD.

Ho ragione? È una buona idea adottare / raccomandare questa tecnica, o mi sto perdendo qualcosa?

    
posta Fabio Turati 13.02.2016 - 04:29
fonte

2 risposte

4

Tutto ciò che conta quando si calcola la forza della strategia di generazione della password è quanto entropia è coinvolta nella generazione della password.

L'uso di più dizionari non indebolisce la passphrase. Quanto questo rafforza la frase d'accesso, dipende da come scegli esattamente la tua pass phrase.

Dal punto di vista del calcolo dell'entropia, l'uso di un dizionario combinato da più lingue equivale esattamente all'aumento del numero di parole nel dizionario.

Ad esempio, strategia diceware standard ha utilizzato un dizionario con 7776 parole. La forza di una password diceware di 4 parole è 7776^4 ≈ 2^51.7 o 51-bit. Se hai modificato questa strategia in modo da utilizzare un dizionario combinato di 7776 parole inglesi e 7776 parole italiane, la forza della passphrase sarebbe (7776+7776)^4 ≈ 2^55.7 , o 55 bit, che è solo 4 bit più strong del diceware standard.

Se invece hai deciso che le prime due parole saranno inglesi e le ultime due parole saranno italiane, o se decidi di usare un dizionario combinato di 3888 parole inglesi e 3888 Parole italiane, quindi queste non aumentano la forza della passphrase dalla prospettiva dell'entropia.

In genere, è più proficuo aumentare il numero di parole sulla passphrase piuttosto che aumentare la dimensione del dizionario. Se hai usato la frase segreta standard per i dadi di 5 parole, la forza della tua password è 7666^5 ≈ 2^64.6 , che è un aumento di quasi 13 bit rispetto al diceware di 4 parole. Per ottenere un aumento di intensità di 13 bit aumentando la dimensione del dizionario da 7776, è necessario utilizzare un dizionario che è 9 volte più grande del dizionario diceware standard (9*7776)^4 ≈ 2^64.4 (vale a dire, è necessario utilizzare 9 lingue).

Non farebbe male aumentare la dimensione del dizionario, ma in realtà non aggiunge molta entropia. Dal punto di vista dell'entropia, però, la lunghezza della passphrase conta più della dimensione del dizionario.

    
risposta data 13.02.2016 - 08:11
fonte
-1

È un'osservazione interessante. Ho visto la pagina web che hai collegato. Secondo il webcomic, la frase "punti metallici corretti" ha 44 bit di entropia. Tuttavia, se sostituisci cavallo con cavallo avrai quasi la stessa entropia perché hai aggiunto solo 2 caratteri. Certo che hai ragione, stai chiaramente aumentando la sicurezza della password, ma non in modo significativo. Comunemente, mettendo insieme due parole in una sola password, puoi frustrare un attacco di dizionario.

    
risposta data 13.02.2016 - 06:55
fonte