Dipende tutto dalla base di utenti di destinazione.
Ad esempio, in Finlandia, quasi tutti i computer governativi ufficiali † (specialmente quelli usati per accedere alle informazioni sensibili) hanno l'autenticazione a due fattori (password e una carta d'identità). In questi casi, poi vai avanti, usa qualche applet Java / soluzione ActiveX / Silverlight / Flash per fornire un'autenticazione extra usando queste periferiche.
Nella maggior parte dei casi, stai parlando di un utente domestico che utilizza la tua applicazione / servizio web. Biometrics e carte d'identità e non si può fare affidamento su ciò.
Quindi quali sono le alternative?
Insieme a SMS o e-mail alternative con una domanda di sicurezza, suggerisco di testare la conoscenza del proprio account da parte dell'utente con un ragionevole margine di errore, mantenendolo il più possibile user-friendly. Può essere un test multistadio come questo:
1- Choose the friend with whom you chat the most (applies to socialnetworking sites)
2- How many times do you think you've logged in this week? (applies to almost any web service)
3- How many times have you played FarmExpert on our website? (ask about something the user has never used)
† Possono anche essere computer utilizzati dai dipendenti della banca.