Здавалка
Главная | Обратная связь

Функції, що використовуються у мережі Фейстеля



P-блок (P-box)

Блок перестановок усього лише змінює положення цифр й є лінійним. Цей блок може мати дуже велику кількість входів-виходів, однак у силу лінійності систему не можна вважати криптостійкою. Криптоаналіз ключа для n-розрядного P-блоку проводиться шляхом подачі на вхід n-1 різних повідомлень, кожне з яких складається з n-1 нуля («0») і 1 одиниці («1»).


Схема 8-розрядного P-блоку

S-блок (S-box)

Блок підстановок (S-блок) складається з: дешифратора, що перетворює n-розрядний двійковий сигнал в однорозрядний сигнал за підстановкою 2n; системи комутаторів внутрішніх з'єднань (усього з'єднань 2n!); та шифраторів, що переводить сигнал з однорозрядного 2n-ого в n-розрядний двійковий. Аналіз n-розрядного S-блоку при великому n досить складний. Однак реалізувати такий блок на практиці дуже складно, тому що число можливих з'єднань украй велике (2n!). На практиці блок підстановок використається як частина більше складних систем.

У загальному випадку S-блок може мати нерівне число входів/виходів. У цьому випадку в системі комутації від кожного виходу дешифратора може йти не одне з'єднання, а 2 або більше або не йти зовсім. Те ж саме справедливо й для входів шифратора.

В електроніці можна безпосередньо застосовувати наведену нижче схему, у програмуванні ж генерують таблиці заміни. Обидва ці підходи є еквівалентними, тобто файл, зашифрований на комп'ютері, можна розшифрувати на електронному пристрої й навпаки.


Схема 3-розрядного S-блоку

Таблиця заміни для наведеного 3-розрядного S-блоку
№ комбінації
Вхід
Вихід

 

Циклічний зсув

 


Циклічний зсув вліво на 3 розряди 8-бітної шини

Можна показати, що циклічний зсув є частиною P-блоку.

У найпростішому випадку (зсув на 1 біт), крайній біт переміщається на інший кінець регістра або шини. Залежно від того, який біт береться – правий або лівий, зсув називається вправо або вліво. Зсув на більше число біт можна розглядати, як багаторазове застосування зсуву на 1.

 

 

Циклічний зсув на m біт для n-розрядного входу (m < n)
Напрямок зсуву Порядок проходження бітів до зсуву Порядок проходження битов після зсуву
вліво b0,b1,b2,...,bn − 1 bm,bm + 1,...bn − 1,b0,b1,...,bm − 1
вправо b0,b1,b2,...,bn − 1 bnm,bnm + 1,...bn − 1,b0,b1,...,bnm − 1

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.