Главная / безопасность пк / хакинг
![]() | Взлом капчиРазбираемся, как ломают капчи. Теория и практика |
опыта работы с нейросетями. Для использования достаточно нескольких функций: //
Создание нейросети из них //
Обучение нейросети // //
Запись нейросети в файл //
Загрузка нейросети из файла Опытным путем была подобрана оптимальная структура нейронной сети для нашей задачи — три слоя по 384, 150 и 10 нейронов. Первый (входной) слой принимает значения соответствующих пикселов (16х24 = 384) изображения цифры, нормализованные к отрезку от 0 до 1 (значение яркости), внутренний слой играет основную роль в распознавании, а последний выходной слой представляет собой вектор из 10 переменных от 0 до 1, каждая из которой соответствует одной из цифр: чем выше значение, тем больше подобие изображения, соответствующей цифре. В данном случае используется только один внутренний слой, потому что логика, реализуемая нашей нейросетью, практически является «примеркой» усредненных шаблонов каждой цифры к изображению, поэтому нескольких последовательных операций не требуется. Для обучения нейросети воспользуемся заготовленными образцами, кроме того нам потребуется ещё один набор образцов для независимого тестирования, который должен формироваться случайным образом без учета зашумленности: function Первая попытка обучения на 100 образцах дала 43% успешных распознаваний на независимом тестовом наборе, что соответствует примерно 3% (0.43 ^ 4), что уже близко к нашей цели. Дополнив базу образцов ещё 100 экземплярами, получаем 55% успешных распознаваний отдельных цифр и примерно 10% всей капчи. С учетом того, что на попытку распознавания одной капчи расходуется около 1-2 секунд процессорного времени, общие затраты на успешный взлом одной капчи составят 10-20 секунд. Это, в целом, приемлемое время, однако увеличение количества образцов для обучения нейросети позволит значительно снизить эти расходы. Для тестирования используем следующий код: function Выводы и заключениеКак показывает практика, любая капча может быть взломана, вопрос лишь в том, оправдает ли результат затраченные усилия. Что на данный момент точно нереализуемо, так это универсальная система распознавания, способная без какой либо ручной настройки распознавать любые капчи. Какие рекомендации можно дать сайту xakep.ru по усилению безопасности капчи? Во-первых, добавить искажения, изменяющие расположение цифр относительно друг друга, что затруднит их разделение. Во-вторых, исключение вариантов, при которых шумовые линии |
Дата публикации: 16 Июля, 2011
Автор: Артём Заруцкий
Прочитано: 8286 раз
< | 1 | 2 | 3 | 4 | 5 | 6 | 7 | > |
Это интересно
![]() |
![]() | Синтаксис языка и операторы. Функции работы с данными. Файлы и сети. Управляющие функции. Взаимодействие с базами данных. Графика. |
![]() | Предлагаемая вашему вниманию книга задумывалась не как практическое руководство по веб-дизайну, а скорее как учебник общего дизайна на частном материале веб-сайтов. |
![]() | Обзор приемов раскрутки web-сайтов. |