ОСНОВНЫМ МЕТОДОМ защиты от прослушивания данных во время их передачи по открытым коммуникационным каналам является шифрование. Однако пропускная способность каналов растет столь стремительно, что производительность шифрующих устройств за ними не поспевает. Это создает определенные проблемы при построении высокоскоростных защищенных сетей. Сегодня технологией Gigabit Ethernet (с быстродействием 1 Гбит/с) уже никого не удивишь, а средства шифрования потока данных на такой скорости только начали появляться. В частности, некоторые из них были представлены на конференции «РусКрипто-2002».

Сразу отмечу: быстрые алгоритмы шифрования отличаются от универсальных тем, что ориентированы на определенную архитектуру процессора. Именно благодаря ей они обеспечивают максимум производительности, и при переносе на другую платформу результат оказывается непредсказуемым. Поэтому быстрые алгоритмы шифрования, как правило, не соответствуют стандартам и их практически не применяют в общедоступных системах. Но для корпоративных сетей или intranet, где можно жестко устанавливать технологию шифрования, такие методы вполне применимы.

Кроме того, быстрые алгоритмы всегда симметричны, что приводит к возникновению проблемы распространения ключей, которая должна решаться внешними по отношению к системе шифрования средствами. Как правило, для этой цели используют схемы шифрования с открытым ключом.

Современные симметричные алгоритмы подразумевают три этапа работы с данными: подстановка, перемешивание и повторение в цикле. Первые две операции обычно управляются ключом, что и приводит к невозможности прочтения исходных данных теми, кто данного ключа не знает.

Практически все технологии шифрования потоков основаны на блочных алгоритмах, которые кодируют блок данных строго фиксированной длины. Поток делится на соответствующие блоки, а затем каждый из них шифруется отдельно. Создатели быстрых шифров стремятся сократить количество циклов или раундов шифрования для одного блока данных, оптимизировать объем таблицы подстановок под аппаратные возможности вычислительной платформы, а для перемешивания использовать наиболее быстрые операции из имеющихся в системе команд процессора. В качестве платформы могут применяться как универсальные процессоры, так и специализированные. Первый путь является программной реализацией шифрования, а второй — аппаратной.

Программная реализация позволяет разработчику не заниматься выпуском соответствующих процессоров, но зато ему приходится подстраиваться под существующую архитектуру процессора. По этому пути, в частности, пошла компания «ЛАН Крипто», обнародовавшая свои планы создания алгоритма кодирования, который должен быть оптимизирован под процессор Pentium IV.

Особенностью этого процессора является очень маленький размер cash-памяти второго уровня — 8 Кбайт. Сотрудники «ЛАН Крипто» установили, что оптимальный размер таблицы подстановок составляет 4 Кбайт: при этом она не «вымывается» из cash-памяти, а процессор не тратит время на ее повторное считывание из более медленной оперативной памяти.

Одну таблицу разработчики разбили на две (по 2 Кбайт каждая). Поскольку в таблице хранятся 32-битные слова, разрядность ее адреса определяется девятью битами, что приводит к несбалансированной подстановке: только первые 9 бит используются для адреса. При наложении данных из таблицы разработчики предложили использовать не оператор «исключающее ИЛИ» (XOR), а более сложное преобразование. Размеры блока и ключа были приняты такими же, как и в стандарте AES: блок 128 бит, а ключ 128, 192 или 256 бит. Число раундов зависит от размера ключа и варьируется в диапазоне от 8 до 10. На процессоре Pentium IV с тактовой частотой 2 ГГц достигнута скорость поточного шифрования около 800 Мбит/с.

Другой подход проповедует Николай Молдовян — профессор, доктор технических наук и главный научный сотрудник компании «Спектр». Он утверждает, что для реализации быстрых алгоритмов шифрования на любом универсальном процессоре достаточно добавить в набор его команд управляемую перестановку. Пока никто из производителей универсальных ЦП не прислушался к советам Молдовяна, но его фирма выпускает на заводе «Светлана» собственные микрочипы, реализующие необходимые операции.

Эти процессоры, выполненные с нормой проектирования 1,2 мк, позволяют шифровать данные со скоростью 800 Мбит/с. Конечно, такой подход требует больших затрат на разработку, однако и результат может оказаться впечатляющим. Так, при значительно меньшей тактовой частоте (производительности) шифропроцессоров «Спектра» они способны обеспечить примерно ту же скорость шифрования, что и высокоскоростные универсальные процессоры.

Таким образом, можно сказать, что сейчас появляются коммерческие средства шифрования, позволяющие защищать «на лету» достаточно мощные информационные потоки — вплоть до 1 Гбит/с.

Поделитесь материалом с коллегами и друзьями