| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 8721 人关注过本帖
标题:【求助】c语言写个qq自动登录器
只看楼主 加入收藏
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
收藏
得分:0 
把密码告诉我,我教你该怎么填写。

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-08-14 21:08
网络寄生虫
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-8-10
收藏
得分:0 
[bo][un]VxWorks[/un] 在 2008-8-14 21:08 的发言:[/bo]

把密码告诉我,我教你该怎么填写。

这个真的需要密码么?loveyouforever27,密码我已经说了期待回复……

我始终没有沦落为一名优秀的大学生,这靠的是顽强的毅力……哎,骄傲无知的大学生……
2008-08-15 01:44
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
收藏
得分:0 
能不能自己写一个客户端

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-08-15 08:16
asd6791868
Rank: 1
来 自:逆流
等 级:新手上路
帖 子:362
专家分:7
注 册:2008-7-27
收藏
得分:0 
^*(#!@$(@#$!#%(&*!%#
楼上 好恐怖!

─條路 :  ┈片天  ┈個人  ─瞬間:
2008-08-15 08:33
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
收藏
得分:0 
随便想想的

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-08-15 09:18
妍清舞
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2007-11-12
收藏
得分:0 
你们好强哦
2008-08-15 12:01
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
[bo][un]网络寄生虫[/un] 在 2008-8-15 01:44 的发言:[/bo]


这个真的需要密码么?loveyouforever27,密码我已经说了期待回复……


加密后: aeCjGRYVgDokmoyiPBUr16iZkQ==

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2008-08-15 19:32
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
收藏
得分:0 
这里有在线md5计算器:http://www.
md5(loveyouforever27,32) = 69e0a3191615803a249a8ca23c152bd7
然后自己写程序将这128bit算base64得出:eqQMVAoBomgFDIaSiyTFAAADAA==

用我自己的ID+密码试过,提示密码不对,怀疑被老K骗了

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-08-15 20:26
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
你把密码告诉我

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2008-08-15 21:04
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
收藏
得分:0 
我的qq密码的md5是:cbfd2857e0ec3ebfad4173e0a89c7530

我修改了程序,loveyouforever27加密后是:aeCjGRYVgDokmoyiPBUr1w==

发现老K算的是:aeCjGRYVgDokmoyiPBUr16iZkQ==
在处理多余字节时处理方式不一样,md5是16个字节,3个一组余一个,填充0凑4字节,填充部分在编码时用=号来代替。我的理解和这个在线计算器一样:http://md5.


MD5值是否需要调整字节序呢?
去看MD5算法发现MD5值是四个32bit整数连接而成,貌似不需要调整字节序,难道我又干了蠢事?还和老K蠢到一起去了。

这是我的代码,通过#define BASE64_TEST开关base64编码测试,可以去这里测试:http://md5.

#include <stdio.h>
#include <string.h>
void base64(void *data, int length);

#define    BASE64_TEST_LENGTH        40
//#define
BASE64_TEST

int main(void)
{
        int i;
        unsigned char ch;
        unsigned char *str=NULL;
        int md5[4];
        char md5_string[9];

#ifdef  BASE64_TEST

        char test[BASE64_TEST_LENGTH];
        printf("请输入base64测试字符串:");
        scanf("%s",test);
        printf("\nbase64加密后的字符串:");
        base64(test,strlen(test));
#else
    printf("请输入32个字符的md5字符串:");

    for(i=0;i
<4;++i)
        {
                fgets(md5_string,9,stdin);
                sscanf(md5_string, "%x",&md5[i]);
                //翻转字节序
                str = (unsigned char *)(md5 + i);               
                ch = str[0];
                str[0] = str[3];
                str[3] = ch;
                ch = str[1];
                str[1] = str[2];
                str[2] = ch;
        }
        printf("\nbase64加密后的字符串:");
        base64(md5,sizeof(md5));
#endif

    return
0;
}

void base64(void *data, int length)
{
        const char Base64_Alphabet[]=
        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
        int i;
        unsigned char ch[4];
        unsigned char *str = (unsigned char*)data;
        
        for(i=0;i+2<length;i+=3)
        {
                ch[0] = str[i]>>2;
                ch[1] = (str[i]<<4 & 0x3f) | (str[i+1]>>4);
                ch[2] = (str[i+1]<<2 & 0x3f) | (str[i+2]>>6);
                ch[3] = str[i+2] & 0x3f;
               
                putchar(Base64_Alphabet[ch[0]]);
                putchar(Base64_Alphabet[ch[1]]);
                putchar(Base64_Alphabet[ch[2]]);
                putchar(Base64_Alphabet[ch[3]]);               
                        
        }

        if(length % 3 == 0)
        {
                puts("\n");
                return ;
        }

        if(length % 3 == 1)
        {
                putchar(Base64_Alphabet[str[i]>>2]);
                putchar(Base64_Alphabet[str[i]<<4 & 0x30]);
                puts("==\n");
                return ;
        }

        if(length % 3 == 2)
        {
                putchar(Base64_Alphabet[str[i]>>2]);
                putchar(Base64_Alphabet[(str[i]<<4 & 0x3f) | (str[i+1]>>4)]);
                putchar(Base64_Alphabet[(str[i+1]<<2 & 0x3f)]);
                puts("=\n");
        }
}

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-08-15 22:29
快速回复:【求助】c语言写个qq自动登录器
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031740 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved