Приветствую Вас Гость | RSS

Суббота, 29.06.2024, 08:12
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
15. Критерии при разработке алгоритмов
BlofeldДата: Суббота, 16.01.2010, 16:05 | Сообщение # 1
Местный копирайтер
Группа: Администраторы
Сообщений: 583
Репутация: 2012
Статус: Offline
Считается, что алгоритм симметричного шифрования должен:

• Манипулировать данными в больших блоках, предпочтительно размером 16 или 32 бита.
• Иметь размер блока 64 или 128 бит.
• Иметь масштабируемый ключ до 256 бит.
• Использовать простые операции, которые эффективны на микропроцессорах (XOR, +, табличные подстановки, * по модулю. Не должно использоваться сдвигов переменной длины, побитных перестановок или условных переходов.
• возможность реализации алгоритма на 8-битном процессоре с минимальными требованиями к памяти.
• Использовать заранее вычисленные подключи. Всегда должна быть возможность шифрования данных без каких-либо предварительных вычислений.
• Состоять из переменного числа итераций. Для приложений с маленькой длиной ключа нецелесообразно применять большое число итераций для противостояния дифференциальным и другим атакам.
• По возможности не иметь слабых ключей. (или минимальное кол-во. Тем не менее, все слабые ключи должны быть заранее известны, чтобы их можно было отбраковать в процессе создания ключа.
• Задействовать подключи, которые являются односторонним хэшем ключа. Это дает возможность использовать большие парольные фразы в качестве ключа без ущерба для безопасности.
• Не иметь линейных структур, которые уменьшают комплексность и не обеспечивают исчерпывающий поиск.
• Использовать простую для понимания разработку. Это дает возможность анализа и уменьшает закрытость алгоритма.

Большинство блочных алгоритмов основано на использовании сети Фейштеля, все имеют плоское пространство ключей, с возможным исключением нескольких слабых ключей.

 
  • Страница 1 из 1
  • 1
Поиск: