PHP 迅雷、快车和QQ旋风专用链接加解密
迅雷、快车和QQ旋风专用链接加解密 本程序适用于迅雷、快车和QQ旋风专用链接加解密,其他的暂未支持。更新日志2011-12-18程序第一次完成2011-12-26修改功能,严格解密迅雷和快车专用链
本程序适用于迅雷、快车和QQ旋风专用链接加解密,其他的暂未支持。更新日志2011-12-18程序第一次完成2011-12-26修改功能,严格解密迅雷和快车专 用链接
spelink.php
<?php
/**
*专用链接加解密
* 本程序适用于迅雷、快车和QQ旋风专用链接加解密,其他的暂未支持。程序较简单,有PHP基础的一看就明白。
*@author bao
*@email about008@gmail.com
*@date 2011-12-18
*@update 2011-12-26
*@version 0.2
*/
function encrypt($url = null, $type = "thunder"){
$types = array("thunder", "flashget", "qqdl");
$type = strtolower($type);
$url = trim($url);
if ($url == null) return null;
if (false == array_search($type, $types)) $type = "thunder";
switch ($type){
case "thunder":
$url = "thunder://" . base64_encode("AA".$url."ZZ");
break;
case "flashget":
$url = "flashget://" . base64_encode("[FLASHGET]".$url."[FLASHGET]") . "&bao";
break;
case "qqdl":
$url = "qqdl://" . base64_encode($url);
break;
}
return $url;
}
function decrypt($url_origin = null){
$url = trim($url_origin);
if ($url == null) return null;
$count = preg_match("/(\w+):\/\//i", $url, $matches);
if($count == 0 || $count == false){
return $url_origin;
}else{
$type = strtolower($matches[1]);
}
$count = preg_match("/:\/\/([a-zA-Z0-9+\/]+={0,2})/i", $url, $matches);
if($count == 0 || $count == false){
return $url_origin;
}else{
$url = $matches[1];
}
switch ($type){
case "thunder":
$url = base64_decode($url);
$count = preg_match("/^AA(.+)ZZ$/i", $url, $matches);
if($count == 0 || $count == false){
return $url_origin;
}else{
$url = $matches[1];
}
break;
case "flashget":
$url = base64_decode($url);
$count = preg_match("/\[FLASHGET\](.+)\[FLASHGET\]/i", $url, $matches);
if($count == 0 || $count == false){
return $url_origin;
}else{
$url = $matches[1];
}
break;
case "qqdl":
$url = base64_decode($url);
break;
default:
return $url_origin;
}
return $url;
}
?>
<html>
<head>
<title>专用链接加解密</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
body{
text-align:center;
padding-top:50px;
}
#tb{
background-color:green;
margin:10px auto;
}
#result{
text-align:left;
width:60%;
margin:10px auto;
}
</style>
</head>
<body>
<div id="link">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" >
<table id="tb">
<tr><td>链接</td><td colspan=2><textarea rows=3 name="url"></textarea></td></tr>
<tr><td ><input type="radio" name="endecode" value="decode" id="decode" checked><label for="decode">解密</label></td><td><input type="radio" name="endecode" value="encode" id="encode"><label for="encode">加密</label></td><td></td></tr>
<tr><td><input type="radio" name="type" value="thunder" checked>迅雷</td><td><input type="radio" name="type" value="flashget">快车</td><td><input type="radio" name="type" value="qqdl">QQ旋风</td></tr>
<tr><td><input type="submit" name="submit" value="确定"></td><td><input type="reset" name="reset"></td><td></td></tr>
</table>
</form>
</div>
<div id = "result">
<?php
if(isset($_POST['endecode']) && isset($_POST['type']) && isset($_POST['url'])){
$url = $_POST['url'];
$type = $_POST['type'];
$endecode = $_POST['endecode'];
if($endecode == "decode"){
$url2 = decrypt($url);
echo "<p>解密前的地址: $url </p>";
echo "<p>解密后的地址: $url2 </p>";
}elseif($endecode == "encode"){
$url2 = encrypt($url,$type);
echo "<p>加密前的地址: $url </p>";
echo "<p>加密后的地址: $url2 </p>";
}
}
?>
</div>
</body>
</html>
spelink.jpg
imgs/asCode/26061812_5CeT.jpg
精彩图集
精彩文章






