首页 > 资讯列表 > 编程/数据库 >> PHP

php md5加密16位和32位的实现方法

PHP 2014-12-14 12:45:04 转载来源: 网络整理/侵权必删

本文是一个php实现的可以返回16位md5加密串和32md5加密串的方法,感兴趣的同学参考下. <?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加密跟表中字段匹配,在网上一搜也有不少人有这方面的困惑,后来找到一个解决办法,是正确的,就记录下来

本文是一个php实现的可以返回16位md5加密串和32md5加密串的方法,感兴趣的同学参考下.


<?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 md5 加密 16位 32位 实现 方法


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持