Я писал тулсу для проверки заполнения plainspace пространства (==вероятности успешного взлома), могу выложить, если интересно. Проверяет втупую - поэтому время расчета чуть больше чем время генерации таблицы. Тестил не на самых больших табличках, порядка 500мб-1гб, и выдала программа вот это:
[i] Chains processed: 100% of plain space
[i] Real plain space utilization = 54.75%
[i] Chains processed: 150% of plain space
[i] Real plain space utilization = 65.87%
[i] Chains processed: 200% of plain space
[i] Real plain space utilization = 73.62%
[i] Chains processed: 300% of plain space
[i] Real plain space utilization = 82.90%
Т.е. в реальности, ни о каких "двух разах" говорить просто нельзя.
Ну да, почти в два раза увеличение вероятности происходит, если количество цепочек меньше половины plainspace (т.е. success rate ~ 50%), но уже при повышении success rate до 93% нам надо
в три раза больше вычислений чем для 54% ного заполнения.
Это, кстати, все справедливо только для
одной таблицы
При увеличении
числа таблиц (но никак, не объема одной таблицы) - вот тогда success rate растет почти линейно. Опять-таки весьма "почти".
А теперь более простая (логическая) формулировка:
Пусть success rate линейно зависит от размера таблицы.
Возьмем таблицу из N цепочек, которая дает нам 50% success rate.
А теперь посчитаем таблицу из 4N цепочек, и бац, такая таблица должна подбирать пароли уже с 200% вероятностью?! Но это еще что, в реальности такая таблица не обеспечит и 95% паролей, это можно проверить без тулс и довольно быстро - просто создав 1000 рандомных паролей из того же плейн спейса и поставих их на перебор по таблице.
Спасибо за внимание.