java qq验证_java 实现QQ自动登录(带验证码)

这段时间研究了一下QQ自动登录的流程,并把自动登录应用到了实际项目中,要实现QQ自动登录主要要做到几点:

1、通过firefox的firebug工具分析QQ登录的请求参数;

2、QQ密码的加密;

3、QQ验证码的加密;

4、模拟http请求发包,收发包的cookies的保存和获取;

5、QQ账号登录策略分析;

基于上面几点我用java实现自动登录,具体过程如下:

步骤一:检查登录账号是否需要验证码

请求的地址为:https://ssl.ptlogin2.qq.com/check

返回的结果为:ptui_checkVC('0','!GZE','\x00\x00\x00\x00\x2d\x14\x3e\x48','70343a5e34cf','0');

其中ptui_checkVC的第一个参数为 0 表示不需要验证码,1 表示需要验证码

第二个参数为不需要验证码的时候该值为验证码

第三个参数为密码加密的盐

步骤二:下载验证码

https://ssl.captcha.qq.com/getimgbysig

步骤三:校验验证码

https://ssl.captcha.qq.com/cap_union_verify_new

校验验证码相对复杂,需要获取用户输入、鼠标点击然后再将输入的验证码一起加密并发送到服务器进行校验

步骤四:登录

https://ssl.ptlogin2.qq.com/login

将用户的密码进行RSA和TEA加密之后发送到login进行登录,如果密码登录则返回

ptuiCB('0','0','http://ptlogin4.game.qq.com/check_sig?pttype=1&uin=123456789&service=login&nodirect=0&ptsigx=d0b3938a48441435dd270040beabe1c80d22e6d6fec29871b8f5648a937f553298934e5de93c6a901b351b1d17c6729d52e716b689f2ffd9b&s_url=http%3A%2F%2Flol.qq.com%2Fmain.shtml&f_url=&ptlang=2052&ptredirect=101&aid=21000501&daid=8&j_later=0&low_login_hour=0&regmaster=0&pt_login_type=1&pt_aid=0&pt_aaid=0&pt_light=0&pt_3rd_aid=0','1','登录成功!', 'test');

实现了上面四个步骤就可以完成QQ账号的网页自动登录,总的来说还是比较容易实现,就是要花时间去分析。

如果需要深入研究或者需要代码支持请联系QQ:756301384

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值