Ya que el tema del messenger ha despertado la polemica, voy a hacer un ejercicio de analisis:
Podemos dividir el funcionamiento de MSN Messenger en dos fases: Fase de autentificacion y fase de Mensajeria instantanea
La fase de Autentificacion implica: Inicio de sesion (Log in) en el server, y Listar amigos (Recuperar un listado en caso de MSN Messenger) Esta fase es la que nos interesa para debatir sobre los problemas que tenian algunos usuarios para iniciar sesion, y se lo achacaban a RETECAL.
La fase de Mensajeria instantanea implica: Eviar/Recibir Peticiones de "inicio de sesion de mensajeria instantanea" (Podemos decir vulgarmente que esto es cuando hacemos doble click en un contacto para iniciar conversacion privada con el) --> (inicio de sesion de Mensajeria ins...)
Inicio de Sesion en el Server:
En caso de que conectaramos con el servidor 64.4.13.58 a traves del puerto 1863 (MSN Messenger utiliza este puerto para esta tarea) se estableceria conexion.
Una vez Establecida la conexion, comienza el proceso de Log in. La primera etapa en esta fase es la etapa de las versiones. En esta etapa el cliente, en este caso MSN Messenger envia un listado de las versiones que soporta al servidor. Algo como esto:
VER 0 MSNP7 MSNP6 MSNP5 MSNP4 CVRO
Y espera la respuesta del servidor. El servidor contesta algo como esto:
VER 0 MSNP7 MSNP6 MSNP5 MSNP4
Ahora el servidor y el cliente se han puesto de acuerdo en la version a traves de la cual se comunicaran.
A continuacion el cliente envia un mensaje al servidor, preguntando el nombre del "empaquetado de seguridad" que soporta. Mensaje ---->INF 1
El servidor le contesta por ejemplo ----> INF 1 MD5
Ahi esta, el empaquetado de seguridad que soporta ese servidor actualmente es MD5. Ver
MD5 Web
A continuacion el cliente le manda al servidor su ID de usuario (UserId)
Mensaje ----> USR 2 MD5 I ejemplo@hotmail.com
Aqui el servidor hace comprobacion de si en su base de datos estan todos los detalles relevantes sobre ese usuario para que la Autentificacion sea posible. Si no tiene tal informacion envia esto ----> XFR 2 NS 64.4.13.55:1863 0
Lo que nos ha dicho el servidor es que debemos conectar con el Notification Server (NS) en 64.4.13.55 puerto 1863.
Se cerrara la conexion anterior y se repetiran los pasos nombrados hasta estar conectados en 64.4.13.55:1863, ahora este servidor si tiene la informacion necesaria del usuario que intenta iniciar sesion y nos contesta algo asi
USR 5 MD5 S 989048851.1851137130
La cadena que nos ha enviado el servidor (S 989048851.1851137130) se denomina "MD5 Hash" este hash ha sido generado por el servidor y se utilizara en el proceso de autentificacion. El cliente entonces tiene que enviar la contraseña, la cual se encriptara con el algoritmo MD5, Es decir que el cliente tiene que enviar la unica equivalencia (encriptada en MD5) para el "MD5 Hash" recibido, en el ejemplo seria: 3b7926d277068ec49576a0c40598ff21
Es decir que enviamos un mensaje como este:
USR 6 MD5 S 3b7926d277068ec49576a0c40598ff21
Si la contraseña es correcta el servidor nos contestaria esto:
USR 6 OK ejemplo@hotmail.com Ejemplo
Donde Ejemplo seria el nick
En la nueva version del protocolo MSN (MSNP7) el servidor envia ademas algunos datos adicionales, como informacion general sobre el usuario y un codigo de autentificacion, algo similar a un cookie que mas adelante sera util para algunas tareas. Enviaria algo asi:
MSG Hotmai Hotmail 362
MIME-Version: 1.0
Content-Type: text/x-msmsgspro file; charset=UT
LoginTime: 1011252477
EmailEnabled: 1
MemberIdHigh: 84736
MemberIdLow: - 1434729391
lang _preference: 103
preferredEmai l: ejemplo@hotmail.com
country: ES
PostalCode:
Gender: M
Kid:0
Age: 19
sid: 517
kv: 2
MSPAuth: 2AAAAAAAADU0p4uxxxJtDJozJSlUTS0i7YpwnC9PUHRv56YKxxxCTWmg$$
Bueno ya hemos iniciado sesion en el server, pero nuestro estado aun es Offline. Esto se soluciona asi:
CHG 7 NLN
El servidor contesta diciendote que contactos estan Online u Offline, y cuales son sus estados (vuelvo enseguida, ausente...)
CHG 7 NLN
ILN 7 NLN btxxxe@hotmail.com nick
ILN 7 AWY wmpyxxx@msn.com mike
ILN 7 BSY tehpxxpxx@hotmail.com yeaxxx
MSG Hotmail Hotmail 223
MIME-Version: 1.0
Content-Type: text/x-msmsgsinitialemailnotification; charset=UTF-8
Bueno de aqui no sigo porque esto solo era para decirles a los escepticos, que antes de acusar a su ISP, hicieran un par de comprobaciones en el puerto 1863, y que si te da mensajes de error como: "ha habido un problema en el inicio de sesion... Reintentar o Cancelar" no es culpa de su ISP, si no de los servidores, porque la tarea del ISP es conectarles al servidor y enviar y recibir datos que yo sepa, y eso señores YA LO HEMOS HECHO PARA QUE NOS DE EL ERROR. Añadir que no me gusta que me llamen listillo ni desinformado, menos algunos "Bocadepez" que lo han hecho.
Tensiones aparte y tema aclarado: Salu2 ;-)