Я бы предложил такую схему:
1. Клиент и сервер формируют общий ключ.
2. Клиент шифрует и отсылает пароль и логин на сервер.
3. Сервер проверяет наличие данного пользователя.
4. В случае совпадения логина и пароля клиенту дается сессионная метка.
5. При отправке сообщения отправляется и метка, если она «жива», то сообщение находит адресата.
6. Время от времени обновляется «метка».