HTTP ( Hyper Text Transfer Protocol ) especificación describe autenticación básica como un proceso que se inicia cuando el servidor Web para que un cliente Web ( por ejemplo un navegador web) conecta respuesta a una solicitud de la autenticación . El cliente Web recibe un nombre de usuario y contraseña en el navegador Web o usuario de la aplicación Web , y luego envía el nombre de usuario y contraseña para el servidor Web y el servidor Web se verifica el nombre de usuario y la contraseña para la autenticación. Autenticación básica codifica la contraseña utilizando el algoritmo de base 64 , que no es seguro . Además, sólo el cliente Web se autentica y no en el servidor Web (para que el cliente Web no tiene verificación de que se ha conectado al servidor Web correcto).
HTTP Digest autenticación
HTTP Digest autenticación utiliza el mismo nombre de usuario y el algoritmo de cambio de contraseña como la autenticación básica HTTP. Sin embargo , en este caso , cuando las respuestas del servidor web que solicita la autenticación , el servidor Web también proporciona un " nonce ", que es una cadena de caracteres generados para el propósito de cifrado de la contraseña . El cliente web se solicita un nombre de usuario y la contraseña del usuario. Cuando el usuario escribe las credenciales solicitadas , el cliente Web utiliza el " nonce " y el algoritmo hash MD5 (Message Digest 5 ) para cifrar la contraseña. El nombre de usuario y una contraseña cifrada se envían a un servidor Web para la autenticación.
HTTPS Autenticación
HTTPS (Hyper Text Transfer Protocol over SSL ) proporciona una método seguro de autenticación de Internet basado en la Web . HTTPS utiliza un certificado de clave pública digital, proporcionado por un tercero, CA ( autoridad de certificación ) para identificar y autenticar el cliente Web y el servidor Web (aunque en la mayoría de los casos, sólo el servidor se autentica con un certificado de clave pública y el cliente se autentica con un nombre de usuario y contraseña). Cuando tiene lugar la autenticación , el cliente Web envía una solicitud al servidor Web , que especifica la versión de los algoritmos de cifrado SSL y se está utilizando. El servidor Web responde con la versión de SSL que utiliza y el certificado de clave pública del servidor . El cliente Web se confirma con el tercero CA (a través de una lista almacenada en el cliente Web ) que el certificado de servidor es válido , y luego envía un acuse de recibo aceptar la utilización de la clave pública del servidor Web para el cifrado. El servidor Web reconoce la respuesta del cliente Web , y después todo el tráfico enviado o recibido es encriptada. El cliente Web puede entonces autenticarse con seguridad mediante la autenticación básica a través de la sesión cifrada . HTTPS proporciona servicios de integridad de los mensajes confidencialidad, no repudio y .
Autenticación de dos factores
autenticación de dos factores, también llamado " autenticación fuerte , " requiere dos formas de identificación en para autenticar . Por lo general las dos formas incluyen un nombre de usuario y contraseña , así como un dispositivo " token" que genera un segundo , la contraseña de una sola vez . La autenticación de dos factores es más segura porque se basa en algo que usted conoce y en algo que tiene el fin de autenticar . Así que si usted sabe el nombre de usuario y contraseña , pero no tienen una ficha para generar la segunda contraseña , no se puede autenticar con un servidor de autenticación de dos factores . Autenticación de dos factores por lo general comienza con el intercambio HTTPS descrito anteriormente. Sin embargo, cuando se solicita la autenticación de usuario, el usuario proporciona un nombre de usuario de cuenta, una contraseña y una contraseña generada por el dispositivo token.