本文目录一览:
- 1、使用php来进行MD5加密的实例代码
- 2、PHP怎么进行MD5加密
- 3、有php代码和md5问题
- 4、php中如何使用MD5码
- 5、php md5下16位和32位的实现代码
- 6、php中如何使用MD5加密?
使用php来进行MD5加密的实例代码
一般是网站注册吧。
?php
$pswd1=md5("cenusdesign");
echo $pswd1; //运行结果为:fc60ec37d1c08d5b0fb67a8cd934d5ba
?
PHP怎么进行MD5加密
1. MD5加密
string md5 ( string $str [, bool $raw_output = false ] )
参数
str -- 原始字符串。
raw_output -- 如果可选的 raw_output 被设置为 TRUE,那么 MD5 报文摘要将以16字节长度的原始二进制格式返回。
这是一种不可逆加密,执行如下的代码
$password = '123456';
echo md5($password);
得到结果是e10adc3949ba59abbe56e057f20f883e
有php代码和md5问题
php有内置的md5函数,不用代码,直接使用即可。。。
例子 1
?php
$str = "Hello";
echo md5($str);
?
输出:
8b1a9953c4611296a827abf8c47804d7
例子 2
?php
$str = "Hello";
echo md5($str);
if (md5($str) == '8b1a9953c4611296a827abf8c47804d7')
{
echo "br /Hello world!";
exit;
}
?
输出:
8b1a9953c4611296a827abf8c47804d7
Hello world!
php中如何使用MD5码
首先介绍一下PHP中MD5函数的使用方法:
?php
$pswd1=md5("cenusdesign");
echo $pswd1; //运行结果为:fc60ec37d1c08d5b0fb67a8cd934d5ba
$pswd2=md5("Cenusdesign");
echo $pswd2; //运行结果为:067577d9fc109c80538c81d6f02bd293
?
显然,经过md5加密后,原本“cenusdesign”转变成了一组32位的字符串,而且,即使是一个字母的大小写变化,这组字符串就会发生巨大的变化。
Cenus Design建议把用户注册时,将密码首先经过MD5转换,然后将转换加密后的数据库。在用户登陆时,也将密码先进行MD5转化,再和数据库中那组经过MD5加密的字符串进行比较。这样,就可以做到在不知道用户确切密码的情况下完成密码的比对操作。
php md5下16位和32位的实现代码
复制代码
代码如下:
?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加密?
把这段密文分割成若干段,对每段都进行一次MD5运算,然后把这堆密文连成一个超长的字符串,最后再进行一次MD5运算,得到仍然是长度为32位的密文。
?php
//把密文分割成两段,每段16个字符
function md5_2_1($data)
{
//先把密码加密成长度为32字符的密文
$data = md5($data);
//把密码分割成两段
$left = substr($data, 0, 16);
$right = substr($data, 16, 16);
//分别加密后再合并
$data = md5($left).md5($right);
//最后把长字串再加密一次,成为32字符密文
return md5($data);
}
//把密文分割成32段,每段1个字符
function md5_2_2($data)
{
$data = md5($data);
//循环地截取密文中的每个字符并进行加密、连接
for ($i = 0; $i 32; $i++) {
$data .= md5($data{$i});
}
//这时$data长度为1024个字符,再进行一次MD5运算
return md5($data);
}
?