一、加密代码如下:

/**
*
* @param string $string 需要加密的字符串
* @param string $key 密钥
* @return string
*/
public static function encrypts($string, $key)
{
$key = substr(openssl_digest(openssl_digest($key, 'sha1', true), 'sha1', true), 0, 16);
// openssl_encrypt 加密不同Mcrypt,对秘钥长度要求,超出16加密结果不变
$data = openssl_encrypt($string, 'AES-128-ECB', $key, OPENSSL_RAW_DATA);
$encrypted = strtolower(bin2hex($data));
return $encrypted;
}

二、解密代码如下:

/**
* @param string $string 需要解密的字符串
* @param string $key 密钥
* @return string
*/
public static function decrypts($string, $key)
{
$key = substr(openssl_digest(openssl_digest($key, 'sha1', true), 'sha1', true), 0, 16);
$decrypted = openssl_decrypt(hex2bin($string), 'AES-128-ECB', $key, OPENSSL_RAW_DATA);
return $decrypted;
}

最新文章

  1. 偶遇STM32 JTAG和SWD口(调试)被禁用无法下载,已经粗暴解决!
  2. 全文检索引擎 Solr 部署与基本原理
  3. POJ 1236 Network of Schools(Tarjan缩点)
  4. vueJS简单的点击显示与隐藏的效果
  5. Unity3d《Shader篇》绘制圆角图片
  6. Linux文件/目录权限设置命令:chmod
  7. POI刷新数据后的函数(公式)更新问题
  8. Oracle约束操作
  9. 利用Xilinx中的ROM构造查找表来计算sin和cos的方法探讨
  10. 在DataTable和DataView中查找指定记录
  11. python基础——列表推导式
  12. 小项目一---Python日志分析
  13. linux目录文件及系统启动知识
  14. php中函数里面使用函数外面的变量
  15. c++中的log函数
  16. tensorflow模型的保存与恢复
  17. 第二个spring冲刺第3天
  18. 设置jade高亮
  19. USACO 2016 February Contest, Gold解题报告
  20. python 开发工具IDE pycharm的破解版安装

热门文章

  1. 为什么要使用token,token与session区别是什么
  2. python27期尚哥讲TFTP:
  3. 文件上传-pubsec-文件上传大小限制
  4. SQL必知必会01 检索列 排序
  5. 微信小程序 - 视图层 | 基础语法
  6. 【转】TCP/IP协议——ARP详解
  7. cookie清除及其他操作
  8. C# HTTP系列1 HttpWebRequest类
  9. Java判断Integer类型的值是否相等
  10. html5手机web页面底部菜单