登录  /  注册

用php改写百度mp3地址的加密模式

php中文网
发布: 2016-06-13 11:03:02
原创
1434人浏览过

用php改写百度mp3地址的加密方式

百度mp3地址是加密过的,具体加密方式大家自己看吧.解码函数如下:

//copyright http://www.k686.com //author [email&#160;protected]                function decode(url){                    var len = url.length;                    var decurl = "";                    var asc_arr1 = [], asc_arr2 = [];                    var key = sertim % 26;                   key = key ? key : 1;                    function init(head, bottom, middle){                        for (var i = head; i <= bottom; i++) {                            asc_arr1[i] = i + middle;                            asc_arr2[i + middle] = i;                        }                    }                    init(0, 9, 48);                    init(10, 35, 55);//http://www.k686.com                    init(36, 61, 61);                    for (var i = 0; i < len; i++) {                        var word = url.charAt(i);        if (/[A-Za-z0-9]/.test(word)) {                            var pos = asc_arr2[url.charCodeAt(i)] - key;                            if (pos < 0)                                pos += 62;                            word = String.fromCharCode(asc_arr1[pos]);                        }                        decurl += word;                    }                    return decurl;                }
登录后复制

?

传入的字符串格式形如:

str = "o00w://333.osq.z0h0z.nv2.ju/q5/4p14phuzopN1hun/44zn977D7A9F8G-7A.twA";
var sertim = 1289225685;

?

两个变量需要带入到上面的函数,这样才能解析为一个标准的url地址.

?

下面是php改写后的:

 //copyright http://www.k686.com //author [email&#160;protected]                function decode($url,$sertim){                    $len = strlen($url);                    $decurl = "";                    $asc_arr1 = array();					$asc_arr2 = array();                    $key = $sertim % 26;                   $key = $key ? $key : 1;//第1次 http://www.k686.com                        for ($i = 0; $i <= 9; $i++) {                            $asc_arr1[$i] = $i + 48;                            $asc_arr2[$i + 48] = $i;                        }//第2次                        for ($i = 10; $i <= 35; $i++) {                            $asc_arr1[$i] = $i + 55;                            $asc_arr2[$i + 55] = $i;                        }//第3次                        for ($i = 36; $i <= 61; $i++) {                            $asc_arr1[$i] = $i + 61;                            $asc_arr2[$i + 61] = $i;                        }//end http://www.k686.com                    for ($i = 0; $i < $len; $i++) {                        $word = substr($url,$i,1);        if (preg_match("/[A-Za-z0-9]/",$word)) {                            $pos = $asc_arr2[ord(substr($url,$i,1))] - $key;                            if ($pos < 0){                                $pos += 62;							}                            $word = chr($asc_arr1[$pos]);                        }                        $decurl .= $word;                    }                    return $decurl;                }$str = 'o00w://333.osq.z0h0z.nv2.ju/q5/4p14phuzopN1hun/44zn977D7A9F8G-7A.twA';$sertim = 1289225685;echo decode($str,$sertim);
登录后复制

?

算是用php改写了js函数,功能是一模一样的.传入的两个参数都可以在百度mp3页面找得到的.

?

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号