md5暴力破解的难度分析

md5暴力破解的难度分析:

1.  100万次md5("aaaaaa") 的时间
18测试机上: 5.6s
我的pc机上: 1.8s

2.  100万次sha1("aaaaaa") 的时间
18测试机上: 7.2s
我的pc机上: 2.0s

3.  100万次hash(md5,"aaaaaa") 的时间
18测试机上: 1.7s
我的pc机上: 2.3s

4.  100万次hash(sha1,"aaaaaa") 的时间
18测试机上: 2.3s
我的pc机上: 2.6s

5. 对于由字母和数字组成的64位的密钥,可能的情况为:
   36^64 = 4011991914547630480065053387702443812690402487741812225955731622655455723258857248542161222254985216

   这是一个100位的数字,但就这个数字的长度来看,我已经不想猜测需要多少机器,多长时间才能破解了。

疑问: 为什么我的pc机器上作加密比服务器要快那么多? 底层实现不一样,可以看源码。

结论:
1. sha1比md5加密强度是要大一些的, 10:9
2. 按照我的pc机器的破解速度,50万次/s
字符集: a-z A-Z 0-9 . ? – _ 共40个字符,对于最小长度的密码(6位)最慢的情况需要40^6(40亿)次的md5
40亿/50万/3600 =

4000000000/500000/3600 = 2小时

增加md5的次数,对破解难度来讲,是倍数级别的增大的;
增加密码的长度,对破解难度来讲,是指数级别的增大的;

所以试图多几次md5来增加暴力破解的难度是没有太大意义的。但是增加密码长度是很有意义的。

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据