ddd написал(а):
НЕТ БЕСКОНЕЧНЫХ КОДОВ. Иначе вы и шифровать будете до бесконечности. Дуальность блин.
я не писал про бесконечные коды, едрен батон!!! я писал о том, что
dron написал(а):
ключей БЕСКОНЕЧНОЕ множество.
заметьте, НЕ ДЛИНА КЛЮЧА, А КЛЮЧЕЙ БЕСКОНЕЧНОЕ МНОЖЕСТВО! то есть ИХ ВАРИАНТОВ, ну и плюс достаточно широкий диапазон длин ключей.
поймите, что стойкость современных криптосистем основывается именно на этой информации сравнительно малого размера! а ключом может быть все что угодно - забудьте про банальную перестановку, сейчас идут целые операции над цифровыми потоками!
еще раз повторюсь - ДЛИНА КЛЮЧА ОГРАНИЧЕННА, хотя может быть достаточно большой, а вот ВАРИАНТОВ ключей бесконечное множество. следовательно время их перебора стремится к бесконечности. не зная ключа, его характера - перестановка это каких - либо элементов в шифропоследовательности, инвертирование блоков или отдельных элементов последовательности, умножение на числа, выражения, ПОЛЯ - много еще можно что сделать с кодом, и число вариантов этих ключей БЕСКОНЕЧНО, ВАРИАНТОВ, а не ДЛИНЫ!
пример - ключ - 0110010, где первый ноль означает, что необходимо последовательность разбит на блоки длиной по 5 символов (если бы стояла единица - то на 10) следующая единица означает, что четвертый ноль (если есть) в блоке нужно инвертировать на единицу следующая единица означает, что полученную последовательность необходимо возвести в квадрат поблочно, следующий ноль означает что блоки нужно умножить на выражение Х+4У-34, где Х - час на момент приема, У - минута на момент приема, ну и так далее, причем если ключ передавать перед сообщением, то ноли и единицы там могут меняться, в соответствии меняется алгоритм шифрования. дашифруйте такую последовательность и найдите такой ключ простым перебором, НЕ ЗНАЯ ЕГО. предлагаю начать с простой перестановки элементов шифропоследовательности
удачи!
ddd написал(а):
Кроме того есть интересное замечание - время вскрытия кода - величина ВЕРОЯТНОСТНАЯ.
поэтому ключи периодически меняют.