You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
<?php
|
|
|
|
|
defined('BASE_PATH') OR exit('No direct script access allowed');
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 加密函数
|
|
|
|
|
* @param string $str 加密前的字符串
|
|
|
|
|
* @param string $key 密钥
|
|
|
|
|
* @return string 加密后的字符串
|
|
|
|
|
*/
|
|
|
|
|
function encrypt($str, $key = AUTH_KEY)
|
|
|
|
|
{
|
|
|
|
|
$coded = '';
|
|
|
|
|
$keylength = strlen($key);
|
|
|
|
|
|
|
|
|
|
for ($i = 0, $count = strlen($str); $i < $count; $i += $keylength) {
|
|
|
|
|
$coded .= substr($str, $i, $keylength) ^ $key;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return str_replace('=', '', base64_encode($coded));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 解密函数
|
|
|
|
|
* @param string $str 加密后的字符串
|
|
|
|
|
* @param string $key 密钥
|
|
|
|
|
* @return string 加密前的字符串
|
|
|
|
|
*/
|
|
|
|
|
function decrypt($str, $key = AUTH_KEY)
|
|
|
|
|
{
|
|
|
|
|
$coded = '';
|
|
|
|
|
$keylength = strlen($key);
|
|
|
|
|
$str = base64_decode($str);
|
|
|
|
|
|
|
|
|
|
for ($i = 0, $count = strlen($str); $i < $count; $i += $keylength) {
|
|
|
|
|
$coded .= substr($str, $i, $keylength) ^ $key;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $coded;
|
|
|
|
|
}
|