an> + x 79 + x 43 + x 42 + 1.
З значення, отриманого генератором, випадковим чином вибираються три позиції, які і складають змінну RCB, використовувану для управління положенням ротора. Також вони будуть частиною ключа даного алгоритму. p align="justify"> Таблиця підстановки R заповнюється попередньо. У розробляється мною ПС це відбувається аналогічно заповненню роторів з криптосистеми В«ЕнігмаВ». p align="justify"> Для отримання стану ротора, необхідно обчислити наступний вираз:
RS = (RS + c + RCB) mod 256.
При першому обчисленні значення RS, значення RSіc обнуляються. Тобто при початку роботи RSвичісляется як:
RS = RCBmod 256.
Далі, для обчислення індексу таблиці підстановки необхідно виконати такий вислів:
i = (p + RS) mod 256.
Після обчислення якого, ми можемо отримати значення зашифрованого байта з таблиці підстановки, скориставшись знайденим індексом підстановки:
= R [i].
При шифруванні наступного байта початкового тексту, ми будемо використовувати значення байта шіфротекста отриманого на попередньому кроці.
Довжина ключа даного алгоритму складе 784 байтів. Що являє собою досить таки значну значення. Користувач не може запам'ятати таку кількість даний, тому необхідно передбачити можливість генерації ключових даних на основі користувальницького пароля. Що і здійснюється за допомогою вимоги введення користувачем початкових значень положення таблиці підстановки Rи генератора на основі одного зсувного регістру з лінійною зворотним зв'язком LFSR довжиною 80 біт. br/>В
Сх.3: вдосконалена В«ЕнігмаВ»
На Сх.3 представлена ​​послідовність виконання алгоритму, що є вдосконаленим, по відношенню до класичного алгоритмом В«ЕнігмаВ».
Достоїнствами даної криптосистеми є наступні пункти:
1. простота програмної та апаратної реалізації;
2. висока крипостійкість;
. висока швидкість шифрування.
Швидкість шифрування можна пояснити тим фактом, що для шифрування одного байта файлу, поданого на вхід, необхідно виконати тільки три операції додавання і одну операцію адресації за індексом, атакож один такт роботи регістраLFSR.
.3 Дешифрування
.3.1 В«ЕнігмаВ»
Дана криптосистема є симетричною, тому для розшифровки по...