Login… ¿de dos pasos o dos factores? (2FA vs 2SV)
En esta oportunidad hablaremos sobre autenticación o login de dos factores (2FA) y verificación de dos pasos (2SV), y cuales son sus diferencias, puesto que es muy común confundirlos.
Debido a consultas que he recibido recientemente, y a algunas investigaciones que he realizado en la Universidad, me he decidido a escribir un artículo sobre las diferencias entre 2FA (Two Factor Authentication – Autenticación de dos factores) vs 2SV (Two step verification – verificación de dos pasos), ya que, al parecer, reina bastante la confusión al respecto.
Ambos mecanismos permiten introducir un elemento nuevo dentro de un sistema de login clásico, con la intención de reforzar y mejorar la seguridad en el acceso. Ambos esquemas son, en fin, buenos para asegurar los sistemas de autenticación y acceso.
Login: Notas preliminares
Y la pregunta es: ¿por qué resulta conveniente utilizar estos nuevos mecanismos de autenticación?
La respuesta simple es: porque la seguridad del usuario no debería depender únicamente de una contraseña, a lo que hay que agregar que la mayoría de los usuarios no eligen buenas contraseñas para sus servicios, y si las eligen, son muy difíciles de memorizar.
Afortunadamente existen los gestores de contraseñas que pueden solucionarle la vida al usuario. Les recomiendo leer:
- Contraseña segura: Cómo? Día mundial de la contraseña
- Keepass: Un gestor de contraseñas seguro y confiable
- Keepass2Android: sincronizando contraseñas con Android
No todos los usuario utilizan este tipo de herramientas, por lo que las organizaciones han recurrido a nuevos mecanismos de autenticación que refuerzan la manera en que la interfaz de login puede identificar realmente al usuario, y se reduzcan los huecos de seguridad que permitan falsear una identidad.
Antes de seguir deberíamos especificar algunas categorías de elementos incorporados, o credenciales, a un mecanismo de autenticación. Estas, a simple vista, podrían ser:
- Algo que tengo: es algún elemento de autenticación que poseemos, como una llave física USB.
- Algo que soy: es algún mecanismo que tiene que ver con nuestra persona, como pueden ser las huellas dactilares o la retina (mecanismos biométricos).
- Algo que se: es algún fragmento de información que poseemos, como una contraseña.
2SV – Verificación de dos pasos
Es la forma más simple de plantear una solución más segura a la autenticación por contraseña simple.
Aquí, un ejemplo clásico es aquel en el que el sistema de autenticación nos envía, luego de haber introducido usuario y contraseña, un código adicional, ya sea por correo electrónico, SMS, o llamada telefónica, y nos pide que lo ingresemos dentro de un determinado lapso de tiempo para poder completar el login (luego de ese tiempo, el código enviado expira).
El código no es diferente de una contraseña, de hecho, lo es, única y de un solo uso, pero contraseña al fin, por lo que, al tratarse de «algo que sabemos«, y no «algo que tenemos«, no puede ser considerado una autenticación de factor doble, sino una autenticación de factor simple en dos pasos.
Aquí no debemos confundirnos, puesto que recibir un código o passcode en nuestro teléfono podría interpretarse como «algo que tenemos» (nuestro teléfono), realmente es solo una contraseña almacenada en un dispositivo externo, lo que tenemos es el teléfono, no la contraseña.
2FA – Autenticación de dos factores
La autenticación de dos factores se refiere específica y exclusivamente a mecanismos de autenticación en los que los elementos que intervienen pertenecen a dos de las categorías nombradas arriba, no a solo una, como ocurre en 2SV.
Por ejemplo, el sistema podría solicitarnos una contraseña y una lectura de huella dactilar, o de retina, o la introducción en una puerto USB de una llave física de autenticación, o incluso la introducción de una contraseña generada por un token de seguridad (denominada OTP – one time password), ya que solo podemos tenerla si disponemos del token asignado a la cuenta.
Así, por ejemplo, si un sistema de autenticación requiere dos contraseñas, o dos claves físicas, o dos mecanismos biométricos, NO es autenticación de dos factores, sino, verificación de dos pasos.
Además, luego de que un servicio ha sido vulnerado, como Gmail o Dropbox en su momento, el cambio de contraseñas por parte de los usuarios suele requerir tiempo, y no ser un proceso obligatorio automático.
Entonces, así como en una autenticación de 2SV un atacante podría interceptar el código y utilizarlo para autenticar, en 2FA es mucho más difícil, puesto que el atacante debe poseer algo físico que solo es de propiedad del usuario real, o, en su defecto, debe poseer algo que es parte del usuario real, como una huella dactilar o su marca de retina (se me ocurren algunas películas al respecto xD).
Conclusión
Como se podrá apreciar de lo expuesto, la autenticación de un solo paso y factor es segura en tanto que utilicemos gestores de contraseñas y contraseñas fuertes.
No obstante, por más fuerte que sea la contraseña, siempre es mas vulnerable que la autenticación de dos pasos (o múltiples pasos), o de dos factores.
Luego, entre 2SV y 2FA, siempre 2FA es mas seguro que 2SV siempre y cuando esté bien implementado, pero resulta más costoso en términos monetarios y de tecnología, que una autenticación de múltiples pasos, por lo que la mayoría de los servicios en Internet que proveen mejoras en sus sistemas de login, implementan autenticación de dos pasos.
¡Espero les haya resultado instructivo!
2 comentarios
D4ny R3y · 3 enero, 2017 a las 14:55
Excelnte .. gracias! muy buen articulo .. ahora entiendo mejor el tema .. salu2 d4ny.-
Diego Cordoba - @d1cor · 3 enero, 2017 a las 15:20
Buenísimo que te haya servido para aclarar D4ny! Abz!
Los comentarios están cerrados.