[置顶] QQ网页微信、QQ二维码登录原理分析(整理)

时间:2022-02-22 20:27:59

    QQ和微信的登录过程中,使用二维码登录,这里根据网上的一些资料简单总结:

    二维码是包含二进制数据的黑白图片。当进行登录时,服务器生成一条二维码信息,发送给PC客户端。这时,手机终端(已经存在指定账号登录信息)扫描二维码,会将这条二维码信息与自身登录账户的相关信息发送至服务器,服务器就授权接收二维码的PC客户端进行登录。比如网页微信:打开https://wx.qq.com网页,就是一个二维码登录页面,通过手机终端登录的微信进行扫描,然后就能自动登录了。这里保持的是一个短连接。

    通过分析数据包发现在网页存在的情况下,客户端会不间断的向服务器发起https连接,并且传输很少的数据之后就断开连接了。
    网页客户端每500毫秒就向服务器发起ssl请求,请求当前二维码的登录信息,如果返回结果201,则说明已经获取扫描二维码终端相同的账号登陆授权,在其它一部分情况下,将在500毫秒之后继续发起请求。

    最后,QQ二维码登录将会通过udp 8000端口频繁的向服务器发送询问请求,一直到二维码被扫描正确登录或者二维码超时为止。