PHP的迅雷地址加解密

迅雷下载方式越来越流行,原因不作研究,本文只研究迅雷下载地址格式,它的格式见下面:

thunder://QUFodHRwOi8vYmxvZy44MTA4MjIuY29tWlo=

先是以 thunder://开头,接着是一串没有规律的不定长字符串,很多朋友对此不解。

经本人研究,其实这是应用了base64编码方法,只要用base64进行编码和解码,迅雷的真实下载地址就会大白于天下。

PHP先天内置有base64函数库,我们可以用PHP进行迅雷下载地址的加密和解密。用上面的下载地址做例子:

把前缀thunder://去掉后直接base64解码,echo base64_decode(“QUFodHRwOi8vaGkuYmFpZHUuY29tL2hhY2tsenRaWg==”),输出结果为:AAhttp://hi.baidu.com/hacklztZZ,再把结果首尾的AA和ZZ去掉,得出的就是真实的下载地址了。

以上是解码方法,很容易就推出编码方法,以下载地址http://hi.baidu.com/hacklzt为例,把AA和ZZ分别加到首尾,再对得到的结果base64_encode,把结果附上thunder://前缀就得到最后的编码结果了。

经研究,FlashGet和QQ旋风下载地址也是使用相同的方法,不同的是前缀或附加的东西不同。

Flashget的编码方法为:”flashget://” . base64_encode(“[FLASHGET]加载地址[FLASHGET]”)

QQ旋风下载的编码方法为:”qqdl://” . base64_encode(“加载地址”)

解码方法自己可以很容易推出,不作详述。