假设一个8个字符的字母数字密码,我理解的排列数量就是。
26小写字母
26大写
10位数
因此,如果您对此密码进行暴力攻击,平均尝试次数将为(62 ^ 8)/ 2
然而假设你知道那个 密码长度至少为4位 因此排除任何企图 答案的前4位数字 其余的排列不是((62 ^ 8) - (62 ^ 4))/ 2?
我在这里遗漏了什么或是正确答案吗?
答案 0 :(得分:6)
是的,你错过了一些东西。不,这不是正确的答案: - )
您的原始计算是针对完全八个字符长的密码,而不是八个或更少的密码。
对于可以在4到8个字符之间的密码,实际上更多搜索空间比原始计算中的密码更多(不是因为搜索空间越少意味着花费更多时间,而是因为原始计算是错)。
对于一到八个字符的密码,搜索空间实际为:
(62 ^ 1) + (62 ^ 2) + (62 ^ 3) + (62 ^ 4) +
(62 ^ 5) + (62 ^ 6) + (62 ^ 7) + (62 ^ 8)
然后你可以将它除以平均支票数量两次(我不会因为我们实际上只讨论比率)。
然后,如果你有额外的信息,密码长度至少为四个字符,你可以折扣前三个条款得到:
(62 ^ 4) +
(62 ^ 5) + (62 ^ 6) + (62 ^ 7) + (62 ^ 8)
答案 1 :(得分:0)
对于最多8个字符的密码,有62^8 + 62^7 + 62^6 + 62^5 + 62^4 + 62^3 + 62^2 + 62
个不同的密码。但是,如果您知道密码长度不少于4个字符,则可以删除最后3个字词,并获得62^8 + 62^7 + 62^6 + 62^5 + 62^4
个不同组合的内容。
答案 2 :(得分:0)
我猜您的密码组合数量的正确计算将是:
(62^4) + (62^5) + (62^6) + (62^7) + (62^8)