Сеть Файстеля
В начале 1970-х годов, сознавая необходимость защиты уже электронной информации при передаче данных в сетях ЭВМ (особенно бизнес-транзакций, при осуществлении денежных переводов и передаче конфиденциальных финансовых данных), компания International Business Machines (она же известная во всем мире как IBM) приступила к выполнению собственной программы научных исследований, посвященных защите информации в электронных сетях, в том числе и криптографии. Так развитие одной передовой технологии повлекло за собой настоящую революцию в другой.
Поскольку в ряде университетов Соединенных Штатов (таких, как Станфордский университет и Массачусетский технологический институт) всегда существовал интерес к данной области исследования, IBM постаралась привлечь университетских специалистов к разработке методов защиты электронной информации. Это было отчасти вызвано и тем, что многие из специалистов этих университов активно сотрудничали с военными кругами и соответственно специалистами военной разведки - основными потребителями криптографических методов сокрытия и защиты информации. Поэтому университетские криптографы обладали несколько большими объемами информации о защите информации, нежели другие профессиональные математики и аналитики. Ведь военные специалисты в то время были единственными источниками достойной научной информации, посвященной криптографии, хорошо знавшими криптографию не только с теоретической, но и практической стороны.
Команду разработчиков фирмы IBM, приступившую к исследованию систем шифрования с симметричной схемой использования ключей, возглавил доктор Хорст Файстель, в то время уже ставший довольно известным криптографом.
Файстель до того момента уже успел тесно поработать с Клодом Шенноном в компании Bell Laboratories. Идеи Шеннона вдохновляли многих исследователей на оригинальные изобретения. Свидетельством тому является довольно большое количество патентов, зарегистрированных и принятых в середине 60-х годов Национальным патентным бюро США (United States Patent and Trademark Office). Файстель активно сотрудничал с Шенноном и не мог не заразиться его идеями. На его счету как минимум два патента и несколько революционных статей в области криптографии и криптоанализа.
Воплотить большую часть из своих идей в жизнь он смог с помощью возможностей, предоставленных ему компанией IBM, не жалевшей денег и специалистов на разработку новых методов защиты электронной информации. Передовая технология требовала инвестиций и отнюдь не гарантировала быстрой отдачи, требовалось время на разработку действительно эффективных средств защиты электронного документооборота - эффективной и стойкой к взлому шифросистемы и методов ее использования. Представители руководства IBM понимали это и в достаточной степени предоставили свободу разработчикам, поставив перед ними в общем-то нелегкую и нетривиальную задачу.
Надо признать, что результат оправдал ожидания. Им стала проведенная в исследовательской лаборатории IBM Watson Research Lab разработка новой оригинальной архитектуры построения симметричных шифров на базе необратимых преобразований. Архитектура нового способа шифрования впоследствии была названа в классической литературе архитектурой Файстеля (на данный момент в русской и зарубежной криптографии существует более устоявшийся термин: сеть Файстеля или Feistel's network). Позднее, в соответствии с разработанными Хорстом принципами, был сконструирован шифр Люцифер (Lucifer) - первый серьезный блочный шифр, описание которого появилось в открытой литературе и вызвало новую волну интереса специалистов к криптографии в целом.
Построение сложных криптографически стойких, но обратимых преобразований представляет собой довольно трудоемкую задачу. Кроме того, практическая реализация обратимых преобразований обычно содержит неэффективные алгоритмы, что приличным образом сказывается на скорости шифрования. По этой причине Файстель решил не искать решение проблемы обратимого преобразования данных, а попытаться найти схему шифрования, в которой такие преобразования не участвовали бы вовсе.
Идея использования операции "исключающее ИЛИ" возникла из классических примеров систем шифрования, а именно из идеи использовать самый простой с технической точки зрения способ шифрования - гаммирование. Стойкость такого способа, как известно, зависит от свойств вырабатываемой гаммы. Следовательно, процесс выработки гаммы - двоичной последовательности, которую затем суммируют с открытым текстом, - является самым узким местом во всем способе.
Файстель разрешил проблему следующим образом. Изначально выбирается размер блока данных, который будет зашифрован за одну итерацию алгоритма шифрования. Обычно размер блока фиксирован и не изменяется во время работы алгоритма над открытым текстом. Выбрав достаточно большого размера блок данных, его делят, например, пополам и затем работают с каждой из половинок. Если размер левой половинки равен размеру правой, такую архитектуру называют классической или сбалансированной сетью Файстеля. Если же деление блока данных происходит не на равные части, то такой алгоритм называют разбалансированной сетью Файстеля.
Предложенная им схема шифрования легко может быть продемонстрирована с помощью схемы шифрования (рис. 4.1).