Esiste un metodo per generare password specifiche del sito che possono essere eseguite nella mia testa?

50

Pensavo di recente alla sicurezza delle password. Il mio obiettivo è avere password per lo più casuali, diverse per ogni sito. Ma dovresti anche essere in grado di ricordarli (o rigenerarli) senza l'aiuto di note o simili. Se uso password veramente casuali (generate da un generatore di password), posso ricordarne solo alcune. Molti meno del numero di account web che ho. Le password più semplici sono spesso più facili da indovinare.

Ho pensato che un compromesso potesse essere alcune regole facili da imparare e alcune password master segrete, per generare una password dal nome del sito. Di 'che hai una password per eBay e Amazon. Questo metodo dovrebbe generare due password diverse, per "ebay" e "amazon". Ma dovrei anche essere in grado di fare il processo nella mia testa, senza il supporto del software o persino della carta e della matita. Password comunemente utilizzate che ricorderò direttamente. Ma quelli usati di rado, e dimenticati, potrebbero essere ricostruiti con un tale metodo. Qualcuno sa di un tale metodo?

EDIT : la cosa che chiedo dovrebbe migliorare la sicurezza, creando password diverse per ogni sito / macchina / programma, ma anche memorizzandole tutte. Una password sicura è bella, ma è anche più probabile che tu dimentichi le password del sito e, se perdi il tuo negozio o se è danneggiato, hai un problema. Inoltre TUTTE le password possono essere compromesse in una sola volta! E alla fine, la mia password di sicurezza locale non è a portata di mano, se sono alla macchina di un amico.

    
posta Mnementh 19.12.2010 - 18:14
fonte

11 risposte

16

Domanda intrigante. Ecco un nuovo, si spera meglio, un brainstorming. Caveat emptor.

Genera due password casuali valide e impegnative in memoria.

Prendi le lettere del nome del sito in sequenza. Se la lettera è una vocale, utilizzare la lettera corrispondente dalla prima password. Se una consonante usa la lettera corrispondente dalla seconda password.

es. supponiamo che le tue password siano (da apg) hicIrfyic9 e FritwoivAuv0. Per il sito stackexchange , le prime due lettere sono una consonante, quindi usi "Fr" dalla seconda password. La prossima è una vocale, quindi usi "c" dalla prima password. Continua e ottieni "FrctwfivA9".

Se sei veramente preoccupato che qualcuno trovi molte delle tue password e capisca il modello, potresti aggiungere un metodo per ruotare circolarmente ciascuna password o qualcosa del genere, o spostarle attraverso l'alfabeto o qualsiasi altra cosa, ma è facilmente possibile diventare troppo paranoico e confuso ....

Potresti riuscire a codificarlo sulle tue normali macchine per comodità, avendo chiesto di inserire le password sottostanti, ma essere comunque in grado di usarlo sui chioschi, più lentamente, dalla memoria. Non sono convinto che questa idea generale valga la pena, ma forse per alcune circostanze.

    
risposta data 19.12.2010 - 21:33
fonte
11

Ho una risposta a due lati per questo -

Puoi farlo e un metodo comunemente indicato include una sezione basata sul sito Web e una sezione basata sul tempo. Puoi creare una password come blahblahebay2010 e questo probabilmente sarebbe recuperabile se ci pensassi tra un paio d'anni. Fa quello che vuoi.

Tuttavia non lo consiglierei - non dovresti usare un sistema che significa che la tua password può essere risolta. Okay, potresti non essere un grande obiettivo, ma forse qualcuno vorrà rompere le tue password ... quindi se c'è un algoritmo che usi in base al sito web, riduci drasticamente la forza della password. Invece, usa qualcosa come Password Safe per memorizzare tutte le tue password (che possono essere molto lunghe, complesse, non memorizzabili ecc.) E solo ricorda l'unica password sicura per proteggerli.

    
risposta data 19.12.2010 - 20:03
fonte
10

Se vuoi solo diverse password per i vari siti, aggiungi il nome del sito ad una comune password di "base". Per esempio. ti ricordi la base "7g93hrew9" e poi le tue password saranno 7g93hrew9ebay, 7g93hrew9amazon, ...

Naturalmente non è soddisfacente. Questo esempio ha lo scopo di mostrare ciò che si desidera realmente: non si desidera che le password "diverse", si desidera le password in modo tale che la conoscenza di molti di loro non consente di indovinare la password per un altro sito. Crittograficamente, vuoi che il tuo generatore di password sia una funzione pseudocasuale che prende come input il nome del sito e genera il sito specifico password.

Ci sono alcune prove empiriche che non è fattibile costruire un PRF che un umano può (ragionevolmente) calcolare nella sua testa. In effetti, se guardi le funzioni di hash crittografiche , quelle molto veloci (MD4, MD5 ...) sono state interrotte, il meno veloce (SHA-1) è stato un po 'indebolito, e quelli forti (SHA-256) sono più lenti. Osservando il numero di operazioni elementari, puoi vedere una sorta di cut-off di circa 1000 operazioni per l'hashing di un piccolo blocco. Un taglio simile è stato osservato nel concorso SHA-3 . Sembra che ci sia una quantità minima di lavoro che deve essere eseguita per raggiungere la sicurezza, e quella quantità è almeno di alcune centinaia di operazioni, che è troppo per un cervello umano medio.

Quindi temo che non ci sia una buona risposta alla tua domanda.

    
risposta data 02.02.2013 - 21:19
fonte
8

usa un tabula recta che combina un semplice algoritmo che usa solo sapere con un token fisico che solo tu devi fare le password per tutto il tempo che vuoi.

    
risposta data 23.05.2011 - 05:11
fonte
2

Da una prospettiva "wetware", ecco un libro interessante che potresti voler leggere:

Il libro della memoria

È uno dei libri classici sull'allenamento della memoria. L'ho letto poche volte e ho trovato le tecniche per essere molto efficaci. È ovvio che se riesci ad allenare la tua memoria ad un livello sufficiente, puoi usare le password che desideri senza difficoltà. (Questo, almeno, sembra funzionare per me.)

Il libro include un capitolo sulla memorizzazione di stringhe casuali di caratteri (o almeno, la versione sul mio scaffale fa), quindi potrebbe essere molto utile.

Inoltre, personalmente trovo utile anche l' alfabeto fonetico della NATO . Per qualche ragione, trovo "Alpha" più facile da ricordare di "A" (per esempio).

Spero sia utile.

    
risposta data 22.05.2011 - 20:56
fonte
2

Perché eseguire un algoritmo per ricavare password site specific in testa o ricordare tutte le password, quando è possibile utilizzare un semplice javascript per farlo?

Questo è fuori tema se vuoi davvero calcolare cose nella tua testa, ma lo proporrò comunque:

Per le mie password uso un javascript personalizzato simile a quello disponibile qui: link

L'idea generale è che tu crei una pagina web con uno script o usi la versione mobile della pagina sopra - non il bookmarklet (vedi la discussione sotto).

Lo script accetta due parametri: una password principale e l'url di un sito Web (nel caso del bookrmarklet ottiene automaticamente l'URL).

Quindi esegue alcuni calcoli crittografici basati su quei parametri (in pratica crea e hash, ad esempio base64-md5, sulla concatenazione della password principale e l'url, e fa 10 volte o quante volte vuoi) ed emette un specifica del sito, alta entropia, password lunga che copi e incolli nel campo modulo.

Non hai nemmeno bisogno di vederlo o di ricordare mai le tue password, e non sono memorizzate in nessun posto come in una password sicura, ma sono generate in tempo. Ti ricordi la tua password principale e hai finito.

Non so nemmeno quale password io uso per ogni sito, e ne sono abbastanza soddisfatto.

    
risposta data 22.05.2011 - 21:08
fonte
1

Qui ci sono alcune buone risposte, ma come regola generale, se riesci a pensare ad un algoritmo per farlo nella tua testa, è probabile che l'algoritmo faccia già parte degli strumenti di exploit esistenti. : -)

    
risposta data 23.08.2016 - 04:51
fonte
0

Non consiglio di fare qualcosa del genere ma per i calci e le risatine qui c'è un metodo.

Password = Concatenate ((C - length (y) - length (x)), PascalCase (x), repeat (".", (length (y)% 2) +1))

Dove:

C = numero costante > 3 cifre
y = il testo significativo dell'URL per il sito
x = parola che si associa al sito

Esempio:

C = 1234
y = security.stackexchange
x = oscurità

Password = Concatena ((1234 - 22 - 9), "Obscurity", ".")

Password = 1203Obscurity.

La debolezza evidente è che devi ricordare una parola che vorresti associare al sito. E prima che qualcuno ci commentasse nel mio esempio, non sto dicendo che security.se sia oscuro. Sottolineo che Obscurity! = Security. E no, non lo uso per le mie password.

    
risposta data 19.12.2010 - 21:00
fonte
0

Potresti usare una password debole crittografata usando l'URL del sito come PSK. È possibile duplicare facilmente la crittografia, ma gli eventuali aggressori avrebbero difficoltà a ottenere la password, perché dovevano prima craccarlo, tuttavia l'account di accesso crittografa la password e quindi implementa la PSK della crittografia che otterrebbero una volta decifrati. Ci vorrebbe un tempo incredibilmente lungo.

    
risposta data 27.02.2014 - 22:42
fonte
0

questo può essere un po 'difficile da fare nella tua mente se non sei abituato a binare i valori dei grafici ma può essere risolto per quell'intento il nome del sito convertito in binario somma quindi ciascun esempio "1" Sito: facebook Contenitore: 01100110 01100001 01100011 01100101 01100010 01101111 01101111 01101011 somma: 43442665 il trucco è ciò che viene dopo, come scambiare coppie con la voce e così via, fac4b66k, o se conosci bene l'esadecimale, converti ogni lettera in esadecimale (66 61 63 65 62 6f 6f 6b) e usalo con un po 'di sale non hai bisogno di convertire tutto, solo una parte da usare come swap o base da qualche passaggio

    
risposta data 15.08.2016 - 09:37
fonte
0

Nel 2014 Manuel Blum ha presentato un algoritmo che può essere calcolato nella mente e che è adatto per generare password. link ( crittografia mentale e buone password )

Descrizione: il tuo segreto è una mappatura da lettere a cifre e una mappatura da cifre a cifre. È importante che siano abbastanza "casuali". È necessario uno sforzo iniziale per apprendere queste mappature a memoria, ma in tal caso, la generazione di una password coinvolge solo l'aritmetica modulo 10.

Estratto:

Call your mapping of letters to digits f. You might have, for example, f(a) = 8, f(b) = 3, f(c) = 7, etc. Since there are more letters than digits, some letters will be mapped to the same digit.

Let g be the function that sends each digit to the next one in your permutation. So if your permutation was 0298736514 then g(0) = 2, g(2) = 9, g(9) = 8, etc.

Now here is how you use the method to generate passwords.

  1. Convert the name of your account to a sequence of n letters.

  2. Turn this sequence of letters into a sequence of digits using your map f. Call this sequence of digits a0a1a2…an.

  3. Compute b1, the first digit of your password, by adding a1 and an, taking the last digit, and applying the permutation g. In symbols, b1 = g( (a1 + an) mod 10 ).

  4. Compute the subsequent digits by bj = g( (bj-1 + aj) mod 10 ).

Vedi il commento di Gnurf nella pagina collegata per alcuni svantaggi con questo metodo e molti altri metodi.

    
risposta data 23.08.2016 - 03:55
fonte

Leggi altre domande sui tag