关于php加密算法,可以用于COOKIE加密等

本文介绍了一种使用PHP生成随机唯一数组的方法,并演示了如何利用该数组进行Cookie的加密与解密操作。通过具体代码示例展示了加密流程及其实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<meta http-equiv="Content-Type"content="text/html; charset=utf-8"/>
<?php 
//获得随机唯一数组,页面打印后,替换md_cookie里的$hx_arr数组
/*$hx_arr = array(
    'a'=>'s',
    'b'=>'s',
    'c'=>'s',
    'd'=>'s',
    'e'=>'s',
    'f'=>'s',
    'g'=>'s',
    'h'=>'s',
    'i'=>'s',
    'j'=>'s',
    'k'=>'s',
    'l'=>'s',
    'm'=>'s',
    'n'=>'s',
    'o'=>'s',
    'p'=>'s',
    'q'=>'s',
    'r'=>'s',
    's'=>'s',
    't'=>'s',
    'u'=>'s',
    'v'=>'s',
    'w'=>'s',
    'x'=>'s',
    'y'=>'s',
    'z'=>'s',
    'A'=>'s',
    'B'=>'s',
    'C'=>'s',
    'D'=>'s',
    'E'=>'s',
    'F'=>'s',
    'G'=>'s',
    'H'=>'s',
    'I'=>'s',
    'J'=>'s',
    'K'=>'s',
    'L'=>'s',
    'M'=>'s',
    'N'=>'s',
    'O'=>'s',
    'P'=>'s',
    'Q'=>'s',
    'R'=>'s',
    'S'=>'s',
    'T'=>'s',
    'U'=>'s',
    'V'=>'s',
    'W'=>'s',
    'X'=>'s',
    'Y'=>'s',
    'Z'=>'s',
    '0'=>'s',
    '1'=>'s',
    '2'=>'s',
    '3'=>'s',
    '4'=>'s',
    '5'=>'s',
    '6'=>'s',
    '7'=>'s',
    '8'=>'s',
    '9'=>'s'
); 
$t = array_keys($hx_arr);
$tt = $t; 
foreach($tt as $k=>$v){
    $r = array_rand($t);
    $hx_arr[$v] = $t[$r];
    unset($t[$r]);
} 
echo'<pre>'; 
print_r($hx_arr);
echo'<pre>'; 
*/
  
functionmd_cookie($temp_cookie,$md=0){
    $hx_arr=array(
    'a'=>'C',
    'b'=>'A',
    'c'=>'6',
    'd'=>'B',
    'e'=>'9',
    'f'=>'W',
    'g'=>'f',
    'h'=>'5',
    'i'=>'I',
    'j'=>'T',
    'k'=>'F',
    'l'=>'z',
    'm'=>'E',
    'n'=>'m',
    'o'=>'g',
    'p'=>'s',
    'q'=>'i',
    'r'=>'L',
    's'=>'2',
    't'=>'w',
    'u'=>'q',
    'v'=>'U',
    'w'=>'a',
    'x'=>'R',
    'y'=>'d',
    'z'=>'M',
    'A'=>'J',
    'B'=>'O',
    'C'=>'y',
    'D'=>'4',
    'E'=>'e',
    'F'=>'D',
    'G'=>'H',
    'H'=>'n',
    'I'=>'K',
    'J'=>'p',
    'K'=>'0',
    'L'=>'V',
    'M'=>'8',
    'N'=>'S',
    'O'=>'u',
    'P'=>'j',
    'Q'=>'k',
    'R'=>'o',
    'S'=>'h',
    'T'=>'l',
    'U'=>'7',
    'V'=>'1',
    'W'=>'N',
    'X'=>'3',
    'Y'=>'Q',
    'Z'=>'c',
    '0'=>'t',
    '1'=>'v',
    '2'=>'P',
    '3'=>'r',
    '4'=>'Y',
    '5'=>'X',
    '6'=>'G',
    '7'=>'b',
    '8'=>'x',
    '9'=>'Z',
    '='=>'@'
    );
    $t_arr_v='';
    if($md== 0){
        $t_cookie=base64_encode($temp_cookie);
        $t_cookie_len=strlen($t_cookie);
        for($i=0;$i<$t_cookie_len;$i++){
            $t_arr_k=substr($t_cookie,$i,1);
            $t_arr_v.=$hx_arr[$t_arr_k];
        }
    }elseif($md== 1){ 
        $t_cookie_len=strlen($temp_cookie);
        for($i=0;$i<$t_cookie_len;$i++){
            $t_arr_k=substr($temp_cookie,$i,1);
            $t_arr_v.=array_search($t_arr_k,$hx_arr);
        }
        $t_arr_v=base64_decode($t_arr_v);
    }else{
        exit('error md cookie');
    }
    return$t_arr_v;
} 
//测试部分 
$a = 'aaadd安世高dss稍等s123';
echo$a.'<br>';
$b = md_cookie($a);
echo$b.'<br>';
$c = md_cookie($b,1);
echo$c.'<br>';
?>


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值