- A+
所属分类:系统文档
MD5基本上目前还是比较通用的密码保存方式,但是很容易通过一些工具直接把简单的明文反出来。然后就改进,有了加盐一说,加盐之后确实极大地提升了密码被反查出来的风险。今天又看到一种比较非主流的方法,那就是保存密码MD5散列的前10位,当场就给跪了。
Select Case Int(sType) Case 0 '32位 MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d)) Case 1 '16位 MD5=LCase(WordToHex(b) & WordToHex(c)) Case 2 '左10位 MD5=Left(LCase(WordToHex(b) & WordToHex(c)),10) End Select
这样做的优点是:
-
cmd5等在线反查工具目前完全无解。
-
暴力跑md5的程序基本也是无解,都是只支持16和32位的。
-
一般人破解起来代价比较高也麻烦。
缺点:
-
可能出现明文不同,密文相同的情况。
-
假如反查网站推出取md5的前多少位功能,那么方法就无效了,不过查询时间会延长,每次查询要做一次split。
-
太过非主流,扩展性兼容性不够好
说实在的,假如碰到这种保存的数据库,脱裤客们也只能大叫一声fuck了吧,哈哈哈哈,以后可以考虑保存31位的或者30位的,非主流啊!好累啊,感觉不会再破了。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫