pasando por alto muchos detalles aquí, pero:
http básica: enviar nombre de usuario & contraseña en el claro en la cabecera Autorizar
HTTP Digest: enviar nombre de usuario & contraseña, donde la contraseña ha sido desmenuzada por un servidor proporcionado nonce
Ambas versiones de oauth originalmente diseñadas para otorgar a terceros acceso a recursos que no son de su propiedad (por ejemplo, permití que la aplicación de fotos para móviles publique en Facebook en mi nombre) sin tener que proporcionar mis credenciales al tercero. Ambos de estos protocolos funcionan básicamente de la siguiente manera:
- Desde la aplicación de fotografía móvil, el usuario se dirige a la página de acceso de facebook
- Una vez que han iniciado la sesión, se les redirige de nuevo a la aplicación de fotos móvil con un código.
- La aplicación de fotos móvil luego canjea este código por un token de acceso
- La aplicación de fotos para dispositivos móviles puede realizar solicitudes a Facebook para publicar mis fotos en mi muro.
oauth1.0a: más seguro que el juramento2, pero más difícil de implementar también requiere que todas las solicitudes se firmen.
oauth2: depende de ssl para la seguridad y no requiere la firma de solicitud. Si bien su autor principal abandonó el proyecto porque cree que no cumple con ninguno de sus objetivos de diseño originales (seguridad, interoperabilidad), es ampliamente utilizado por Facebook y Google.
Aquí están algunos artículos que he encontrado útil aquí:
insuficiente de mojo que liga a los RFC, pero esas son las fuentes definitivas, si es poco digerible
Sitio genial tratando de arrojar luz: http://oauthbible.com/ – SudoPlz