看过一些QQHASH的文章后,自己总觉得用一些汇编程序编辑可运行文件再取QQhash值不仅麻烦,一般人也不会。
所以考虑来考虑去想用PHP写个动态的页面实现在线转换。
先写一下QQhash生成简单原理:
QQhash生成过程:
输入QQ密码,最先我们把QQ密码当作字符串,之后换为ROT13 编码,接着进行MD5加密(16位)加密后编码成 Base64编码就成功了。
【PW(String)--Byte()->MD5--Byte()->BASE64--Byte()->PWDHash(String)其中,PW 是刚输入的密码,是 String 型,将其转为 Byte 型,将得到的 Byte 进行 MD5 加密,得到的也是 Byte 型,再将它用 Base64 编码,得到的是 Byte 型,再将 Byte 转为 String 型。】
之前网络上的文章是这么写的看不明白,试验后才发现原来此处的byte型的其实就是ROT13 编码。
ROT-13 编码是一种每一个字母被另一个字母代替的方法。这个代替字母是由原来的字母向前移动 13 个字母而得到的。数字和非字母字符保持不变。
BASE64解释比较繁琐自己可以搜索一下。
现在附上自己的PHP核心代码,谁有空间的请写一个简单页面帖出来以后大家好用!
php代码如下:
=========================
$str="123456";
$str=str_rot13($str);
$str=md5($str,charlist);
$str=base64_encode($str);
echo $str;
========================
附dos的QQ登陆命令:
QQ命令行:
QQ.exe /START QQUIN:QQ号 PWDHASH:加密的密码 /STAT:40
QQUIN:QQ号
PWDHASH:加密的密码
/STAT:40 (40 是隐身登陆 41 是正常登陆直接上线)
附批处理命令:
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\Tencent\QQ /v Install') do (
set QQPathL=%%a
set QQPathR=%%b
)
set QQPath=%QQPathL:~-1%:%QQPathR%
start "" "%QQPath%qq.exe" /start QQUIN:843875648 PWDHASH:4Z1c1a8DeNoF9j+JHHRnrw== /stat:40
有兴趣的可以研究一下。
2009年1月18日 星期日
订阅:
帖子评论 (Atom)
0 评论:
发表评论