文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院QQQQ技巧QQ 协议2005beta2 版协议分析
精品推荐
特别推荐
·QQ临时会话:不是好友照样聊
·QQ 10条最酷的秘技
·QQ秘技10条大公开
·加任何人为好友:QQ新技巧八则
·新出QQ技巧十六招
·让指定QQ号码无法登陆的技巧
·五招教你轻松玩转QQ网络硬盘
·巧妙利用QQ截图功能截取右键菜单图像
·巧用QQ面板获取最新QQ空间代码
·免费申请QQ(腾迅专门为国外用户提供)
热点TOP10
·刷QQ永久会员
·盗QQ密码高手FalseQQ
·非常漂亮的QQ资料,保证不会让你失望
·自己动手修改QQ等级
·QQ空白头像修改器:让QQ头像消失
·新出QQ技巧十六招
·做QQ高手,你应该了解的17种QQ技术
·免费申请QQ号
·加任何人为好友:QQ新技巧八则
·免费QQ秀(非常不错啊)

QQ 协议2005beta2 版协议分析

日期:2008年5月26日 作者: 查看:[大字体 中字体 小字体]


bzero(buff_tx,sizeof(buff_tx)); bzero(buff_rx,sizeof(buff_rx)); bzero(data_raw,sizeof(data_raw)); bzero(data_encrypted,sizeof(data_encrypted));

/*检查传入的参数*/ if(!qc!id!pass!local_ip!server_ip){ return -EFAULT; }

/*是否已经登录*/ if(qc->logined){ return 0; }

/*设置模式*/ qc->login_mode = login_mode;

if( qc->login_mode!=0x0a && qc->login_mode!=0x28 ){ qc->login_mode = 0x0a;

}

/*必要设置*/ qc->id = atol(id); snprintf(qc->pass,sizeof(qc->pass),pass);

printf("login id = %d pass = \"%s\"\n",qc->id,qc->pass);

qc->local_port = local_port; snprintf(qc->local_ip,sizeof(qc->local_ip),local_ip);

qc->server_port = server_port; snprintf(qc->server_ip,sizeof(qc->server_ip),server_ip);

printf("local address %s:%d\n",qc->local_ip,qc->local_port); printf("server address %s:%d\n",qc->server_ip,qc->server_port);

/*设置加密登录数据的密钥,随即设置即可*/ /*重新设置随机种子*/ srand(time(0)); for(i=0;i<16;i++){

qc->init_key[i] = rand()&0xff; }

/*创建一个套节字用来作UDP通讯*/ qc->server = socket(PF_INET,SOCK_DGRAM,0);

if(qc->server<0){ return -EFAULT; }

/*设置套节字为非阻塞套节字*/ fcntl(qc->server,F_SETFL,O_NONBLOCK);

sin.sin_family = AF_INET; sin.sin_addr.s_addr = inet_addr(qc->local_ip); sin.sin_port = htons(qc->local_port);

len = sizeof(sin);

/*我们需要绑定这个UDP套节字,因为我们想用固定端口通讯!*/

if(bind(qc->server,(struct sockaddr*)&sin,len)<0){ close(qc->server); qc->server = -1; return -EFAULT;

}

sin.sin_family = AF_INET; sin.sin_addr.s_addr = inet_addr(qc->server_ip); sin.sin_port = htons(qc->server_port);

len = sizeof(sin);

/*采用connect 后我们就可以调用read/write 系统调用了*/

/*连接到腾训服务器*/

if(connect(qc->server,(struct sockaddr*)&sin,len)<0){ close(qc->server); qc->server = -1; return -EFAULT;

}

/*请求登录令牌,重试8次*/

for(i=0;i<8;i++){ login_token_len = qq_request_login_token(qc,login_token); if(login_token_len>0){

/*如果成功就退出*/ break; } }

/*看看是否请求到了登录令牌*/

if(i==8){ close(qc->server); qc->server = -1; return -EFAULT;

}

/*两轮MD5-16 加密密码,保存在qc->pass_encrypted 中*/ md5_starts(&ctx); md5_update(&ctx,pass,strlen(pass)); md5_finish(&ctx,tmp);

md5_starts(&ctx); md5_update(&ctx,tmp,16); md5_finish(&ctx,qc->pass_encrypted);


上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页 




上一篇:命令行下可以解读TCP数据报内容的Sniffer

下一篇:QQ协议分析之TCPF包结构

相关文章:
·一次入侵过程的公开分析
·巴塞尔新资本协议概述
·万能五笔2001注册码分析及暴力破解 上
·性能分析工具的使用
·卡巴斯基2009 Beta版 初步试用感受
·网吧技术分析:不掉线的路由器
·SQL Server企业管理器和查询分析器简介
·删除Vista无用协议 提升上网速度
·QQ2007 Beta4正式发布 揭秘四大新功能
·电脑死机的故障分析
相关软件:
·TCP-IP详解卷1:协议
·3D 动画与建模:人体的综合与分析技术
·网桥 路由器 交换机和互连协议教材
·建设部监理师-案例分析录音06
·频谱分析仪V1.10
·体验Windows Vista beta 1
·知行播客II 2.1 Beta1┊享受免费的原创知行英语音频节目┊简体中文绿色免费版
·某建设监理工程师案例分析讲座10
·建设部监理师-案例分析录音16
·利鹰彩票分析与决策系统 V1.12d

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot