您的位置:首页 > 其它

CI框架最新加密解密类用法测试

2017-10-07 18:12 507 查看
加密方法:

public function ecode(){//加密测试
$this->load->library('encryption');
$key=md5("meiboss");//设置32个字符的KEY值
//加密方法、模式申明
$this->encryption->initialize(
array(
'cipher' => 'aes-256',
'mode' => 'CBC',
'key' => $key
)
);
$text=array("a"=>'100',"b"=>'aaa',"c"=>'我是中国人');//待加密的数组
$text2= json_encode($text);//先把数组转化为json 格式
$ciphertext = $this->encryption->encrypt($text2) ;//加密码后
$datas=array("sts"=>$ciphertext);
$this->load->view("test",$datas);//绑定到CI框架的表单上
}


解密方法测试:

public function dcode(){//解密测试
$ciphertext=$this->input->post("ciphertext");//接收POST过来的已加密数据字符串
$this->load->library('encryption');
$key=md5("meiboss");//设置32个字符的KEY值
//加密方法、模式申明
$this->encryption->initialize(
array(
'cipher' => 'aes-256',
'mode' => 'CBC',
'key' => $key
)
);
$text= $this->encryption->decrypt($ciphertext);//解密后,得到当初加密前的json数据
$text2= json_decode($text,true);//将json数据格式转化为数组格式
//操作完毕,最终$text2的值就是array("a"=>'100',"b"=>'aaa',"c"=>'我是中国人');

}


大家看到了没有,这个方法其实很好做各种第三方接口的数据交互与认证(如java、net等系统),这里非要单独设置申明一下

'cipher' => 'aes-256' 与  'mode' => 'CBC'

就是为了能统一方法,方便更加直观方便地使用加密解密进行数据验证与交互!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: