|
| ||||||||||||
| ||||||||||||
|
2005 г.
Рекомендации и выбор вида шифра для применения в сети доступаА. В. Гаенко,Н. А. Шестак Вісник українського будинку економічних та науково-технічних знань. #3, 2005 Основное требование, предъявляемое к выбору алгоритмов криптографической защиты информации при канальном шифровании заключается в возможности закрытия нефиксированных объемов передаваемой информации с минимальными временными задержками. Так как для передачи данных и речевых сообщений могут используются каналы недостаточно высокого качества, то любая криптографическая система, увеличивающая и без того нередкие ошибки, неприменима - неразмножение криптографическим алгоритмом ошибок, вносимых каналом связи. При использовании сквозного шифрования требования к неразмножению криптоалгоритмом ошибок, вносимых каналом связи не столь важно. При сквозном шифровании на нижестоящих уровнях выполняется помехоустойчивое кодирование. Но криптоалгоритмы сквозного шифрования должны кроме закрытия передаваемой информации давать возможность надежной аутентификации. Требования, предъявляемые к выбору алгоритмов криптографической защиты информации при сквозном шифровании: Интерактивные данные закрывать с минимальной временной задержкой. К закрытию неинтерактивных данных особых требований не предъявляется. При комбинированном шифровании работа с ключами ведется так: КСЗИ и АК АТС отвечают за ключи, используемые при канальном шифровании, а о ключах, применяемых при сквозном шифровании, заботятся сами пользователи. Применяются потоковые (можно потоковый (наложение гаммы) режим работы блочного шифра), сверточные шифры Основным недостатком потоковых шифров является необходимость передачи информации для начальной инициализации (синхропосылка) перед заголовком сообщения, которая должна быть принята до расшифровывания любого сообщения. Это связано с тем, что синхропосылка может также являться и секретным ключом (частью секретного ключа). Передача синхропосыки в виде, в котором она будет применяться в алгоритме шифрования по каналу передачи данных может создать угрозу криптографической стойкости системы, и поэтому всегда необходимо применять дополнительный ключ, с помощью которого сихропосылка будет закрываться, либо использовать в алгоритме шифрования ключезависимую модификацию синхропосылки, как это реализовано в ГОСТ 28147-89. В ГОСТ 28147-89 синхропосылка (начальное заполнение) передается в открытом виде, но в алгоритме шифрования используется результат преобразования начального заполнения по циклу 32-З: Ω0 = Ц32-3(S), где Ω0 - вектор начального заполнения рекуррентного генератора последовательности чисел (РГПЧ), Ц32-3 - базовый цикл зашифрования, S - синхропосылка. На основании приведенных рассуждений получим следующие результаты: Канальное шифрование - потоковые шифры (потоковый режим работы блочного шифра может не подойти). Выбор параметров криптографических алгоритмов и ключейПотоковые шифры основываются на псевдослучайных (случайных) ключевых последовательностях - сгенерированных определенным образом последовательностях символов с заданными свойствами непредсказуемости (случайности) появления очередного символа. Генераторы ключевых последовательностей обычно базируются на комбинациях регистров сдвига и нелинейных булевых функциях. Генераторы ключевых последовательностей характеризуются:
Если используется потоковое шифрование, тогда минимальный период должен удовлетворять условию: TΩ>>Tmax * V * n, (1)
где TΩ - минимальный период повторения последовательности, Безопасность любого алгоритма сосредоточена в ключе. Если используется криптографически слабый процесс для генерации ключей, то криптосистема в целом слаба. Злоумышленнику не нужно криптоанализировать алгоритм шифрования, он может криптоанализировать алгоритм генерации ключей. Теоретически, любой шифровальный алгоритм с использованием ключа может быть вскрыт методом перебора всех значений ключа. Если ключ подбирается методом грубой силы (brute force), требуемая мощность компьютера растет экспоненциально с увеличением длины ключа. Ключ длиной в 32 бита требует 232 (около 109) шагов. Тогда минимальную длину ключа в битах Nmin можно вычислить по формуле:
где T - время жизни передаваемых данных (определяется в соответствии с законодательством по степени секретности передаваемых данных). Хотя информация может устареть сразу после передачи ее по каналу связи. В этом случае время жизни передаваемых данных должно выбираться не менее 48 часов. Следует учесть, что некоторые алгоритмы могут иметь эквивалентные ключи (в иностранной литературе их называют ключи-дополнения) K* такие, что выполняется равенство: f −1(C, K)=f −1(C, K*)=f*(C, K*)=P, (3) где f* - функция, при использовании эквивалентного ключа K* , дающая такой же результат, как и функция расшифрования f −1 алгоритма. При этом может оказаться, что злоумышленнику требуется перебрать только некоторую часть множества ключей. Пример для режима наложения гаммы: Злоумышленник может найти такой ключ В данном случае, эквивалентным ключом является инверсия основного ключа, а f* - инверсия функции сложения по модулю 2. В итоге злоумышленнику необходимо вместо 2m операций перебора выполнить 2m-1 операций, где m - разрядность ключевой комбинации. С учетом вышесказанного перепишем формулу (2) в виде:
Ψ - коэффициент, учитывающий наличие эквивалентных ключей. Для алгоритмов шифрования на основе гаммирования Ψ=2÷3 . Для вычисления Ψ для других алгоритмов криптографической защиты информации необходимо проводить исследования для выявления эквивалентных ключей. Следует учесть, что вычислительная мощь вычислительных средств удваивается каждые 18÷24 месяцев (Δt = 1,5÷2 года) - эмпирический закон Мура. Если необходимо, чтобы ключи были устойчивы к вскрытию грубой силой в течение 5 лет, то необходимо соответствующим образом планировать использование ключей. С учетом вышесказанного перепишем формулу (4) в виде:
где [T']=[год] Следует учесть, что параметр Δt нужно время от времени пересматривать, особенно в периоды смены поколений микросхем и внедрения новых достижений в технологии. Пока обоснованным выглядит представление динамики роста вычислительной мощи со следующими значениями параметра удвоения: Δt = 2 года в период с 1971 г. по 1993 г., Δt = 4 года в период с 1993 г. по 1999 г. и Δt = 0.6 года от 1999 г. Но эти числа дают только часть ответа. Дело в том, что машина заведомо раскрывающая ключ за год, имеет 8% шанс раскрыть ключ за месяц. Если при этом ключ меняют 1 раз в месяц, то есть 8% вероятность раскрыть ключ еще во время его использования. Более того, пусть есть машина, отыскивающая ключ за месяц, а ключ меняется каждый час. Несмотря на то, что вероятность найти данный ключ за час всего 0,14%, вероятность найти правильный ключ до его смена за месяц использования такой схемы = 63%, причем эта цифра не зависит от частоты смена ключа. Т.о. частая смена ключей позволяет разве что минимизировать последствия взлома системы, но во многих системах это все равно недопустимый риск. Некоторые алгоритмы шифрования имеют криптографически слабые и полуслабые ключи - специфические ключи, менее безопасные чем другие ключи. Следует использовать специальные алгоритмы, которые используются для проверки при генерации ключей для устранения возможности выработки криптографически слабых (полуслабых) ключей. Литература
|
|
CITForum © 1997–2025