risposta-alla-domanda-sullo-sviluppo-web-bd.com

Qual è il modo migliore per richiedere singoli caratteri da una password?

Spesso i siti che dovrebbero davvero valutare la sicurezza (in particolare le banche) richiedono diversi caratteri individuali da una password.

In genere li ho visti fare così:

mockup

download bmml source - Wireframe creati con Balsamiq Mockups

Esiste un modo migliore?

14
alexmuller

La mia soluzione sarebbe quella di completare il processo di accesso in due passaggi.

  • Chiedere all'utente il nome utente, che se corretto
  • Genera il campo password chiedendo solo password nella schermata successiva.

enter image description here

2
Salman Ehsan

Saltare dentro con una risposta perché ho visto un esempio davvero bello di questo in natura. Hargreaves Lansdown è un istituto finanziario del Regno Unito, ed ecco come lo fanno:

Password input screenshot with context

L'idea di dare un contesto a un utente non mi era venuta in mente prima di vederlo. In pratica, trovo molto più veloce e più facile inserire una password quando posso vedere quanto sono lontani i caratteri richiesti da ciascuna estremità.

11
alexmuller

Se un servizio può confermare qual è l'ennesimo carattere della tua password, significa che sta memorizzando la tua password in un formato non sicuro. Nessun servizio dovrebbe mai sapere quale sia la tua password, dovrebbero solo poter dire se la tua password è autentica o meno.

Quindi non dovresti mai chiedere l'ennesimo carattere di una password e non dovresti mai essere in grado di valutare se questo è il carattere corretto o meno.

Se si desidera autenticare qualcuno, è necessario tilizzare una password completa archiviato in modo sicuro.

9
JohnGB

HSBC utilizza una combinazione di nome utente, password e chiave di sicurezza.

In questa implementazione, inserisci prima il tuo nome utente.

Successivamente, viene richiesto di inserire la password e tre caratteri casuali dalla chiave di sicurezza:

mockup

download bmml source - Wireframe creati con Balsamiq Mockups

Il vantaggio di questo approccio è che la password non deve essere archiviata in uno stato non sicuro. Inoltre, l'interfaccia non indica a una persona non autorizzata la lunghezza della chiave di sicurezza.

Includendo caselle di testo disabilitate nell'interfaccia per i caratteri non richiesti, l'utente può "sillabare" più facilmente la propria Parola e fornire la lettera corretta senza dover visualizzare internamente i singoli caratteri della chiave.

L'implementazione nella domanda ha un carico cognitivo molto più elevato perché l'utente deve visualizzare la Parola e quindi contare i luoghi per ottenere il personaggio.

9
Charles Wesley

Dovresti chiedere l'intera password, non solo perché è più sicura, ma perché intere password degli utenti in base alla memoria muscolare, in particolare password composte da caratteri arbitrari o definite da movimenti sulla tastiera. Questo rende difficile per gli utenti ricordare personaggi in posizioni specifiche.

6

Vorrei utilizzare un menu a discesa qui. L'utilizzo di un menu a discesa regolare consente comunque all'input da tastiera di selezionare rapidamente il carattere corretto, ma rende più semplice per gli utenti le tastiere touch e coloro che preferiscono utilizzare il mouse.

2
vincent.io