Domanda:
Esiste un metodo per generare password specifiche del sito che possono essere eseguite nella mia testa?
Mnementh
2010-12-19 23:14:35 UTC
view on stackexchange narkive permalink

Di recente stavo pensando alla sicurezza delle password. Il mio obiettivo è avere password per lo più casuali, che sono 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), ne ricordo solo alcune. Molti meno del numero di account web che ho. Le password più semplici spesso sono più facili da indovinare.

Ho pensato che un compromesso potrebbe essere qualche regola facile da imparare e qualche master-password segreta, per generare una password dal nome del sito. Supponi di avere una password per ebay e amazon. Questo metodo dovrebbe generare due password diverse, per "ebay" e "amazon". Ma dovrei anche essere in grado di eseguire il processo nella mia testa, senza il supporto del software o persino di carta e matita. Password comunemente usate che ricorderò direttamente. Ma quelli usati raramente, e dimenticati, potrebbero essere ricostruiti con un tale metodo. Qualcuno conosce un metodo del genere?

MODIFICA : La cosa che chiedo dovrebbe migliorare la sicurezza, creando password diverse per ogni sito / macchina / programma, ma anche mantenere tutte loro memorabili. Una password sicura è carina, ma è ancora più probabile che dimentichi le password del sito e se perdi il tuo negozio o è danneggiato hai un problema. Inoltre TUTTE le password possono essere compromesse contemporaneamente! E alla fine, la mia password locale sicura non è a portata di mano, se sono al computer di un amico.

Molto simile a questa [domanda] (http://security.stackexchange.com/questions/662/what-is-your-way-to-create-good-passwords-that-can-actually-be-remembered).
No, questo è un metodo per generare una password. Ma usare sempre la stessa password non è un'opzione, e anche una password diversa generata con uno dei metodi di riferimento è molto difficile da ricordare. Ricordi una password su un sito web, non l'hai visitata negli ultimi due anni?
La tecnica descritta da [Yann Esposito] (http://yannesposito.com/Scratch/en/blog/Password-Management/) e John funzionerebbe benissimo, se solo ci fosse [una funzione hash che si può calcolare senza un computer? ] (http://crypto.stackexchange.com/questions/765/is-there-a-simple-hash-function-that-one-can-compute-without-a-computer).
Hai tutti i tuoi dati su una cassaforte per password ** sbagliata **.1) Lo scopo di una password sicura è * non * ricordare affatto le tue password.Le password facili da ricordare sono password errate 2) Fai * sempre * backup in altri dispositivi fisici e / o qualcosa come google drive / dropbox ecc. 3) No, l'unica * * ** molto forte ** password che devi ricordare èper la password sicura e deve essere abbastanza forte da essere indistruttibile.Anche le casseforti di password utilizzano un numero così elevato di round per l'hashing che la forzatura bruta è incredibilmente lenta (ad esempio 1 password al secondo invece di miliardi ..)
4) Non conservi tutte le tue password in un'unica password al sicuro.Ad esempio ne ho due, uno per cose generiche e un altro per operazioni bancarie ecc. 5) Vai sempre in giro con un Live CD sulla tua chiave USB, quindi quando sei a casa dei tuoi amici avvii il tuo sistema operativo e accedi ai tuoi accountda lì ... molto più sicuro che accedervi tramite un sistema operativo non affidabile (possono ancora avere un keylogger hardware ...).Puoi anche tenere il gestore delle password sulla chiave e usarlo da lì senza avviare il tuo sistema operativo, ma è meno sicuro.
Undici risposte:
#1
+17
nealmcb
2010-12-20 02:33:00 UTC
view on stackexchange narkive permalink

Domanda intrigante. Ecco un nuovo, speriamo migliore, brainstorming. Avvertimento.

Genera due buone password casuali difficili da memorizzare.

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

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

Se sei davvero preoccupato che qualcuno trovi molte delle tue password e capisca il modello, potresti aggiungere un metodo per ruotare prima ciascuna delle password in modo circolare o qualcosa del genere, o spostarli attraverso l'alfabeto, o qualsiasi altra cosa, ma è facilmente possibile diventare troppo paranoici e confusi ....

Saresti in grado di codificarlo sulle tue macchine normali per comodità, facendolo tu per le password sottostanti, ma potrai comunque usarlo sui chioschi, più lentamente, dalla memoria. Non sono convinto che questa idea generale valga la pena, ma forse per alcune circostanze.

Una cosa buona di questo metodo è che sembra completamente casuale, quindi a meno che qualcuno non ti avesse come obiettivo specifico, sarebbe molto improbabile che venga violato.
(Due segreti, scambiati per vocale / consonante) A) Non molto resistente alle perdite.Quando un sito perde la password, in media circa la metà del tuo segreto viene rivelata.Dopo alcune fughe di notizie, il segreto rimanente potrebbe essere così piccolo che un utente malintenzionato potrebbe provare una forza bruta su siti non ancora trapelati.B) Ruotare il nome del sito prima, o la password dopo, aggiungerà una certa protezione, in caso di "una" perdita.Dopo una "seconda" perdita, la quantità di rotazione è nota e l'emivita del tuo segreto è la stessa di senza rotazione.
#2
+11
Rory Alsop
2010-12-20 01:03:50 UTC
view on stackexchange narkive permalink

Ho una risposta bilaterale a questa domanda:

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

Tuttavia non lo consiglierei - non dovresti usare un sistema, il che significa che la tua password può essere elaborata. Ok, potresti non essere un grande obiettivo, ma forse qualcuno vorrà infrangere le tue password ... quindi se c'è un algoritmo che usi basato sul sito web, allora riduci drasticamente la forza della password. Utilizza invece qualcosa come Password Safe per memorizzare tutte le tue password (che possono essere molto lunghe, complesse, non memorizzabili, ecc.) E ricorda solo l'unica password efficace per proteggerle.

I normali generatori di password utilizzano anche un algoritmo per generare la password. Un tale metodo di generazione non può essere reso più sicuro, attraverso l'inclusione di qualche segreto / master-password che basa la generazione? Non penso che master-password + site-specific + year sia sufficiente, ma una sorta di funzione hash sulla combinazione dei tre non funzionerebbe?
@Mnementh È più intorno al livello di complessità che puoi fare nella tua testa per ricordarlo un anno o due dopo. Non potresti usare nulla di così complesso come gli strumenti del generatore di password. Con strumenti come Password Safe esistenti, ha molto senso evitare il rischio di non essere mai in grado di ricordare la password e di perdere l'accesso negli anni a venire.
Ecco perché chiedo un metodo per riprodurre la password. Posso dimenticare la password, ma ho un metodo per recuperarla. :-)
#3
+11
Thomas Pornin
2013-02-03 02:19:01 UTC
view on stackexchange narkive permalink

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

Ovviamente questo non è soddisfacente. Questo esempio ha lo scopo di mostrare quello che vuoi realmente: non vuoi password "diverse", vuoi password in modo tale che conoscerne diverse non permetta 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 restituisce la password specifica del sito.

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

Pertanto temo che non esiste una buona risposta alla tua domanda.

#4
+9
Yaur
2011-05-23 08:11:49 UTC
view on stackexchange narkive permalink

usa una tabula recta che combina un semplice algoritmo che usa solo know con un token fisico che solo tu devi creare password per tutto il tempo che vuoi.

#5
+2
Chris Allen Lane
2011-05-22 23:56:47 UTC
view on stackexchange narkive permalink

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

The Memory Book

È uno dei libri classici sull'allenamento della memoria. L'ho letto alcune volte e trovo che le tecniche siano molto efficaci. È ovvio che se riesci ad allenare la tua memoria a un livello sufficiente, puoi utilizzare qualsiasi password 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 lo fa), quindi potrebbe essere molto utile .

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

Spero che sia utile.

#6
+2
john
2011-05-23 00:08:54 UTC
view on stackexchange narkive permalink

Perché eseguire un algoritmo per ricavare le password specifiche del sito nella tua testa, o ricordare tutte le password, quando puoi usare un semplice javascript per farlo?

Questo è fuori tema se lo vuoi davvero calcola cose nella tua testa, ma te le propongo comunque:

Per le mie password utilizzo un javascript personalizzato simile a quello disponibile qui: http://www.supergenpass.com

L'idea generale è che tu crei una pagina web con uno script o utilizzi 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 l'URL automaticamente).

Quindi esegue alcuni calcoli crittografici basati su quei parametri (fondamentalmente crea e hash, ad es. base64-md5, sulla concatinazione della password principale e dell'URL, e lo fa 10 volte o quante volte vuoi) e genera una password lunga specifica del sito, ad alta entropia, che copi e incolli Il tuo campo modulo.

Non hai nemmeno bisogno di vederlo o di ricordare le tue password, e non sono memorizzate da nessuna parte come in una cassaforte per password, invece vengono generate in tempo. Ricordi solo la tua password principale e il gioco è fatto.

Non so nemmeno quale password utilizzo per ogni sito e ne sono abbastanza soddisfatto.

Nota questa discussione su quanta sicurezza ottieni effettivamente da supergenpass: http://akibjorklund.com/2009/supergenpass-is-not-that-secure
Sono a conoscenza della pagina che hai menzionato, ma hey, non ho detto che uso supergenpass, uso la mia versione, di solito senza bookmarklet. Ma il rischio teorico è molto piccolo: si deve mirare specificamente al supergenpass per raccogliere qualsiasi cosa, inoltre noscript mitiga la maggior parte degli attacchi teorici perché il codice del bookmarklet è affidabile.
@john, Non vedo perché la tua versione sarebbe fondamentalmente migliore; sembra che sarà ancora vulnerabile agli stessi attacchi. Sembra che tu stia facendo affidamento sulla sicurezza attraverso l'oscurità. Forse non sarai attaccato, perché nessuno si prenderà cura di te, quindi forse questo va benissimo per il tuo uso personale, ma non lo consiglierei ad altri come un'ottima soluzione.
@D.W. Sì, sono d'accordo sul fatto che è sicurezza attraverso l'oscurità se usi i bookmarklet, ecco perché non li uso. Il punto della mia risposta era che puoi fare qualcosa di intelligente senza fare affidamento sul ricordare password o schemi, ma solo calcolare in tempo. Modificherò la risposta per rimuovere i riferimenti ai bookmarklet.
@D.W. Ho modificato la risposta, spero che sia meglio ora. Continuo a credere che sia un'ottima soluzione al problema di utilizzo quotidiano della password, se crei la password su una pagina separata e la copi e incolla.
Si dice che un'estensione supergenpass di Chrome risolva il problema notato da akibjorlklund. Vedo tre estensioni di Chrome per questo. Non è chiaro quale sia la migliore e quanto siano sicuri quelli che memorizzano la password principale durante la sessione. Suggerimenti?
#7
+1
sdanelson
2010-12-20 02:00:38 UTC
view on stackexchange narkive permalink

Non consiglio di fare qualcosa del genere, ma per scherzi e risatine ecco un metodo.

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

Dove:

C = costante numerica> 3 cifre
y = il significativo testo dell'URL del sito
x = parola che associ al sito

Esempio:

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

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

Password = 1203Obscurity.

L'ovvia debolezza è che devi ricordare una parola che assoceresti al sito. E prima che qualcuno ne faccia commenti nel mio esempio, non sto dicendo che security.se sia oscuro. Sto sottolineando che Obscurity! = Security. E no, non lo uso per le mie password.

#8
+1
David Andersson
2016-08-23 06:55:36 UTC
view on stackexchange narkive permalink

Nel 2014 Manuel Blum ha presentato un algoritmo che può essere calcolato nella mente e che è adatto per generare password. http://scilogs.spektrum.de/hlf/mental-cryptography-and-good-passwords ( 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 imparare a memoria queste mappature, ma in seguito la generazione di una password richiede solo operazioni aritmetiche modulo 10.

Estratto:

Chiama la tua mappatura delle lettere in cifre f. Ad esempio, potresti avere f (a) = 8, f (b) = 3, f (c) = 7, ecc. Poiché ci sono più lettere che cifre, alcune lettere verranno mappate sulla stessa cifra.

Sia g la funzione che invia ogni cifra a quella successiva nella tua permutazione. Quindi, se la tua permutazione era 0298736514, g (0) = 2, g (2) = 9, g (9) = 8, ecc.

Ora ecco come usi il metodo per generare le password.

  1. Converti il ​​nome del tuo account in una sequenza di n lettere.

  2. Trasforma questa sequenza di lettere in una sequenza di cifre utilizzando la tua mappa f. Chiama questa sequenza di cifre a0a1a2… an.

  3. Calcola b1, la prima cifra della tua password, aggiungendo a1 e an, prendendo l'ultima cifra e applicando la permutazione g. Nei simboli, b1 = g ((a1 + an) mod 10).

  4. Calcola le cifre successive con bj = g ((bj-1 + aj) mod 10).

Vedi il commento di Gnurf sulla pagina collegata per alcuni svantaggi di questo metodo e della maggior parte degli altri metodi.

#9
+1
Zaakiy Siddiqui
2016-08-23 07:51:39 UTC
view on stackexchange narkive permalink

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

#10
  0
KnightOfNi
2014-02-28 03:42:08 UTC
view on stackexchange narkive permalink

È possibile utilizzare una password debole crittografata utilizzando l'URL del sito come PSK. Potresti duplicare facilmente la crittografia, ma qualsiasi utente malintenzionato avrebbe difficoltà a ottenere la tua password, perché dovrebbe prima craccare, tuttavia l'accesso crittografa la tua password e quindi forzare il PSK della crittografia che otterrebbero una volta decrittografata. Ci vorrebbe un tempo incredibilmente lungo.

#11
  0
Thanatos The Hellfire Dawn
2016-08-15 12:37:08 UTC
view on stackexchange narkive permalink

questo può essere un po 'difficile da fare nella tua mente se non sei abituato a classificare i valori del grafico, ma può essere corretto per quel nome intento del sito convertito in binario, quindi somma ogni "1" exampleSite: facebookBin: 01100110 01100001 01100011 01100101 01100010 01101111 01101111 01101011 sum: 43442665 il trucco è ciò che viene dopo, come scambiare coppie con voci e così via, fac4b66k, o se conosci bene hex, converti semplicemente ogni lettera in hex (66 61 63 65 62 6f 6f 6b) e usala con alcuni saltynon è necessario convertire tutto, solo una parte da usare come swap o base da qualche passaggio

A) Il passaggio iniziale, il conteggio dei bit, comporterebbe che le lettere vengano mappate su una cifra compresa tra 3 e 6. Solo quattro valori diversi.E la maggior parte delle lettere, circa 2/3 di esse, verrebbe mappata su uno dei due soli valori (4 e 5).Non è rimasta molta casualità.Facilmente forzato.B) Aggiungere un sale, se in chiaro, o se alterato in modo costante, non aiuta se un sito ha fatto trapelare la tua password.Un utente malintenzionato potrebbe quindi indovinare facilmente le tue password su tutti gli altri siti.


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 2.0 con cui è distribuito.
Loading...