Re[3]: Определение алгоритма шифрования
От: Аноним  
Дата: 10.12.10 21:41
Оценка:
Здравствуйте, dilmah, Вы писали:


А>>Это блочный шифр перестановки, <off>очень ненадежный, вскрытие тривиально при достаточной для вычисления статистики текста длине сообщения</off>.

А>>Соответственно, по заданной структуре "местами продырявленной матрицы" нужно вычислить перестановку (заполнить по строкам матрицу
А>>номерами 1...M, где М — число "доступных для записи символов сообщения" ячеек, затем выписать их из этой матрицы по спирали).
А>>Далее шифровать применением перестановки к одинаковой длины блокам текста. Расшифровывать — применением обратной перестановки.

D>ну вообще-то, большинство шифров так и работает: ключ кодирует перестановку над 64- или 128-битным алфавитом. Дальнейшая секурность достигается режимом кодирования (CBC etc).

В нормальных системах ключ кодирует ПОДстановку (биективное отображение в себя)
над ОЧЕНЬ большим алфавитом (мощность алфавита должна быть >> ресурсов по памяти
и вычислительной мощности). А ПЕРЕстановочные шифры принципиально ненадежны.
Перестановка -- это же просто линейный оператор с сильно специальной структурой
(разреженная матрица единичек). Линейным анализом ее и того.

Кстати, надежность простой подстановки даже в случае этого самого очень большого
алфавита тоже может пострадать от слишком большой длины сообщения, поэтому ее
чаще делают не простой а многоалфавитной (применяют гаммирование/свертку/модификацию
ключа и т.п.)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.