php md5转明文,【转载】PHP明文加密

转载地址忘记了,刚开始学PHP时,做的笔记

function encrypt($string,$operation,$key=''){

$key=md5($key);

$key_length=strlen($key);

$string=$operation=='D'?base64_decode($string):substr(md5($string.$key),0,8).$string;

$string_length=strlen($string);

$rndkey=$box=array();

$result='';

for($i=0;$i<=255;$i++){

$rndkey[$i]=ord($key[$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;

}

for($a=$j=$i=0;$i

$a=($a+1)%256;

$j=($j+$box[$a])%256;

$tmp=$box[$a];

$box[$a]=$box[$j];

$box[$j]=$tmp;

$result.=chr(ord($string[$i])^($box[($box[$a]+$box[$j])%256]));

}

if($operation=='D'){

if(substr($result,0,8)==substr(md5(substr($result,8).$key),0,8)){

return substr($result,8);

}else{

return '';

}

}else{

return str_replace('=','',base64_encode($result));

}

}

$str = '123456';

echo '加密前:'.$str.'';

$key = '999999999';

$token = encrypt($str, 'E', $key);

echo '加密后:'.encrypt($str, 'E', $key).'';

echo '解密后:'.encrypt($token, 'D', $key).'';

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值