对称加密
对称加密呢 有一个公共的密钥
我们这次使用 base64_encode 和 base64_decode 进行操作
一个 加密 一个 解密 这两个函数的使用方法如下:
function jia($info=“加密的串”,$token="加密的密钥 token")
{
return base64_encode($info."=".$token);
}
function jie($info=“解密的串”,$token="解密的密钥 token")
{
return base64_decode($info."=".$token);
}
以上是简单的对称解密的方法
给大家写一个有简单的算法逻辑的 对称加密
function encode($string = '', $skey = 'xiaoritian') {
$strArr = str_split(base64_encode($string));
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value)
{
if($key < $strCount && $strArr[$key])
{
$strArr[$key] .= $value;
}
}
$key < $strCount && $strArr[$key].=$value;
return str_replace(array('=', '+', '/'), array('O0O0O', 'o000o', 'oo00o'), join('', $strArr));
}
function decode($string = '', $skey = 'xiaoritian') {
$strArr = str_split(str_replace(array('O0O0O', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2);
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value)
$key <= $strCount && isset($strArr[$key]) && $strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0];
return base64_decode(join('', $strArr));
}
以上的代码有不懂的地方 下面有解释
加密 encode
先加密下 要加密的串 , 加密完成 ,循环 加密的串,把密钥和加密串 放在一起 就是 $k[0]加上$token[0] 放在一起 在拼装在一起,返回
解密 这个就是 加密的规则,反过来操作一边 还原 加密的串
为了我们使用方便 和 便于 操作 谢谢