很多站长朋友们都不太清楚phpaes加密数字,今天小编就来给大家整理phpaes加密数字,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP的aes加解密算法 2、 php中aes加密和rsa加密的区别 3、 PHP AES加密 PHP的aes加解密算法1. php的aes算法,加密时会存在空格,0,\0等方式进行补长,所以解密后需要进行trim操作,才能得到原数据串
2. aes加密后进行base64_encode,但是解密时,直接用aes进行解密,不需要先base64_decode.【这个操作很骚气】
function _decryptData($data,$password, $iv){
$decryptData=openssl_decrypt($data, 'aes-128-cbc', $password, OPENSSL_ZERO_PADDING, $iv);
$data =json_decode(trim($decryptData), true);
return $data;
}
function encryptData($data, $password, $iv){
$data = json_encode($data);//$data是一个数组,如果是字符串,请忽略此句.
$result = base64_encode(openssl_encrypt($data, 'aes-128-cbc', $password, OPENSSL_RAW_DATA, $iv));
return $result;
}
php中aes加密和rsa加密的区别这个跟php没有关系,单纯的是两个密码学的算法。如果真想搞清楚区别,你需要有密码学的基础知识。
我简单说一下,这两个都是标准的密码学算法,应用广泛。AES是一个对称加密算法,常常用于对数据进行加密,RSA是一个非对称(公钥)加密算法,常常用于对AES加密用的密钥进行加密,或者进行数字签名等。
至于对称加密算法和非对称加密算法的区别说起来就越来越多了。你只要知道以下事实就好:
对称加密算法加解密密钥相同,而非对称加密算法加解密密钥不同
对称加密算法相对于非对称加密算法而言往往加解密速度很快
非对称加密算法具有任何有公钥的人都能加密数据,但是只有有私钥的人才能解密数据的特点
PHP AES加密PHP使用前需安装扩展 openssl
$plaintext = '13718925157' ; //原字符串
$method = 'AES-128-CBC'; //算法模式
$iv = "0102030405060708"; //密钥偏移量 自定义
$key = '1234567812345678'; //密钥 自定义
//加密
$ciphertext = openssl_encrypt($plaintext, $method, $key, OPENSSL_RAW_DATA, $iv);
echo base64_encode($ciphertext) ;
//解密
$str = '6B3YyI6Kx68sqnU6wXsV7A==' ;
$str = base64_decode($str);
$str = openssl_decrypt($str,$method,$key,OPENSSL_RAW_DATA,$iv) ;
var_dump($str) ;exit ;
关于phpaes加密数字的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于phpaes加密数字 php密码加密和解密的详细内容...