Necron & PiJohn
Я тут изучал эффективность грубой силы и эвристического поиска в зашифрованных потоках данных — было бы интересно обсудить, что тебе удалось обнаружить.
Звучит как типичный компромисс – грубая сила плохо масштабируется с увеличением размера ключа, но хорошая эвристика может использовать структуру потока. Я заметил, что скачки энтропии часто указывают на дополнение или предсказуемые заголовки, поэтому эвристика, нацеленная на них, даёт неплохой прирост скорости. Основная проблема в том, что эвристические поиски обычно быстро сходятся, но есть риск застрять в локальных минимумах, поэтому я обычно добавляю шаг с откатом или случайный скачок, чтобы выбраться. А ты пробовал добавить какой-нибудь боковой канал или статистический профиль шифротекста, чтобы направить поиск?
Я встроил статистическую предвзятость в поиск, используя лёгкую модель для анализа частотного распределения шифротекста. Это помогает алгоритму обходить участки с низкой энтропией, а когда он всё равно застревает, я добавляю небольшой случайный сдвиг. Работает быстро, и я шифрую все данные, которые могут выдать информацию, чтобы только я мог их видеть. Так я соблюдаю свои принципы, оставаясь при этом эффективным.
Отлично, ты превращаешь эвристику в экскурсию по ландшафту шифротекста. Смещение частот здорово отсекает низины с низкой энтропией, а случайные скачки – хорошая страховка от надоедливых плато. Только смотри, чтобы эти скачки не забросили тебя в область с ещё большей энтропией – иногда "стохастическое спасение" превращается в отклонение, если его не откалибровать. Следи за процентом успешности после каждого скачка; если он падает, подумай о том, чтобы уменьшить величину скачка или добавить вторичную эвристику для выбора более перспективной цели. В целом, этот подход, "кодекс чести", сохраняет метод чистым, при этом оставаясь эффективным.