FEAL | это... Что такое FEAL? (original) (raw)

FEAL
Создатель: Акихиро Симидзу и Сёдзи Миягути (NTT)
Опубликован: FEAL-4 в 1987; FEAL-N/NX в 1990
Размер ключа: 64 бит (FEAL), 128 бит (FEAL-NX)
Размер блока: 64 бит
Число раундов: изначально 4, потом 8 и потом переменное количество (рекомендуемо 32)
Тип: Сеть Фейстеля

FEALблочный шифр, предложенный Акихиро Симидзу и Сёдзи Миягути.

В нем используются 64-битовый блок и 64-битовый ключ. Его идея состоит и в том, чтобы создать алгоритм, подобный DES, но с более сильной функцией этапа. Используя меньше этапов, этот алгоритм мог бы работать быстрее. К несчастью, действительность оказалась далека от целей проекта.

Содержание

Описание

В качестве входа процесса шифрования используется 64-битовый блок открытого текста. Сначала блок данных подвергается операции XOR с 64 битами ключа. Затем блок данных расщепляется на левую и правую половины. Объединение левой и правой половин с помощью XOR образует новую правую половину. Левая половина и новая правая половина проходят через N этапов (первоначально 4). На каждом этапе половина объединяется с помощью функции F с 16 битами ключа и с помощью XOR — с левой половиной, создавая новую правую половину. Исходная правая половина (на начало этапа) становится новой левой половиной. После N этапов (левая и правая половины не переставляются после N-го этапа) левая половина снова объединяется с помощью XOR с правой половиной, образуя новую правую половину, затем левая и правая объединяются вместе в 64-битовое целое. Блок данных объединяется с помощью XOR с другими 64 битами ключа и алгоритм завершается.

Функция F

FEAL InfoBox Diagram.png

Функция F берет 32 бита данных и 16 битов ключа и смешивает их вместе. Сначала блок данных разбивается на 8-битовые кусочки, которые затем объединяются с помощью XOR и заменяют друг друга.

S_0(a,b) = циклический сдвиг влево на 2 бита ((a+b)\mod{256})

S_1(a,b) = циклический сдвиг влево на 2 бита ((a+b+1)\mod{256})

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

Генерация ключа

Сначала 64-битовый ключ делится на две половины, к которым применяются операции XOR и функции f_k.

Функция f_k: два 32-битовых входа разбиваются на 8-битовые блоки. Затем в алгоритме шифрования/дешифрования используются 16-битовые блоки ключа.

Источники

Ссылки

Просмотр этого шаблона Симметричные криптосистемы
Поточный шифр A3A5A8DecimMICKEYRC4RabbitSEALSOSEMANUKTriviumVMPC
Сеть Фейстеля ГОСТ 28147-89BlowfishCamelliaCAST-128CAST-256CIPHERUNICORN-ACIPHERUNICORN-ECLEFIACobraDFCDEALDESDESXEnRUPTFEALFNAm2HPCIDEAKASUMIKhufuLOKI97MARSNewDESRaidenRC5RC6RTEASEEDSinopleTEATriple DESTwofishXTEAXXTEA
SP-сеть 3-WAYABCAES (Rijndael) • AkelarreAnubisARIABaseKingBassOmaticCRYPTONDiamond2Grand CruHierocrypt-L1Hierocrypt-3KHAZADLuciferPresentRainbowSAFERSerpentSHARKSQUAREThreefish
Другие FROGNUSHREDOCSHACALSC2000