通过auth::en(‘加密字符’,’2023-5-7′)和auth::de(‘需要解密的字符串’)来实现加密与解密
设置的时间是过期时间,过期后解密为空
class auth{
static function en($string,$time,$key = 'www.dnwfb.com'){
$time=strtotime($time);
$ckey_length = 4;
$key = md5($key);
$keya = md5(substr($key, 0, 16));
$keyb = md5(substr($key, 16, 16));
$keyc = $ckey_length ? substr($key, 0, $ckey_length) : '';
$cryptkey = $keya . md5($keya . $keyc);
$key_length = strlen($cryptkey);
$string =$time.substr(md5($string. $keyb), 0, 16). $string;
$string_length = strlen($string);
$result = '';
$box = range(0, 255);
$rndkey = array();
for ($i = 0; $i <= 255; $i++) {
$rndkey[$i] = ord($cryptkey[$i % $key_length]);
$box[$i] = $i;
}
for ($j = $i = 0; $i < 256; $i++) {
$j = ($j + $box[$i] + $rndkey[$i]) % 256;
$tmp = $box[$i];
$box[$i] = $box[$j];
$box[$j] = $tmp;
}
此内容查看价格为1积分立即购买
本文链接:https://www.dnwfb.com/5840.html,转载请注明出处。
评论0