PHP 十六进制与字符串相互转换以及Aes加密解密
时间:2023年05月25日
/来源:网络
/编辑:佚名
十六进制转字符串
function hexToStr($hex)
{
$string="";
for($i=0;$i<strlen($hex)-1;$i+=2)
$string.=chr(hexdec($hex[$i].$hex[$i+1]));
return $string;
}
字符串转十六进制
function strToHex($string)
{
$hex="";
$tmp="";
for($i=0;$i<strlen($string);$i++)
{
$tmp = dechex(ord($string[$i]));
$hex.= strlen($tmp) == 1 ? "0".$tmp : $tmp;
}
$hex=strtoupper($hex);
return $hex;
}
Aes加密
function aes_encode($data, $key, $iv) {
//字符串转十六进制 strToHex
return strToHex(openssl_encrypt($data, 'aes-128-cbc', $key, true, $iv));
}
Aes解密
function aes_decode($data) {
//十六进制转字符串 hexToStr
return openssl_decrypt(hexToStr($data), 'aes-128-cbc', $key, true, $iv);
}
function hexToStr($hex)
{
$string="";
for($i=0;$i<strlen($hex)-1;$i+=2)
$string.=chr(hexdec($hex[$i].$hex[$i+1]));
return $string;
}
字符串转十六进制
function strToHex($string)
{
$hex="";
$tmp="";
for($i=0;$i<strlen($string);$i++)
{
$tmp = dechex(ord($string[$i]));
$hex.= strlen($tmp) == 1 ? "0".$tmp : $tmp;
}
$hex=strtoupper($hex);
return $hex;
}
Aes加密
function aes_encode($data, $key, $iv) {
//字符串转十六进制 strToHex
return strToHex(openssl_encrypt($data, 'aes-128-cbc', $key, true, $iv));
}
Aes解密
function aes_decode($data) {
//十六进制转字符串 hexToStr
return openssl_decrypt(hexToStr($data), 'aes-128-cbc', $key, true, $iv);
}
新闻资讯 更多
- 【建站知识】查询nginx日志状态码大于400的请求并打印整行04-03
- 【建站知识】Python中的logger和handler到底是个什么?04-03
- 【建站知识】python3拉勾网爬虫之(您操作太频繁,请稍后访问)04-03
- 【建站知识】xpath 获取meta里的keywords及description的方法04-03
- 【建站知识】python向上取整以50为界04-03
- 【建站知识】scrapy xpath遇见乱码解决04-03
- 【建站知识】scrapy爬取后中文乱码,解决word转为html 时cp1252编码问题04-03
- 【建站知识】scrapy采集—爬取中文乱码,gb2312转为utf-804-03