Domanda:
Il tempo di battitura può migliorare la sicurezza su una password?
Moo-Juice
2016-04-29 00:31:32 UTC
view on stackexchange narkive permalink

Quando ero giovane, e avevo appena iniziato la mia carriera nello sviluppo di software 20 anni fa, ho scritto un po 'di codice sul mio Amiga che accettava una password, ma registrava anche (entro una certa soglia), la velocità a in cui veniva digitata ogni lettera di una password.

Ciò significava che, non solo l'utente doveva digitare la password corretta, ma doveva anche temporizzare la pressione dei tasti. Per testarlo, avrei un ritmo nella mia testa e potrei sempre digitare nuovamente la password ogni volta. Tuttavia, se lo scrivevo regolarmente o lentamente, non veniva accettato.

Non sono un esperto di sicurezza (la mia programmazione si trova in aree meno difficili, per fortuna), ma improvvisamente ho pensato a quel programma Ho scritto quando ero giovane e se era una valida aggiunta alla sicurezza in questi giorni, o se non valeva nemmeno la pena pensarci.

Tap - Taptaptap - TapTap - Tap .

Potenziale preoccupazione: accessibilità.
coursera.com, un sito con corsi universitari gratuiti / a pagamento, fa esattamente questo prima di ogni esame per assicurarsi che la persona giusta stia sostenendo l'esame.Le password possono essere condivise, i tempi delle chiavi non possono _ (non facilmente, comunque) _
Buono per i musicisti e per mantenere i segreti di livello militare al sicuro, cattivo per l'uso quotidiano.
Sicuramente aumenterebbe la mia frustrazione poiché spesso digito le password con una sola mano, e anche in caso di errore di accesso vado piano e mi assicuro di non sbagliare.Anche qV519 [YW; BAZE * qvjj11 non si presta facilmente a un ritmo;) Oh e ovviamente i gestori di password.
In realtà ho implementato un sistema del genere usando l'apprendimento automatico, ma ho scoperto che è troppo inaffidabile per input brevi come le password.Tuttavia, può essere abbastanza preciso (fino al 95% di tasso di rilevamento) quando viene fornito più input (ad esempio un post di Facebook più lungo).Quindi può essere utilizzato per migliorare la sicurezza * dopo * un accesso, ad es.per verificare se qualcuno non autorizzato ha appena iniziato a utilizzare il computer.Quindi puoi chiedere di nuovo la password, solo per sicurezza.
KeePass, voi ragazzi navigate in questo sito di tanto in tanto?Spero che tu sia pronto per implementare un algoritmo di battitura per imitare la mia digitazione naturale.Una volta che KeyPass implementa questa funzione (molto probabile), come diavolo dovrei digitare "0" =) 4S-, 5nB? # M76It "1"}? # C` con qualsiasi tipo di coerenza per KeePass da imitare?
Problemi: 1) l'utente deve saperlo in anticipo 2) la velocità di battitura ** cambia ** con il tempo: se hai una password casuale le prime volte la digiterai abbastanza lentamente ma dopo un po 'diventa muscolare-memoria e può digitarla abbastanza velocemente.3) Cosa succede se mi sono rotto un dito / un braccio e per alcuni giorni / settimane non riesco a raggiungere lo stesso tempismo?4) Tutti gli utenti di KeePass (o altri strumenti di gestione delle password) avrebbero lo stesso aspetto ... probabilmente non è un problema poiché in questo caso è probabile che le password siano abbastanza forti da sole.5) Il surf sulle spalle può diventare più facile.
Cosa succede quando ho solo una mano con cui digitare o sono davvero malato / stanco?Non posso entrare?Freddo!
Funziona alla grande fino a quando non decido che voglio accedere dal mio dispositivo mobile e non sto utilizzando affatto una tastiera reale ...
@BlueRaja Quindi, se mi sono fatto male alla mano mentre giocavo a pallamano il giorno prima di un esame, verrò segnalato come un imbroglione o non in grado di accedere?Questa suona come un'idea orribile che è banale da aggirare da persone che vogliono effettivamente imbrogliare (diavolo molte tastiere offrono tale funzionalità fuori dagli schemi; non che scrivere codice che fa la stessa cosa richiederebbe più di mezz'ora).
@MathieuK.Questo è un problema con le password così com'è.Conosco alcuni utenti ciechi che usano un software di lettura dello schermo per leggere cosa c'è sullo schermo e / o cosa stanno digitando, e le password vengono lette come "asterisco asterisco asterisco asterisco ...".Riescono a digitare le password, ma richiede molto tempo se la password è complicata o se non hanno familiarità con la posizione delle chiavi.
La tastiera del PC, la tastiera del notebook e la tastiera dello smartphone creerebbero sicuramente password diverse nel mio caso.
Per non parlare del fatto che è necessario implementare questo lato client che è _impossibile_ per rendere sicuro.Se stai usando questo come password FDE, posso semplicemente sostituire il tuo boot loader (quello che ti viene presentato all'avvio se hai FDE è fondamentalmente un prompt di forza bruta comunque) e se sei su un sito web è ancora più facile.
Dato che cambio le mie password ogni tanto (tutti dovrebbero cambiare le sue password ogni tanto), la mia velocità di digitazione varia a seconda dell'età della password.Sempre più veloce, finché non mi procuro di nuovo una nuova password.Keyrate funziona per pezzi di testo medi, ma non per cose che hai memorizzato come le password.
Se usato come euristica generale, questo mi precluderebbe la mia tecnica di sicurezza della password over the shoulder più efficace: mentre la inserisco, passerò in modo casuale avanti e indietro tra i layout qwerty e Dvorak in modo che i miei tasti premuti abbiano un'elevata variabilità perloro.La cadenza delle sequenze di tasti ha un'elevata dipendenza dalle posizioni relative dei tasti perché le dita utilizzate per ogni tasto e i tendini attivati per ciascuna transizione chiave differiranno tra i layout.
L'unico modo in cui questa sarebbe una pratica accettabile sarebbe se non fosse una barriera all'ingresso ma un fattore scatenante per notificare al proprietario dell'account se il pattern di battitura non ha raggiunto la soglia dei dati di abitudine.Se è stato utilizzato per attivare il messaggio "È stato rilevato un accesso sospetto alle {14:56} di {20160503}".e-mail a me, che potrebbe essere accettabile, soprattutto se le informazioni nel sistema contenevano le mie PII oi miei dati finanziari.Se stavo effettuando l'accesso con una sola mano mentre bevevo un drink o stavo azionando un'altra macchina, sarei in grado di ignorare l'avviso ma ottenere comunque un accesso legittimo.
Potresti chiedere il * colpo segreto * come secondo fattore.
Anche i browser che salvano e compilano automaticamente i campi della password potrebbero creare problemi.
Quattordici risposte:
schroeder
2016-04-29 01:55:00 UTC
view on stackexchange narkive permalink

Il termine che stai cercando è " keystroke dynamics" o "keystroke biometrics" ed è un campo interessante e in crescita.

L'idea è che un individuo digiti determinate chiavi in ​​un certo modo che non cambia molto nel tempo. Se puoi mappare queste dinamiche, potresti, potenzialmente, eliminare completamente le password e semplicemente indurre l'utente a digitare qualsiasi cosa .

Ho sentito che durante la seconda guerra mondiale le forze alleate spiavano i tedeschi con un microfono nascosto nella sala messaggi tedesca.Agli operatori era proibito parlare, ma i decoder alleati potevano effettivamente riconoscere quale operatore stava digitando e la maggior parte dei loro messaggi dal solo suono della loro digitazione!Hanno dato a ogni operatore un soprannome perché non conoscevano la loro identità reale.
@CJDennis Sembra logico.Questi tipi di attacchi sono ancora utilizzati anche al giorno d'oggi.Ad esempio: cronometra le sequenze di tasti delle sessioni SSH (semplicemente cronometrando i momenti del traffico di rete, non i contenuti effettivi) e confrontali con i modelli di digitazione comuni della tua vittima ... o inizia ad analizzarli da zero.
@CJDennis Hanno certamente usato tecniche simili durante l'ascolto del traffico Morse crittografato ([vedi Keystroke Dynamics on Wiki] (https://en.wikipedia.org/wiki/Keystroke_dynamics#Origin_of_Keystroke_Dynamics) e [note su una stazione di ascolto] (http://www.harpenden-history.org.uk/page_id__103.aspx)).
L'unico inconveniente di questo sistema è che ho appena cambiato la mia password di lavoro.Lo sto digitando lentamente e deliberatamente ora mentre lo sto imparando.In un'altra settimana o due, avrò sviluppato una nuova memoria muscolare e sarò in grado di digitarla molto più rapidamente.La dinamica della pressione dei tasti richiederebbe che ci lavorassi per i prossimi 90 giorni fino a quando non la cambiassi di nuovo, e sarebbe molto, molto irritante, oltre a rendere più facile il surf con le spalle.
Il modo corretto per usarlo, come con qualsiasi marker biometrico * supplementare *, è registrare un livello di confidenza che l'individuo che accede al sistema è quello che rappresenta di essere.Se la fiducia scende al di sotto di una certa soglia, avvisali tramite un canale di comunicazione preselezionato (come l'e-mail) che c'è qualche preoccupazione che qualcuno non autorizzato possa aver avuto accesso alle loro informazioni di accesso (al tempo x attraverso il sistema y, quindi hanno un modo per determinare sepotrebbero essere stati loro).Sarebbe scoraggiante per la maggior parte degli usi, ma sarei OK se (diciamo) la mia banca lo facesse.
@CJDennis: Probabilmente stai pensando a storie secondo le quali i collezionisti di intercettazioni radio alleate potrebbero riconoscere lo stile di diversi operatori radio tedeschi.L'invio del codice Morse * significa * trasmettere letteralmente i tasti del tuo telegrafo tramite la radio.Lo schema individuale di un operatore è noto come la sua "mano", e questo è ciò che gli ascoltatori alleati riconoscerebbero, per aiutare a capire quale trasmissione proveniva dallo stesso punto di una precedente.(I messaggi radio non vengono forniti con le intestazioni degli indirizzi di origine).(Sfortunatamente non sono riuscito a cercare su Google nulla sulle "mani"; ricordo di averlo letto in un libro.)
@FreeMan Esistono vari modi per creare la soglia.Come OP, ho sperimentato questo anni fa e ho scoperto che, almeno per me, la lunghezza delle pause tra i caratteri scala proporzionalmente tra la digitazione lenta di una nuova password e la digitazione rapida di una vecchia password.Quindi, se questo è vero anche per te, e l'implementazione ne ha tenuto conto, non avresti quel problema.
@PeterCordes Penso che stai pensando al * pugno * di un operatore.Oltre a seguire deliberatamente i pugni degli agenti operativi nemici, le persone impareranno a conoscere il pugno di coloro con cui comunicano regolarmente (o ascoltano) proprio come farebbero con la voce di qualcuno con cui hanno spesso parlato, o la scrittura a mano di qualcuno con cui spesso corrispondonocon tramite corsivo.Allo stesso modo si può avere un pugno buono o cattivo, proprio come si può avere una dizione o una grafia buona o cattiva.
Sì, grazie.Qualcun altro mi ha già ricordato il termine corretto, ma i moderatori sembrano aver eliminato i nostri commenti invece di spostarli nella chat con un collegamento.Quindi ora ci sono solo quelli incompleti / fasulli./sospiro.
@Samthere Ho chiamato il campo e fornito come potrebbe essere utilizzato per aumentare la sicurezza della password, che è ciò che è stato chiesto.98 persone hanno pensato che la mia risposta andasse bene, incluso Moo-Juice.Ognuno ha un'opinione, però.
@CJDenis - IIRC Nel capitolo Codebreakers, One Day of Magic di Philip Kahn, viene menzionato il fatto che la flotta giapponese che navigava per l'attacco a Pearl Harbor lasciò i suoi soliti operatori radio nelle acque domestiche per fingere che la flotta fosse ancora lì.
@Izkata Dubito che sia vero se passi a una tastiera con un layout diverso (ad esempio qwerty / qwertz).Ho dovuto subire questo solo ieri e sospetto che abbia completamente rotto le solite dinamiche di battitura
Ben
2016-04-29 01:16:15 UTC
view on stackexchange narkive permalink

Penso che sarebbe molto, molto fastidioso per gli utenti legittimi della tua applicazione o del tuo sito web. Cose come un dito rotto, o semplicemente tenere un panino in una mano, renderebbero inutilizzabile il tuo login. Inoltre, dovresti incoraggiare l'uso di gestori di password, che invieranno sequenze di tasti estremamente rapidamente o non invieranno affatto sequenze di tasti. Il tuo schema probabilmente impedirebbe il funzionamento anche ai migliori gestori di password.

E più attacchi sono probabilmente automatizzati piuttosto che manuali, in quanto tale è più probabile che la voce sia simile a un gestore di password che inserisce la password ...
Tuttavia, un gestore di password potrebbe sempre generare un modello di input di battitura casuale, ma ciò non risolve il problema dei possessori di sandwich.
Inoltre c'è anche il problema dei diversi dispositivi di input.Scommetto che la maggior parte delle persone digita velocità molto diverse sul proprio laptop, telefono cellulare, tablet o Xbox.
@dirkk - lo fanno .. tutti usano un'ampia varietà di dispositivi e, sebbene questo argomento sia interessante, alla fine è imperfetto perché le persone useranno diversi dispositivi di input per le password.Un'idea abbastanza chiara, forse come secondo fattore o qualcosa del genere ..
@dirkk E poi ci sono le persone che passano a layout alternativi come Dvorak che otterranno la password corretta OPPURE i tempi corretti ma non entrambi quando si utilizza una macchina diversa con layout standard.
O anche quando si tratta di una tastiera standard ma non del tuo tempo, il tuo tempo può essere influenzato.Sono una dattilografa di 80 parole su una configurazione perfetta.Non sono così bravo con il mio laptop, anche se sono meglio se collego una tastiera esterna che è come il mio sistema principale, ma anche in questo caso il posizionamento non ideale di quella tastiera avrà un impatto sulla mia digitazione.
Un "sandwich", riiiiight.
POTREBBE essere usato per filtrare i tentativi di forza bruta.Cioèse i tasti vengono premuti in modo disumanamente veloce.Destra?
Alcuni input non umani sono tuttavia validi e NON DOVRESTE filtrarli.Vedi il mio punto sui gestori di password.
Robert Mennell
2016-04-29 02:17:29 UTC
view on stackexchange narkive permalink

Ci sono cose buone, alcune cattive e alcune VERAMENTE brutte qui.

Il buono
Aumenta l'entropia delle password e rende più difficile la forza bruta

The Bad
Si basa su qualcosa che può essere registrato e cronometrato in modo udibile e necessita di tolleranze di errore, il che significa che qualcosa deve essere abbastanza vicino da rendere discutibile

Il VERAMENTE brutto
Le persone cambiano nel tempo. Per una moltitudine di ragioni (lesioni, età, dimenticare come va il modello) potrebbero non essere più in grado di inserirlo alla stessa velocità e frequenza esatte o entro le tolleranze e quindi in realtà danneggia la capacità degli utenti di utilizzare il servizio

Quindi, sebbene sia un'idea interessante e un campo interessante, non è davvero nient'altro che difficile per gli umani mantenere l'entropia sulla password. Peggio ancora, è facile ricreare il modello con le macchine. Renderà più difficile l'hackerare senza una preventiva conoscenza della persona o del modello, ma potrebbe anche peggiorare nel tempo l'esperienza di un utente con il tuo servizio e rendere più facile la raccolta di informazioni locali sull'entropia della password.

ma questi sono tutti pro / contro simili per qualsiasi biometrico, giusto?
Vicino.Il problema è che non si tratta solo di biometriche, ma anche di metriche audio (schemi sonori).Le metriche bio sono migliori lì perché devi vederle per registrarle.Questo deve solo essere nelle vicinanze per il modello di temporizzazione.
Tuttavia, apporta un'entropia davvero interessante alla password, ma è facile da fare senza aggiungere un sistema extra in primo luogo aumentando semplicemente la lunghezza o il set di caratteri.
"Facile da intercettare / replicare" e "facile da dimenticare" sono praticamente due delle peggiori caratteristiche di una password.
Da aggiungere a VERAMENTE BRUTTO: spesso digito la mia password lentamente quando non si accede e sono sicuro di utilizzare quella corretta, il che mi fa pensare che sto premendo un tasto male.
Puoi anche lasciare un dispositivo mobile accanto alla tastiera per acquisire il motivo.https://www.ted.com/talks/avi_rubin_all_your_devices_can_be_hacked?language=en, circa 12:55.
user1717828
2016-04-29 03:28:40 UTC
view on stackexchange narkive permalink

se si trattava di un'aggiunta praticabile alla sicurezza in questi giorni

L'unico motivo per cui non credo sarebbe fattibile è che le persone accedono da così tanti dispositivi diversi in questi giorni . Posso prometterti che non c'è correlazione con il ritmo con cui digito la password sul mio desktop di lavoro principale e la tastiera Swype sul mio tablet.

Anche laptop vs desktop, o usi un layout di tastiera diverso (lavori in inglese, sistema personale in un'altra lingua o ti piace dvorak).
stare in piedi sull'autobus con il telefono vs seduto alla scrivania davanti al pc
Del resto, ho diverse combinazioni di mouse / tastiera per lo stesso dispositivo (laptop).Quando sono in viaggio, utilizzo una mini-tastiera, o anche quella stampata nel laptop, quando sono alla scrivania al lavoro, ho una tastiera / mouse diversa da quella di casa, ecc.la tempistica delle mie battiture varia notevolmente in base a ciò, oltre all'ora del giorno (caffeina / stanco) e gawd sa solo cos'altro.Le dinamiche di battitura sono solo una scelta fondamentalmente scarsa per una funzione di sicurezza.
goncalopp
2016-04-29 06:29:19 UTC
view on stackexchange narkive permalink

Sì, è più sicuro. Renderebbe una password temporizzata di 8 caratteri forte quanto una password non temporizzata lunga ~ 9,5 caratteri.

Questa sarebbe una forma di dinamica dei tasti . È stata un'area di ricerca attiva per un po ', anche se il software in esecuzione su un Amiga probabilmente precede la maggior parte!

C'è un pacchetto python per quello, nel caso tu voglia sperimentare in un linguaggio più moderno (disclaimer: l'ho scritto io) .

Alcuni servizi moderni utilizzano effettivamente questa tecnica , come Coursera, chi usa per assicurarsi che la persona che risponde a un test sia l'utente effettivo.


Esploriamo un po 'di teoria per rispondere alla tua domanda. Le opzioni usuali per l'autenticazione umana sono:

  • Qualcosa che conosci (password, codice pin)
  • Qualcosa che hai (telefono cellulare, hardware token, smart card)
  • Qualcosa che sei (impronta digitale, iride, andatura). Di solito biometria.

Le dinamiche di battitura appartengono alla terza categoria. Di solito, i buoni sistemi di autenticazione si basano sull'avere più di uno di questi. Quando si utilizzano due sistemi diversi, ciò è comunemente noto come autenticazione a due fattori.


Di solito, la biometria prevede un paio di avvertenze :

  • Possono cambiare nel tempo. Il tuo schema di digitazione cambierà con l'ora del giorno, la tua sedia e l'altezza della scrivania, la tastiera che stai utilizzando e molti altri fattori
  • Potrebbero andare irrimediabilmente persi. Se riesci a perdere un dito, non sarai mai in grado di autenticarti.

Il tuo progetto, tuttavia, non utilizza un biometrico tradizionale. Stai chiedendo all'utente di ricordare uno schema di digitazione. Ciò rientrerebbe nella prima categoria ( qualcosa che conosci ), quindi, in modo efficace, puoi misurare la quantità di sicurezza che aggiunge utilizzando l ' entropia.

Supponendo che il tuo sistema abbia due possibili durate di pressione dei tasti (che il tuo esempio sembra implicare), questo aggiunge un po 'di entropia per carattere - quindi renderebbe una password temporizzata di 8 caratteri forte come una lunghezza di ~ 9,5 caratteri non- password temporizzata.


Ovviamente, anche il design ha dei difetti, se paragonato alla dinamica dei tasti biometrici:

  • il fatto che il pattern sia molto distintivo renderà è più suscettibile a un utente malintenzionato con un registratore audio
  • Poiché il modello è noto dall'utente, può essere costretto a rivelarlo. Le dinamiche tradizionali dei tasti possono essere utilizzate come autenticazione implicita.
"questo aggiunge un po 'di entropia per carattere, quindi renderebbe una password temporizzata di 8 caratteri forte quanto una password non temporizzata lunga ~ 9,5 caratteri."Sembra sbagliato.Un bit in più per carattere dovrebbe darti 8 bit in più.Supponendo che tu abbia normalmente 1,1 bit / carattere, avresti ~ 8,8 + 8 = 16,8, equivalente a 15,2 caratteri, non 9,5.Inoltre direi che ciò che conta non è il numero di lettere, ma piuttosto il numero di intervalli tra le lettere, quindi sarebbe 7, non 8, ma questo è meno importante.
@FabioTurati Colpa mia per non aver affermato le mie ipotesi :) ** Ho assunto una password casuale con un set di caratteri di lunghezza 36 **, [che ti dà 5,17 bit per carattere] (https://en.wikipedia.org/wiki/Password_strength#Random_passwords).`(5,17 * 8 + 8) / 5,17 ~ = 9,5`.Non sono sicuro da dove prendi 1,1 bit / carattere, sembra molto basso, forse per un pin numerico non casuale?
Ah, capisco.Stavo pensando alle tipiche parole inglesi e sulla base di [questo] (http://what-if.xkcd.com/34/) ("Shannon ha determinato che il contenuto informativo del tipico inglese scritto era di circa 1,0-1,2 bit per lettera") Avevo il valore di 1,1 bit / carattere.Ma ora capisco cosa intendi.Grazie!
R.. GitHub STOP HELPING ICE
2016-04-29 02:50:58 UTC
view on stackexchange narkive permalink

Poiché questo fondamentalmente preclude l'uso di un gestore di password, che è best practice di base per la sicurezza delle password, non migliora ma danneggia la sicurezza delle password.

Dovrebbe funzionare con un gestore di password di digitazione alla velocità della luce, ma questo diventerebbe * l'unico * modo per accedere
E se lo usi per la password ** del ** gestore di password?;)
Sembra un ottimo modo per rimanere bloccato fuori da tutto.
@R .. È divertente quando ciò accade;puoi rompere la crittografia del tuo gestore di password o devi ricordare le tue password.Divertimento divertente divertimento.
@wizzwizz4: Con l'uso corretto di un gestore di password le tue password non sono ricordabili perché non le hai mai conosciute / viste all'inizio.Sono tutte lunghe stringhe casuali.
@R .. E con un gestore di password appropriato, non puoi decifrare la crittografia.Divertimento divertente divertimento.
TTT
2016-04-29 01:54:25 UTC
view on stackexchange narkive permalink

È un'idea chiara e l'effetto finale sarebbe un aumento dell'entropia delle password. Ad esempio, supponiamo che la tua soglia sia di 1/4 di secondo e la pausa massima di 1 secondo. Ad un certo punto le pause verrebbero convertite in bit, e questo aumenterebbe effettivamente il set di caratteri della password di 4 volte; per esempio. un set di 80 caratteri diventerebbe un set di 320 caratteri. Una password di 10 cifre con 80 possibili caratteri diventerebbe 1 milione di volte più difficile da applicare con la forza bruta implementando la tua idea. Un altro modo per dire che la tua password di 10 caratteri diventerebbe più simile a 13 o 14 caratteri.

In pratica, il vantaggio principale che vedo è che probabilmente è più facile per gli esseri umani ricordare il ritmo di una canzone combinato con 10 caratteri piuttosto che ricordare 14 caratteri. Ma le password migliori sono quelle che gli esseri umani non possono ricordare comunque, quindi probabilmente sarebbe molto più semplice (per tutte le parti coinvolte) aggiungere solo qualche carattere in più alla tua password per ottenere lo stesso aumento di entropia.

Probabilmente * diminuirebbe * l'entropia rendendo difficile o impossibile l'uso di un gestore di password.Un utente che deve essere in grado di ricordare una password e digitarla in modo coerente non utilizzerà una password lunga o complessa.L'incremento di entropia derivante dalla registrazione dei tempi della tastiera di una password di 10 cifre è minuscolo rispetto alla * perdita * di entropia derivante dall'incoraggiare password più brevi rispetto alle password molto lunghe e molto complesse che i gestori di password gestiscono senza problemi.
Stai fraintendendo il mio punto.Le persone * non * utilizzeranno i gestori di password in un tale contesto e tu scoraggeresti attivamente il loro utilizzo.Ciò è particolarmente vero quando dici a un utente che ha bisogno di una password lunga * x * caratteri, ma consenti che sia lunga solo * y * caratteri (dove * x * <* y *) se la digita a mano.Per non parlare dei molti problemi che altri hanno segnalato.
Non voglio entrare in un avanti e indietro perché entrambi abbiamo già fatto i nostri punti.Ma credo che tu sopravvaluti in modo significativo il valore di entropia delle informazioni temporali e la razionalità degli utenti, mentre sottovaluti la pigrizia degli utenti, la sciatteria con cui gli utenti scelgono le password e le sfide di implementare un tale sistema in un modo che non causagrossi problemi.
Dopo averci pensato di più, penso che possiamo eliminare questo thread di commenti ad eccezione del tuo primo commento (cancellerò il mio ora).La mia risposta avrebbe dovuto essere semplice: la mia risposta e la domanda originale non parlano dell'implementazione, ma solo dell'effetto matematico di questa operazione.Il mio secondo paragrafo è d'accordo con te: dovremmo usare un gestore pw e perché preoccuparti del fastidio sia per gli sviluppatori che per gli utenti se puoi aggiungere solo pochi caratteri alla password e ottenere lo stesso risultato.
Jozef Woods
2016-04-29 18:37:39 UTC
view on stackexchange narkive permalink

Ho lavorato un po 'su questo e su alcune aree correlate, e la mia risposta alla domanda dipende da quanto tempo hai a disposizione:

Risposta breve: Sì, con un ma.

In poche parole, come hai scoperto in precedenza, ci sono somiglianze nella pressione dei tasti osservata (o in altri modelli biometrici comportamentali). Questi possono, in teoria, essere usati per una maggiore sicurezza, ma i tassi di falsi positivi e falsi negativi sono ancora relativamente alti, quindi l'usabilità è discutibile e non ci sono librerie predefinite che consiglierei come affidabili.

Risposta più lunga: No, con un tuttavia.

Il problema con la biometria comportamentale nel contesto della sicurezza è che non si adatta ai nostri modelli attuali. Se ti viene fornita una password, è giusta o sbagliata. Se qualcosa misura la tua iride, è una corrispondenza o non lo è. Non c'è margine di manovra o spazio di manovra, l'uno o l'altro, l'autenticazione binaria.

I comportamentali non lo fanno. I comportamenti cambiano a seconda dell'ora del giorno, dell'ora del mese, del tempo fuori. Puoi dire "questo sembra come questa persona", ma non c'è una risposta "sì / no" immediata, il che li rende pessimi con l'autenticazione tradizionale, in particolare con campioni di dimensioni brevi come le password.

D'altra parte, ci sono molte analisi comportamentali che possono essere misurate (utilizzo della rete, sequenza di tasti, utilizzo del mouse, movimento e molte altre). Questi possono essere combinati per fornire un'indicazione di affidabilità sostenuta per un periodo prolungato. Quindi, ad esempio, potresti accedere alla tua macchina e non ti consentirebbe di accedere alla tua banca perché non ti ha ancora verificato. Fai alcune altre cose che ti servono, lavora per un po 'e gli algoritmi restituiscono un buon valore di confidenza e l'accesso viene concesso ai sistemi privilegiati.

Essenzialmente, le rotte di autenticazione binaria attualmente in atto non sono buone adatto alla biometria comportamentale, ma ci sono molte promesse per l'autenticazione basata sulla fiducia più avanti nella linea.

Chris H
2016-04-29 13:25:18 UTC
view on stackexchange narkive permalink

Un altro motivo per no: supponi che il tuo utente di tanto in tanto digiti erroneamente la password. Tu puoi digitarlo perfettamente, ma il resto di noi a volte ha le dita grasse. Probabilmente lo digiteranno più lentamente al secondo tentativo e rovineranno le tue metriche. Ciò è particolarmente vero se c'è un timeout / ritardo rilevabile (limitazione della velocità o solo un server di accesso lento) in quanto non vorrebbe aspettare un altro ritardo essendo già stato infastidito dal primo

caveman
2016-04-29 09:11:38 UTC
view on stackexchange narkive permalink

Chiamiamola immissione password a tempo .

In sostanza, quello che stai facendo è questo:

  • Stai cercando di aumentare l'entropia della password.

Questo ha alcuni svantaggi, come il fatto che le persone cambiano e potrebbe rimangiarti dopo alcuni anni.

La domanda è: questo metodo per aumentare entropia password ne vale la pena? Per rispondere correttamente, devi prima misurare l'entropia totale ottenuta richiedendo l'immissione di una password a tempo.

Direi che non otterrai molta entropia, perché la maggior parte delle persone lo farebbe generalmente usa le tastiere in modo simile. Quindi, quando sai che la maggior parte delle persone usa generalmente le tastiere in modo simile, saprai che non c'è molta entropia (o informazione) nel conoscere la digitazione a tempo.

Pertanto suggerisco che:

  • L'immissione di password a tempo non vale i rischi.
  • Se hai bisogno di più entropia, usa semplicemente password di qualità superiore (più lunghe con più lettere casuali).
"la maggior parte delle persone generalmente usa le tastiere in modo simile" Hai un riferimento per questo?Mi aspetto che le persone utilizzino le tastiere in modi notevolmente diversi.
No. È solo una mia osservazione.Quello che ho osservato è che ci sono alcune classi di metodi di utilizzo della tastiera.Immagino al massimo 5 classi ed è molto probabile che venga distribuito in un modo non uniforme.Per esempio.alcune classi hanno un'enorme base di utenti, mentre altre si radono poco.Pertanto, se si misura l'entropia ottenuta da quelle 5 classi distribuite in modo non uniforme, dovrebbe essere meno entropia rispetto alla semplice aggiunta di 2,3 bit.
Dylan Larsen
2016-05-03 07:17:01 UTC
view on stackexchange narkive permalink

È un'idea molto interessante, ma se non fosse implementata correttamente come hanno detto tutti gli altri non funzionerebbe perché le persone cambiano e la tolleranza agli errori dovrebbe essere implementata correttamente.

Il mio l'idea per un buon modo di implementare questo sarebbe vedere se l'utente inserisce la propria password in un determinato schema temporale e se non lo è e la password è corretta allora potresti usare queste informazioni per far sembrare la richiesta un po 'sospetta e fare altre cose come magari chiedere all'utente di inviare un messaggio al telefono per assicurarsi che sia davvero lui.

I pro: l'utente inserisce la password normalmente, se è fuori tempo quindi si può passare alle misure secondarie di autenticazione. Ciò darebbe fastidio all'utente solo se lo digita in modo anomalo o se è qualcuno che cerca di entrare nel suo account.

Contro: potrebbero essere falsi positivi che potrebbero infastidire il utente che sta tentando di accedere e i tempi potrebbero essere visti e / o registrati da qualcuno che guarda alle tue spalle.

Dennis Jaheruddin
2016-05-03 14:56:14 UTC
view on stackexchange narkive permalink

Sì, può funzionare, se gestito correttamente

I vantaggi sono evidenti: è più difficile per qualcun altro accedere con la tua password. Indovinare diventa più difficile, e anche se qualcuno possiede (parte della) tua password, non ha ancora finito.

Quindi, affronterò le preoccupazioni:

Sì, puoi comunque accedere con un dito rotto

Certo, la password può andare "persa" quando ti rompi il dito, ma questo può essere risolto mettendo a disposizione una password principale (più forte). Se ti capita di avere circostanze che non ti consentono di mantenere il tuo rythem, puoi sempre utilizzare la password principale per entrare (e cambiare il rythem se necessario).

Sì, puoi ancora utilizzare più dispositivi

Ovviamente diversi tipi di dispositivi avranno ritmi diversi, ma se li usi frequentemente, il ritmo per dispositivo dovrebbe essere abbastanza stabile. In quanto tale, puoi consentire agli utenti di avere più ritmi validi.

Sì, puoi ancora usare i gestori di password

Ovviamente i gestori di password potrebbero essere impostati per inviare sia i ritmi che le sequenze di tasti. Anche se questo può essere difficile, potrebbe essere molto facile usare semplicemente la suddetta password principale quando si accede con il gestore di password.

T.S
2016-04-30 16:44:57 UTC
view on stackexchange narkive permalink

Piuttosto che bloccare / consentire brutalmente l'utente, potresti fargli "apprendere" il metodo dell'utente per un periodo di 10-20 accessi e prendere la mediana con un leggero margine di tempo.

Regolare login: - Password + login a due fattori tramite link app / sms / e-mail

Dopo un po 'conoscerai il suo schema e potrai dare all'utente la possibilità di abilitare la sicurezza aggiuntiva, quindi abbassare l'importo di volte ha bisogno di accedere con il login a due fattori. (presumendo che sia stato utilizzato lo stesso IP)

Quando la sicurezza aggiunta è attiva, è possibile consentire all'utente di accedere solo con la password purché la sorgente IP sia la stessa. e quando si rileva che l'utente sta variando la sua velocità di tocco tocco di accesso molto rispetto alle registrazioni precedenti, è possibile richiedere nuovamente l'accesso a due fattori e aggiornare l'elenco. (prendi sempre la mediana su 5 tentativi di accesso, eliminando gli estremi)

Chris Johns
2016-05-03 04:39:50 UTC
view on stackexchange narkive permalink

Penso che questo avrebbe il maggior potenziale per le situazioni in cui una password viene utilizzata spesso e l'input non consente una grande varietà di caratteri. Un esempio ovvio potrebbe essere qualcosa come un codice di accesso alla porta. Questo ha anche il vantaggio che anche se qualcuno è in grado di vedere il codice da sopra la tua spalla, deve comunque ottenere il ritmo giusto. Ciò consente anche di ottenere più entropia da un dispositivo di input molto semplice.

Potresti anche immaginare una situazione in cui c'è un solo pulsante e il ritmo è l'unico input, dopo tutto questa è una versione digitale del "colpo segreto".

Se non altro questo potrebbe avere un valore di novità per applicazioni di sicurezza di basso livello e potrebbe anche avere una nicchia più seria per diciamo musicisti professionisti che dovrebbero avere un senso del tempismo molto preciso.



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