关于攻击者猜测口令的概率计算问题
发布网友
发布时间:2022-05-07 19:37
我来回答
共4个回答
热心网友
时间:2022-07-01 05:45
这个问题我来回答,以前和同事一起讨论研究过,虽然不是很专业,但希望您可以借鉴一下
测试四位密码,第一位,是26*2(26个字母,大小写)种可能,第二位也是26*2种可能,以此类推,那么四位的可能就是(26*2)*(26*2)*(26*2)*(26*2)=7311616种可能
如果每一秒钟攻击一次,全部测试一遍则需要试7311616秒,也就是(7311616/3600)=2031小时,
也就是(2031/24)=84.6天
但是CPU的速度没这么慢哦,大概12个时钟周期执行一条指令,而时钟周期是你的CPU脉冲频率的倒数。比如你是2.0G赛扬CPU,时钟周期是1/(2*10^9),也就是0.0000000005秒,执行一条指令的时间12*0.0000000005=0.000000006秒。试一次密码用5条指令,用时间0.000000006*5=0.00000003秒。那么破解7311616种排序的时间为:0.22秒。
当然,这只是理论计算,平时电脑还在用,也不一定很顺畅,而且也未必是5条指令。
但是实际上,我们输入密码都需要加入数字,或者特殊符号,0~9和0~9的上位键,总计20个,那4位密码中每位的可能就有(26*2+20)个可能。那么四位的可能就是(52+20)^4=26873856种可能,破解所需要的时间,最后算下来0.8秒
所以建议多设置几位密码。
热心网友
时间:2022-07-01 05:46
不同意楼上所述。
1)任意四个字符的组合,意味着可能出现相同的字母,即AAAA这样的口令也是允许的,所以从AAAA到ZZZZ,总共有26的4次方=456976种可能性。
在理想状态下,认为每个字母的使用都是等概的,那么攻击者可能第1秒就猜中了,也可能最后1秒才猜中,而所有花费时间的可能性也是等概的(即1/456976)。因此发现正确口令的时间应该是所有可能时间的加权平均,即T=P{第1秒就猜中}*1秒+P{第2秒猜中}*2秒+...+P{最后1秒才猜中}*456976=(1/456976)*1+(1/456976)*2+...+(1/456976)*456976=228488.5(秒)约为63.5小时
2)的意思不是跟1)一样吗?追问第一问解答很认真,跟我的想法一样。其实我目的是第二问,肯定和第一题不一样的,时间要短些
追答第1问"摆渡上岸"说的更全面,考虑大小写的话,时间应当是3655808.5秒,约合1015.5小时,42.3天。
第二问,你的意思是不是比如说正确密码是EFDG,而攻击者猜测ABCD,那么由于猜测的第一个字母A与正确的密码不同,所以后面的BCD都不再进行比较?
热心网友
时间:2022-07-01 05:46
(1)由于26个选任意4个有26x25X24X23=358800种口令可能也即需要这么多秒
(2)26X24X22X20
热心网友
时间:2022-07-01 05:47
信息安全的这条题目让我很是费解,感觉在做文字游戏,还有第10题也不知道如何作答追问你该不会是南理工的吧……