Sokiruk@svitonline icon

Sokiruk@svitonline




Скачати 24.34 Kb.
НазваSokiruk@svitonline
Дата16.07.2012
Розмір24.34 Kb.
ТипДокументи

СМКЭС-2004

УДК 681.3.06


БЛОКОВИЙ СИМЕТРИЧНИЙ ШИФР НА ОСНОВІ АРИФМЕТИЧНИХ ОПЕРАЦІЙ ЗА МОДУЛЕМ 2n


Сокирук В.В., Вінницький національний технічний університет, sokiruk@svitonline.com


Пропонується блоковий симетричний шифр, в основу якого покладені принципи, які раніше не використовувались при побудові блокових шифрів. В якості базових використовуються арифметичні операції за модулем 2n, де n – розрядність блоку даних. Блоки даних та секретні ключі розглядаються як n-розрядні цілі числа, над якими виконуються операції множення, ділення, додавання та віднімання за модулем 2n.

Процедури зашифрування та розшифрування використовують однаковий секретний ключ K, який складається з 4-х n-розрядних підключів K1-K4. Кожен підключ використовується в якості операнда один раз.

Операція зашифрування представляється у вигляді виразу:

(1)

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

Для відновлення блоку відкритого тексту M з блоку шифротексту C необхідно виконати зворотні арифметичні дії, тобто:

(2)

Операція розшифрування складається з двох операцій ділення і операції віднімання за модулем 2n, та операції додавання за модулем 2.

Необхідною і достатньою умовою однозначного відтворення блоку відкритого тексту M є вибір таких підключів K1 і K3, які є непарними цілими числами. В цьому випадку гарантується існування єдиного результату операцій ділення за модулем 2n.

Використання в якості модуля числа 2n дозволяє значно спростити обчислення виразів (1) і (2). Так, відомі алгоритми виконання операції множення за модулем складаються з дій, що реалізують безпосередньо множення, і дій, що визначають остачу від ділення результату (проміжного або остаточного) на модуль. Особливість реалізації операції множення за модулем 2n полягає в тому, що для отримання остач не потрібні додаткові арифметичні дії. Достатньо лише відкидати цифри розрядів, що мають номери більші за n.

Для виконання операції ділення за модулем 2n також існує простий алгоритм, який дозволяє послідовно визначити цифри всіх розрядів результату. Крім того, операції ділення в алгоритмі розшифрування можуть бути замінені більш швидкими операціями множення, якщо попередньо обчислити значення виразів та . Тоді операцію розшифрування можна представити як:

(3)

Розрядність блоку даних n не обмежена і може змінюватись в процесі шифрування. Для ефективної програмної та апаратної реалізації значення n має обиратись кратним розрядності обчислювального пристрою.




Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©zavantag.com 2000-2013
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи