История изменений
Исправление ivlad, (текущая версия) :
Это не миллион за 30 секунд. Это миллион каждые 30 секунд.
Положим, я атакующий. Пространство паролей - 10^6, предположим, я могу за 30 секунд спросить сто (всего!) случайных паролей, это 10^2. Тогда вероятность, что я угадаю, равна 10^2/10^6. Вероятность, что я не угадаю, равна 1-10^2/10^6. Каждый раз, когда я не угадываю, я пробую снова. Вероятность не угадать за две попытки (тут можно принять, что результат генерирования OTP почти случайный) равна (1-10^2/10^6)^2. Вероятность не угадать за N попыток равна (1-10^2/10^6)^N, соответственно, вероятность угадать равна 1-(1-10^2/10^6)^N.
Теперь предлагаю взять калькулятор и посчитать вероятность для N=10^4, 10^5.
1-((1-10^2/10^6)^10^4)
.63213895356707007589
1-((1-10^2/10^6)^100000)
.99995462276604103883
30*10^4/60/60/24
3.47222222222222222222
А за месяц с хвостиком — с вероятностью 99,995%.
И это еще не считая того факта, что в практической ситуации OTP проверяет не только пароль текущего промежутка, но еще и одного-двух соседних, на случай рассинхронизации часов.
Исходная версия ivlad, :
Это не миллион за 30 секунд. Это миллион каждые 30 секунд.
Положим, я атакующий. Пространство паролей - 10^6, предположим, я могу за 30 секунд спросить сто (всего!) случайных паролей, это 10^2. Тогда вероятность, что я угадаю, равна 10^2/10^6. Вероятность, что я не угадаю, равна 1-10^2/10^6. Каждый раз, когда я не угадываю, я пробую снова. Вероятность не угадать за две попытки (тут можно принять, что результат генерирования OTP почти случайный) равна (1-10^2/10^6)^2. Вероятность не угадать за N попыток равна (1-10^2/10^6)^N, соответственно, вероятность угадать равна 1-(1-10^2/10^6)^N.
Теперь предлагаю взять калькулятор и посчитать вероятность для N=10000, 100000.
1-((1-10^2/10^6)^10^4)
.63213895356707007589
1-((1-10^2/10^6)^100000)
.99995462276604103883
30*10^4/60/60/24
3.47222222222222222222
А за месяц с хвостиком — с вероятностью 99,995%.
И это еще не считая того факта, что в практической ситуации OTP проверяет не только пароль текущего промежутка, но еще и одного-двух соседних, на случай рассинхронизации часов.