188 подписчиков
МЕТОДЫ ПРОГ. ИНЖЕНЕРИИ. ГАСИМ ПОДБОР ПАРОЛЕЙ
..
Всех приветствую. У некоторых авторов в статьях и прочих публикациям есть такое что они сваливают всё сразу в кучу и даже подготовленному читателю разбираться в этой каше тяжеловато. Поэтому в своих методах программной инженерии я в каждой публикации озвучиваю что то одно, какой-либо один момент. Плюс если исходный код максимально разделить на более мелкие составляющие, то получиться более эффективно, хотя и сложнее. Это уже другой ментод будет.
..
Не раз наверно все замечали, что после пары неуспешных вводов пароля на сайте или даже при входе в Windows начинается задержка с ответом что пароль неверный. Это для гашения подбора паролей, чтобы снизить вероятность угадывания паролей. Такая же практика есть в программной инженерии чтобы для неавторизованных и подозрительных запросов в сети (в т.ч. с подозрительных сетевых адресов) делать задержу ответа о неудачной авторизации (такие запросы можно вообще отбрасывать, но сейчас речь идёт о задержке ответов).
..
Но если поток обработчик таких запросов авторизации (и ответов на них) будет делать паузу для каждого такого запроса в несколько секунд, то сервер повиснет просто. Чтобы этого не происходило для таких ответов с задержкой делаем специальный поток (или несколько), который будет из очереди отправлять ответы таймаут отправки которыйх наступил.
..
Основной поток из своей очереди вх. запросов для подозрительных или любых неавторизованных запросов генерирует ответ и помещает его в очередь овтетов на отправку. Поток отправщик отправляет ответы для которых наступил таймаут, например, 3 секунды, т.е. ч\з 3 секунды каждый, например. Поток отправщик таймаут и прочие настройки читает из конфигурации сервера.
..
Доступ к очередям происходит через межпоточную блокировку доступа, поэтому они выделены ниже на схеме красным.
1 минута
4 марта 2024