对称加密算法

<?php
namespace Common\ORG\Api;
use Eframe\Logic\ConfigLogic;
use Think\Exception; class Descode
{     /** * 解密函数 * 算法:des * 加密模式:ecb * 补齐方法:PKCS5 * @param unknown_type $input */       public static  function encryptForDES($input,$key)   {         $size = mcrypt_get_block_size('des','ecb');  $input = self::pkcs5_pad($input, $size); $td = mcrypt_module_open('des', '', 'ecb', '');$iv = @mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);  @mcrypt_generic_init($td, $key, $iv);  $data = mcrypt_generic($td, $input);  mcrypt_generic_deinit($td);  mcrypt_module_close($td);  $data = base64_encode($data);  // bin2hex($data)return $data;  }public static  function decryptForDES($input,$key)   {   $input = base64_decode($input); $size = mcrypt_get_block_size('des','ecb');  $td = mcrypt_module_open('des', '', 'ecb', '');  $iv = @mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);  @mcrypt_generic_init($td, $key, $iv);  $data = mdecrypt_generic($td, $input);  mcrypt_generic_deinit($td);  mcrypt_module_close($td);  $data = self::pkcs5_unpad($data, $size);    return $data; }    public static  function pkcs5_pad ($text, $blocksize)   {         $pad = $blocksize - (strlen($text) % $blocksize);  return $text . str_repeat(chr($pad), $pad);  } public static  function pkcs5_unpad($text)   {         $pad = ord($text{strlen($text)-1});  if ($pad > strlen($text))  {  return false;  }  if (strspn($text, chr($pad), strlen($text) - $pad) != $pad)  {  return false;  }  return substr($text, 0, -1 * $pad);  }
}

PHP中使用DES加密解密相关推荐

  1. 在Java中使用DES加密解密算法

    import javax.crypto.*; import javax.crypto.spec.DESKeySpec; import java.security.NoSuchAlgorithmExce ...

  2. DES加密解密算法(前端后端)

    DES加密解密算法(前端&后端) 原作者 阿弥陀佛1114  原文链接:https://blog.csdn.net/zong1114/article/details/51754470 DES对 ...

  3. java des 加密工具的使用,Java中DES加密解密工具类的实现实例

    这篇文章主要介绍了Java实现的DES加密解密工具类,结合具体实例形式分析了Java实现的DES加密解密工具类定义与使用方法,需要的朋友可以参考下 本文实例讲述了Java实现的DES加密解密工具类.分 ...

  4. python des解密_python实现DES加密解密方法实例详解

    本文实例讲述了python实现DES加密解密方法.分享给大家供大家参考.具体分析如下: 实现功能:加密中文等字符串 密钥与明文可以不等长 这里只贴代码,加密过程可以自己百度,此处python代码没有优 ...

  5. java 实现 DES加密 解密算法

    DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...

  6. DES加密解密与AES加密解密

    × 目录 [1]AES加密算法和DES加密算法的效率比较 [2]AES和DES加密解密代码 随着开发时间的变长,当初认为比较难的东西,现在渐渐也就变的不那么难了!特别对于一些经常很少使用的类,时间长了 ...

  7. 转载并学习实现三重DES加密解密代码(一)

    作者:finallyliuyu 出处:博客园 声明:此篇博文代码来自于邹德强先生.由于目前找到的版本是残缺版,所以我又进行了补全.读一份好代码,可以领略到作者的编程风格和语言驾驭能力,同时又能从其中汲 ...

  8. python des加密文件_Python DES加密解密方法 pyDes库 兼容中文

    单纯记录一下Python中DES加密解密的使用方式直接看代码: 依赖pyDes库安装> pip install pyDes 约定秘钥 python和java 加密和解密联调,兼容中文字符串 Py ...

  9. C#之DES加密解密

    一.DES简介 在线DES加密/解密工具 DES算法是一种最通用的对称算法,因为算法本身是公开的,所以其安全性在于的安全性.基于的算法通常有两类:对称算法和公开算法.对称算法的对称性体现在加能够从解推 ...

最新文章

  1. 一个系统的base.css,兼容IE7,IE8,IE9,IE10,IE11,firefox,safari,谷歌,360,世界之窗等浏览器起的公共css
  2. python扫描ip的端口打开情况
  3. openwrt 3g模块上网
  4. 8类网线利弊_知识积累 | 千兆网线和百兆网线有何区别?
  5. 人工学院2卡顿_浙大宁波理工学院就业率怎么样 | 就业情况 | 前景好的专业
  6. matlablib显示图片
  7. Graphviz样例之集群流程图
  8. python从入门到精通 明日科技 电子书-python从入门到项目实践 (明日科技) 配套视频教程+源码...
  9. android studio选中全部,android - Android Studio风格维度已全部处理,未选中一项 - 堆栈内存溢出...
  10. Graphics进行局部旋转的办法
  11. kafka测试工具_kafka压测工具:同步方式2000+、异步方式10000+、带源码
  12. 组概念_【收藏】学习质谱一定要知道的6组概念
  13. 算法分析 | 分支限界算法设计之布线问题 C语言版
  14. 快收藏!最适合计算机大学生的Java毕业设计项目--高校食堂点餐系统
  15. 1、NESSUS安装
  16. 【HD Tune变红/警告】硬盘 SMART 检测参数详解
  17. 大数据教程(10.5)运营商流量日志解析增强
  18. 什么是飞书机器人?如何定时发送飞书机器人消息?
  19. 【Paper】2022_Fixed-Time Cooperative Tracking for Delayed Disturbed Multi-Agent Systems Under Dynamic
  20. 存储器之主存--Cache--辅存大全

热门文章

  1. [完全背包] 货币系统(完全背包+求方案数)
  2. 隐藏手机号的方法总结
  3. linux系统编程之网络编程
  4. 统计学系列:统计、数据与思想
  5. 利用matlab工具箱的pid参数科学整定方法
  6. java关于Zxing 生成带Logo 二维码图片失真问题
  7. 一套模板实现千人千面,衡石助力业财平台分析效率成倍提升
  8. 使用C语言打印99乘法表
  9. 一寸照片的尺寸是多少?快速制作教程介绍
  10. CS5265参数说明|CS5265设计资料|CS5265设计电流|type-CtoHDMI2.0拓展坞资料