La premisa de esta pregunta es un poco defectuosa porque implica que hay una respuesta de "talla única". Este no es el caso. La autenticación debe ajustarse tanto a los requisitos de la aplicación como al usuario. Algunas aplicaciones / dispositivos necesitan más protección que otras. Del mismo modo, algunos usuarios necesitan más protección que otros.
Creo que el mejor enfoque es permitir un rango de opciones y dejar que el usuario elija la opción que prefiera. La desventaja de este enfoque es que algunas personas simplemente optarán por el método más fácil y conveniente. Sin embargo, resolver ese problema realmente consiste en aumentar la conciencia del usuario. Forzar una solución a lo largo de la línea "Sabemos lo mejor" es poco probable que obtenga mucho apoyo y frustrará a algunos usuarios que pueden evaluar su exposición al riesgo de manera adecuada y simplemente encontrar la solución impuesta o fuera de lugar con sus requisitos.
Para fines de autenticación en un dispositivo general, como un teléfono, es probable que deba cubrir los tres enfoques principales, es decir, algo que el usuario sabe (por ejemplo, contraseña), algo que tiene el usuario (por ejemplo, token, posiblemente hardware generado a partir de un dongle o Código SMS, etc.) y algo que el usuario es, por ejemplo, biométrico: huella dactilar, impresión de voz, etc. Sin embargo, la clave sería permitirle al usuario seleccionar si solo desea una contraseña / pin o una combinación. Mi hija de 15 años probablemente solo querrá un alfiler, pero eso está bien, ya que todo lo que realmente usa para su teléfono es Facebook. Por otro lado, trabajo en seguridad, tengo acceso a datos confidenciales y quiero más protección, por lo que podría usar biométrica, contraseña y token.
Para aplicaciones específicas, el enfoque debe ser similar, pero se puede simplificar. Una aplicación tiene un perfil de uso más definido. Esto significa que puede realizar una evaluación más precisa de los riesgos de seguridad. Si la aplicación tiene pocos datos confidenciales y un "beneficio" bajo para personas no autorizadas, entonces un simple pin o contraseña puede ser suficiente. A medida que aumentan los riesgos, debe aumentar el rango de los métodos de autenticación disponibles. En algunos casos, donde la sensibilidad de los datos está por encima de un cierto umbral, puede imponer un estándar mínimo.
La otra cosa a considerar es la educación del usuario y las soluciones disponibles para hacer algo de esto un poco más fácil. Por ejemplo, puede ser apropiado fomentar el uso de una aplicación de administración de contraseñas. Esto puede reducir el impacto / inconveniente de escribir contraseñas largas / complejas en una pequeña pantalla de dispositivo móvil. Es posible que tenga una aplicación de administración de contraseñas en la que inicie sesión una vez al comienzo de una sesión y, a partir de ese momento, cada vez que vaya a un sitio / aplicación que requiera una contraseña, el administrador de contraseñas completará los detalles por usted. Algunos de los mejores incluso proporcionan soporte para sistemas de 2 factores y biométricos. Obviamente, no hay una bala de plata, pero pueden solucionar algunos de los inconvenientes asociados con la autenticación con solo un pequeño aumento en el riesgo, que puede compensarse mediante el uso de contraseñas más aleatorias y más fuertes, etc.