php md5下16位和32位的实现代码


Posted in PHP onApril 09, 2008
<?php   
echo substr(md5("admin"),8,16);  // 16位MD5加密   
echo "<hr>";   
echo md5("admin");    // 32位MD5加密   
?>  
  
16位的MD5加密用substr函数截取了字符得到实现.... 

不想深入研究了 :)  要把脑力放到其他关键的地方~~ 

今天做了个php链接mssql数据库,数据库中的表中字段使用MD5十六加密的。但是php中的MD5默认是32位,导致登录程序没办法使用md5加密跟表中字段匹配,在网上一搜也有不少人有这方面的困惑,后来找到一个解决办法,是正确的,就记录下来。

使用substr函数截取:

substr(md5("admin"),8,16); // 16位MD5加密

md5("admin"); // 32位MD5加密

经过三水点靠木测试结果如下:

我们以asp的几个md5后的结果比较
附:如果遇到MD5加密文件,而又不知道的密码的,请在数据库中换上这组加密的数据。

admin---16位加密---7a57a5a743894a0e
admin---32位加密---21232f297a57a5a743894a0e4a801fc3
admin---40位加密---7a57a5a743894a0e4a801fc343894a0e4a801fc3

substr(md5("admin"),8,16); // 16位MD5加密 正是上面的32为从第8个字符开始的16个字符。所以大家不用考虑唯一性的问题。本身就是正确的。网上有人说php5支持

echo md5("admin",true);//返回16位,不过这是在PHP5里才有。

经测试输出的结果是乱码,如果大家有什么好的代码,可以分享下。
PHP 相关文章推荐
php 解压rar文件及zip文件的方法
May 05 PHP
php下载文件源代码(强制任意文件格式下载)
May 09 PHP
PHP函数实现分页含文本分页和数字分页
Oct 23 PHP
PHP PDO fetch 模式各种参数的输出结果一览
Jan 07 PHP
php实现按照权重随机排序数据的方法
Jan 09 PHP
php实现用于计算执行时间的类实例
Apr 18 PHP
基于PHP实现的事件机制实例分析
Jun 18 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
PHP扩展Memcache分布式部署方案
Dec 06 PHP
Zend Framework实现多文件上传功能实例
Mar 21 PHP
thinkPHP模板中for循环与switch语句用法示例
Nov 30 PHP
基于thinkphp6.0的success、error实现方法
Nov 05 PHP
用来给图片加水印的PHP类
Apr 09 #PHP
在PHP中读取和写入WORD文档的代码
Apr 09 #PHP
生成php程序的php代码
Apr 07 #PHP
用php获取远程图片并把它保存到本地的代码
Apr 07 #PHP
在php MYSQL中插入当前时间
Apr 06 #PHP
php读取30天之内的根据算法排序的代码
Apr 06 #PHP
PHP实现Socket服务器的代码
Apr 03 #PHP
You might like
php下HTTP Response中的Chunked编码实现方法
2008/11/19 PHP
php动态实现表格跨行跨列实现代码
2012/11/06 PHP
PHP实现多文件上传的方法
2015/07/08 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
eclipse php wamp配置教程
2016/06/30 PHP
Laravel源码解析之路由的使用和示例详解
2018/09/27 PHP
jquery 常用操作方法
2010/01/28 Javascript
jquery 之 $().hover(func1, funct2)使用方法
2012/06/14 Javascript
js 距离某一时间点时间是多少实现代码
2013/10/14 Javascript
jquery的trigger和triggerHandler的区别示例介绍
2014/04/20 Javascript
使用nodejs开发cli项目实例
2015/06/03 NodeJs
详解Javascript事件驱动编程
2016/01/03 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
2016/12/08 Javascript
javascript 初学教程及五子棋小程序的简单实现
2017/07/04 Javascript
vue组件开发之slider组件使用详解
2020/08/21 Javascript
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Django添加sitemap的方法示例
2018/08/06 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python 调用 Windows API COM 新法
2019/08/22 Python
Python基于QQ邮箱实现SSL发送
2020/04/26 Python
python代码如何注释
2020/06/01 Python
CSS3中Transform动画属性用法详解
2016/07/04 HTML / CSS
纯css3实现的竖形无限级导航
2014/12/10 HTML / CSS
HTML5 canvas基本绘图之绘制线段
2016/06/27 HTML / CSS
HTML5通过navigator.mediaDevices.getUserMedia调用手机摄像头问题
2020/04/27 HTML / CSS
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
PHP两种查询函数array/row的区别
2013/06/03 面试题
C#可否对内存进行直接的操作
2015/02/26 面试题
大学团支书的自我评价分享
2013/12/14 职场文书
计划生育诚信协议书
2014/11/02 职场文书
党的群众路线教育实践活动个人整改措施落实情况
2014/11/04 职场文书
实用求职信模板范文
2019/05/13 职场文书
pycharm2021激活码使用教程(永久激活亲测可用)
2021/03/30 Python
浅谈Redis的keys命令到底有多慢
2021/10/05 Redis
日元符号 ¥
2022/02/17 杂记
win10电脑双屏显示一个黑屏怎么办?win10电脑双屏显示一个黑屏解决方法
2022/07/15 数码科技