<?php function streamCode($enstr, $token = "wasu!@#48217#$@#1") { $klen = 4; if (strstr($enstr,".mp4")) { return $enstr; } $token = md5($token); $tm = $_SERVER['REQUEST_TIME']; $key1 = md5(substr($token, 0, 16)); $key2 = md5(substr($token, 16, 32)); $key3 = substr($enstr, 0, $klen); $key4 = $key1.md5($key1.$key3); $keylen = strlen($key4); $enstr = base64_decode(substr($enstr, $klen)); $l16 = 0; $l14 = array(); $l15 = array(); $local13 = strlen($enstr); while ($l16 < 128){ $l14[$l16] = $l16; $l15[$l16] = ord(substr($key4, $l16 % $keylen, 1)) & 0xff; $l16++; } $l16 = 0; $l17 = $l16; while ($l16 < 128) { $l17 = (($l17 + $l14[$l16]) + $l15[$l16]) % 128; $l19 = $l14[$l16]; $l14[$l16] = $l14[$l17]; $l14[$l17] = $l19; $l16++; } $l16 = 0; $l20 = array(); $l17 = $l16; $l18 = $l17; while ($l16 < $local13) { $l18 = (($l18 + 1) % 128); $l17 = (($l17 + $l14[$l18]) % 128); $l19 = $l14[$l18]; $l14[$l18] = $l14[$l17]; $l14[$l17] = $l19; $l20[] = ((ord(substr($enstr, $l16, 1)) & 0xFF) ^ $l14[(($l14[$l18] + $l14[$l17]) % 128)]); $l16++; } $toStr = ""; for($i = 0; $i < count($l20); $i++){ $toStr .= chr($l20[$i]); } return strlen($toStr) > 26 ? substr($toStr, 26) : ""; } function get_WasuVODUrl($url) { $play = parse_url($url); $tm = $_SERVER['REQUEST_TIME']; $timestamp = date("YmdHi", $tm); $token = sprintf("%s%s%s", "ccVOD@)!#\$WASUPC", $timestamp, $play['path']); return sprintf("http://clientvod.wasu.cn/%s/%s%s", $timestamp, md5($token), $play['path']); } $url = ""; $link = isset($_REQUEST['url']) ? $_REQUEST['url'] : ""; $enstr = empty($_REQUEST['enstr']) ? "" : $_REQUEST['enstr']; if (strlen($enstr) > 32) { $url = streamCode($enstr); } else if (strlen($link) > 15) { $url = @get_WasuVODUrl(base64_decode($link)); } echo '{"url":"'.$url.'"}'; ?>
20
2017
09
华数视频地址加密方式算法PHP版本
作者:龙共山高 | 分类:技术分享 | 浏览:2315 | 评论:0