php 简单的解密和加密

<?php
session_start();
//假设用户登录成功获得了以下用户数据
$userinfo = array(
    'uid'  => 10000,
    'name' => 'spark',
    'email' => 'spark@imooc.com',
    'sex'  => 'man',
    'age'  => '18'
);
header("content-type:text/html; charset=utf-8");

/* 将用户信息保存到session中 */
$_SESSION['uid'] = $userinfo['uid'];
$_SESSION['name'] = $userinfo['name'];
$_SESSION['userinfo'] = $userinfo;
echo "welcome ".$_SESSION['name'] . '<br>';

//* 将用户数据保存到cookie中的一个简单方法 */
$secureKey = 'imooc'; //加密密钥
$str = serialize($userinfo); //将用户信息序列化
echo "用户信息加密前:".$str;
$str = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $secureKey, $str, MCRYPT_MODE_ECB));
echo "用户信息加密后:".$str;
//将加密后的用户数据存储到cookie中
setcookie('userinfo', $str);

//当需要使用时进行解密
$str = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $secureKey, base64_decode($str), MCRYPT_MODE_ECB);
$uinfo = unserialize($str);
echo "解密后的用户信息:<br>";

var_dump($uinfo);




welcome spark
用户信息加密前:a:5:{s:3:"uid";i:10000;s:4:"name";s:5:"spark";s:5:"email";s:15:"spark@imooc.com";s:3:"sex";s:3:"man";s:3:"age";s:2:"18";}用户信息加密后:N6fsF+gD21rkTnAmIJeI/Imbzlze9Sz2tFD/3fxoUTMNFJSq4fg+jjHaGTrpkZTWWBPHHt4IJ2V7rJCfnA3wiicjRgffYVPqNcMq26o+NJ5rdiOwYkuWzdVNm+9FQTyimlQDl6zsKNhj1nRKkTnF2Cr7NcMyXejh6+ZtG0Y0Yek=
Warning: Cannot modify header information - headers already sent by (output started at /573/7sqw/index.php:17) in /573/7sqw/index.php on line 26
解密后的用户信息:
array(5) {
["uid"]=>
int(10000)
["name"]=>
string(5) "spark"
["email"]=>
string(15) "spark@imooc.com"
["sex"]=>
string(3) "man"
["age"]=>
string(2) "18"
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值