PIKEPIKE — поточный шифр, предложенный Россом Андерсоном на смену взломанного им шифра FISH («FIbonacci SHrinking») в 1994 году. ИсторияВ 1994 году Росс Андерсон опубликовал работу[1], посвящённую вскрытию криптосистемы FISH (её представили в Уве Блёхер и Маркус Дихтль в 1993 году)[2] и разработке новой — PIKE. В своей работе Андерсон описал как слабые стороны FISH, так и достоинства аддитивного генератора (иногда называемый запаздывающим генератором Фибоначчи)[3], на котором основан FISH, после чего была предложена новая криптосистема — PIKE[4]. Андерсон стремился получить быстрый программный потоковый шифр с одной стороны и достаточно криптостойкий с другой, поэтому в конструкции PIKE был использован пороговый механизм управления движением регистров, аналогичный схеме A5. В своей работе Андерсон подчеркнул, что если бы в FISH в качестве управляющих битов использовались биты переноса, то криптостойкость этой системы была бы значительно выше. Именно поэтому в PIKE и был применен пороговый механизм, заимствованный из A5. ОписаниеЗа основу криптосистемы PIKE были взяты три аддитивных генератора: В качестве управляющих битов используются биты переноса[5] С1, С2 и С3 сумматоров OR1, OR2 и OR3. Анализирую их состояние, схема синхронизации принимает решение, какие регистры сдвигать. Если все С1, С2 и С3 одинаковы, сдвиг произойдет во всех трёх регистрах, если одинаковое состояние имеют лишь два бита переноса, то сдвигать будут соответствующие им регистры. Сдвиг будет произведён с задержкой в 8 циклов. Очередное слово шифрующей гаммы получается применением операции XOR над самыми младшими словами всех трёх генераторов. Ожидаемый прирост скорости данного алгоритма по сравнению с FISH составляет около 10 %, что является следствием того, что в PIKE выполняется в среднем 2.75, а не 3 обновления состояния генераторов, для порождения одного слова гаммы. На 33 МГц процессоре Intel 486 возможно достичь скорости шифрования в 62 Мбайт/сек при реализации на языке Си, пример которой может быть найден в[6], в которой ключ генерируется при помощи хеш-функции типа SHA. Предполагается перезагружать ключ каждые слов гаммы для того, чтобы использовалась лишь небольшая доля минимальной длины периода генератора. Для получения начального 700-байтного заполнения целесообразно использовать качественную хеш-функцию.
Сравнение скорости шифрования
Следует отметить, что по данным за 2004 год, зафиксированных случаев взлома данного шифра нет[8]. Возможной областью применения данного алгоритма шифрования является цифровая связь. Примечания
|