求PHP MD5 源程序

Yes1000 2010-09-07 04:31:17
不想用公开的那个算法,
想在原来的基础上修改一下,用自定义的算法加密。

貌似PHP内置了MD5,木有源码,网上搜到的大多都是错误的,谁能提供个呢
...全文
127 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2010-09-08
  • 打赏
  • 举报
回复
只有可逆的才称为加密(密文->明文),md5 是不可逆的,所以不能称为加密,索引而已

md5 只不过是 32 字节长的串,用它去表示这个世界,显然是不可能的,肯定是要发生碰撞的(两个不同的串具有相同的 md5 值)

你还真不如好好研究一番 Mcrypt 扩展
张小莱 2010-09-08
  • 打赏
  • 举报
回复
楼主可以参考一下discuz的加密方法,
就是对用户注册时输入的密码进行一次加密,也就是md5,
然后将用户名和加密过的密码进行合并再加密。

比如:
用户名:admin
密码: 123456

先对密码加密,得出结果假设为d1i2s3c4u5z6。
然后字符串合并,得出“admind1i2s3c4u5z6”。
然后再加密。md5
helloyou0 2010-09-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yes1000 的回复:]

引用 5 楼 hero0524 的回复:
哦!想要通过自定义函数实现md5的效果。。。路过。。。

呵呵,不是这么复杂滴

只在原来的算法上做点简单修改,混淆下结果。

现在的算法太容易破解了,加密钥的各种算法,也依然很容易被破解,很多网站都提供这种破解功能。
比如某网站提供这样的查询:
引用
密文:
salt:
加密算法:
md5($pass)
md5($pass.……
[/Quote]


md5没有你想象的那么脆弱...
"所以想给算法动点手脚让密文安全点…" 这个想法也不是那么容易实现,从理论的角度来说,你动了手脚很有可能实际上降低了密码安全度. 如果你能证明该新算法比原md5更安全,那你就可以发表出来了.

当然你因为改变了算法,一定程度上给某些依赖于假设你使用了md5的攻击者增加了麻烦,不过这个方法应该和salt或其它比如2次md5等方法是起类似作用的.

你其实也可以使用SHA-1等更安全的加密.

关于md5算法,你可以找到PHP里C的源程序,另外PHP的,前一段时间(年初)有个ID在这里发帖讨论过,她应该有修改后正确的源码,你找找看.



Yes1000 2010-09-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hero0524 的回复:]
哦!想要通过自定义函数实现md5的效果。。。路过。。。
[/Quote]
呵呵,不是这么复杂滴

只在原来的算法上做点简单修改,混淆下结果。

现在的算法太容易破解了,加密钥的各种算法,也依然很容易被破解,很多网站都提供这种破解功能。
比如某网站提供这样的查询:
[Quote]
密文:
salt:
加密算法:
md5($pass)
md5($pass.$salt)
md5($salt.$pass)
md5(md5($pass).$salt)
md5(md5($salt).$pass)
md5($salt.$pass.$salt)
md5($salt.md5($pass))
md5(md5($salt).md5($pass))
md5(md5($pass).md5($salt))

开始查询[/Quote]
普通的加密或者salt加密,salt被人知道都很容易被破解,所以想给算法动点手脚让密文安全点……
zhongqixing1104 2010-09-07
  • 打赏
  • 举报
回复
去下个php的源代码,懂c的话 看看就知道了
张小莱 2010-09-07
  • 打赏
  • 举报
回复
哦!想要通过自定义函数实现md5的效果。。。路过。。。
heyli 2010-09-07
  • 打赏
  • 举报
回复
php的没见过 asp的就有
hzhsky1985 2010-09-07
  • 打赏
  • 举报
回复
不好意思,理解错了。其实MD5就是那个原理,你可以上网查一下相关算法,然后自己用php或是其他语言实现出来,并不一定要完全参照php的源代码,我觉得这样更容易实现。毕竟即使被你找到了,你还要费时间去理解,倒不如自己做,既理解算法,修改起来也容易。
Yes1000 2010-09-07
  • 打赏
  • 举报
回复
谢谢回帖。不过……
是你没看我帖子的内容?还是我没说清楚?

我不想用PHP内置的MD5函数。我需要得到这个函数的源码修改下自定义个加密函数用
-_-|||
hzhsky1985 2010-09-07
  • 打赏
  • 举报
回复
$str='test';
echo md5($str);

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧