Спосіб шифрування даних на основі двох несумісних груп операцій
Номер патенту: 53505
Опубліковано: 11.10.2010
Автори: Лужецький Володимир Андрійович, Дмитришин Олександр Васильович
Формула / Реферат
Спосіб шифрування даних на основі двох несумісних груп операцій, який полягає в тому, що послідовність двійкових символів відкритого тексту розбивають на n-бітні блоки, кожний з яких послідовно розміщують в накопичувачі даних, при цьому дані з виходу накопичувача даних, і дані відповідного підключа
з виходу накопичувача секретного ключа кожного циклу надходять на вхід функції перетворення
, яка є множенням значення даних
на першу складову підключа зашифрування
за модулем mі, який є другою складовою підключа
, функцію
реалізують за допомогою пристрою множення за модулем, який відрізняється тим, що зашифрування даних виконують L циклів, перша та друга складові підключа
містять по два коефіцієнти
,
,
, які генерують, разом із секретним підключем
, на пристрої розширення ключів з початкового секретного ключа
і заносять в накопичувач секретного ключа, підключ
і вхідний блок даних дані
подають на входи суматора за модулем 2, який реалізує функцію
, отриманий результат та складові підключа
подають на входи пристрою, який реалізує функцію
, якщо
або
, якщо
, а при розшифруванні, яке проводять в оберненому порядку по відношенню до зашифрування, на пристрої розширення ключів генерують складові підключа
, які заносять в накопичувач секретного ключа і подають в зворотному порядку, в кожному циклі блок даних
і відповідні складові підключа
з виходу накопичувача секретного ключа подають на входи пристрою, який реалізує функцію
, якщо
або
, якщо
, отриманий результат і відповідний підключ
з виходу накопичувача секретного ключа подають на входи суматора за модулем 2, що реалізує функцію
.
Текст
Спосіб шифрування даних на основі двох несумісних груп операцій, який полягає в тому, що послідовність двійкових символів відкритого тексту розбивають на n-бітні блоки, кожний з яких послідовно розміщують в накопичувачі даних, при цьому дані ri 1 з виходу накопичувача даних, і дані 3 53505 L f (Ri 1, KLi ) півблока, тобто i , при цьому як циклову функцію перетворення використовують моRi 1 дульне множення значення накопичувача Ni 1 правого півблока на ключ зашифрування K i\ (K i )E (mod m) , так що у накопичувач наступного циклу заносять півблока Li Ri (K i )E (mjdm) 1 f (Ri 1, K i ) , Ni лівого число тобто (K i )E (mod m) Ri 1 , а при розшифруванні, яке проводиться в оберненому порядку по відношенню до зашифрування, у кожному циклі в Lj I основному режимі значення накопичувача Nj I лівого півблока подають на вхід циклової фуg(Li 1, KI j 1) нкції перетворення , при цьому як циклову функцію перетворення використовують моLj I дульне множення значення накопичувача Nj I лівого півблока на ключ розшифрування K \j \ (K I j 1) E (mod m) N , так що у накопичувач i правого півблока наступного циклу заноситься Rj число Rj f \ (L j 1, K I j 1) Lj Lj 1 1 K \j \ (mod m) (KI j 1) E тобто , (mod m) , а зна Rj 1 чення накопичувача правого півблока сумують за модулем m зі значенням виходу циклової g(L j 1, KI j 1) функції перетворення і результат Ni заносять в накопичувач лівого півблока наступL j R j 1 g(L j 1, KI j 1)(mod m) ного циклу, тобто , а в режимі використання лазівки обчислюють підN L несення значення j I накопичувача j I лівого півблока до степеня D за модулем m, тобто обчи Xj 1 (L j 1 )D (mod m) слюють , і потім з отриманого числа обчислюють корінь степеня D за модулем N m, і в накопичувач i правого півблока заносять Кj D X j 1 число , тобто циклова функція перетвоh(L j 1, L(m)) D X j 1 (mod m) рення має вигляд , а Ri 1 значення накопичувача правого півблока сумують за модулем m зі значенням виходу тепер h(L j 1,L(m)) вже циклової функції перетворення , і Ni результат заносять в накопичувач лівого півблока наступного циклу, тобто L j R j 1 h(L j 1, L(m)(mod m) m pq - модуль , де перетворення, котрий є добутком двох простих чисел р і q, L(m) -узагальнена функція Ейлера числа ш, показники степенів Е і D пов'язані умовою ED 0(modL(m)) (Патент України № 50199, МІЖ H04L9/06, Бюл. №10, 2002 p.). 4 Недоліками аналогу є недостатня швидкодія роботи шифру, за рахунок великої обчислювальної складності отримання ключа зашифрування циклових функції та збільшення зашифрованого блоку даних на два біти порівняно із блоком відкритого тексту, що збільшує складність реалізації способу. Найбільш близьким за сукупністю ознак до запропонованого є спосіб шифрування даних для систем обробки в ЕОМ, який полягає в тому, що послідовність двійкових символів відкритого тексту розбивають на n- бітні блоки, кожний з яких послідовно розміщують в накопичувачі, надалі накопичувачі даних, зашифрування яких складається з чотирьох циклів, при цьому дані ги з виходу (і-1)-го накопичувача тексту, надалі накопичувача даних, і K дані відповідного підключа i з виходу і-го накопичувача секретного ключа кожного циклу надходять на вхід циклової функції, надалі функції, пеf (ri 1, K i ) ретворення , яка є множенням значення ri 1 даних на першу складову підключа зашифрування А1 за модулем ті, який є другою складовою K підключа i які розміщують в і-му накопичувачі секретного ключа, а функцію f (ri 1, Ki ) ri 1 Ai modmi реалізують за допомогою блока множення за модулем, надалі пристрій множення за модулем, на вхід якого додатково m подають значення модуля i з виходу і-го накопичувача секретного ключа, а при розшифруванні, яке проводять в оберненому порядку по відношенню до зашифрування, у кожному циклі, дані ri 1 з виходу (і-1)-го накопичувача і дані відповідK ного підключа 5 i з виходу (5-і)-го накопичувача секретного ключа подають на вхід функції перетворення f (ri 1, K 5 i ) ri ri 1 A 51 i , яка є множенням 1 з (і-1)-го накопичувача даних на пезначення ршу складову підключа розшифрування за модулем, який є другою складовою підключа розшифрування, які подають з (5-і)-го накопичувача секретного ключа і реалізують за допомогою пристрою множення за модулем (Патент України № 38795, МПК H04L9/06, Бюл. №2, 2009 р.). Недоліками способу-прототипу є те, що знаm чення кожного наступного модуля i яке подаєтьf (ri 1, K i ) ся на вхід функції перетворення залежить від значення попереднього модуля, що зменшує криптографічну стійкість шифру та збільшення зашифрованого блоку даних на один біт порівняно із блоком відкритого тексту, що збільшує складність реалізації способу. В основу корисної моделі поставлена задача створення способу шифрування даних на основі двох несумісних груп операцій, в якому за рахунок m використання незалежних значень модулів i та введення додаткової арифметичної операції досягається можливість підвищення криптографічної стійкості шифру і за рахунок використання значень 5 53505 модулів т, тієї ж розрядності, що і блоки відкритих текстів досягається можливість усунення надлишковості зашифрованих блоків даних, що призводить до зменшення складності реалізації способу. Поставлена задача вирішується тим, що в спосіб шифрування даних на основі двох несумісних груп операцій, який полягає в тому, що послідовність двійкових символів відкритого тексту розбивають на n- бітні блоки, кожний з яких послідовно розміщують в накопичувані даних, при r цьому дані i 1 з виходу накопичувана даних, і дані K відповідного підключа i з виходу накопичувача секретного ключа кожного циклу надходять на вхід f (ri 1, K i ) функції перетворення , яка є множенням ri 1 значення даних на першу складову підключа m зашифрування Аi за модулем i , який є другою K f (ri 1, K i ) складовою підключа i , функцію реалізують за допомогою пристрою множення за модулем, зашифрування даних виконують L циклів, K перша та друга складові підключа i містять по два m'i , (m''i ) , які генеруmi 2 B ють, разом із секретним підключем i на пристрої розширення ключів з початкового секретного клюk ча 0 і заносять в накопичувач секретного ключа, B r підключ i і вхідний блок даних дані i 1 подають на входи суматора за модулем 2, який реалізує g(ri 1, Bi ) ri 1 Bi функцію , отриманий результат Ki та складові підключа подають на входи пристрою, який реалізує функцію '' ' mi , A i A 'i A ''i i mi Ai коефіцієнти n (m'i ) , A ' 'i ' g(ri 1, Bi ) A ' i modm' i f (g(ri 1, Bi ), K i ) , якщо ' g(ri 1, B i ) mi або (g(ri 1,Bi ) m'i ) A ''i modm''i f (g(ri 1,Bi ), K i ) m'i g(r ,B ) m'i якщо i 1 i , а при розшифруванні, яке проводять в оберненому порядку по відношенню до зашифрування, на пристрої розширення ключів генерують складові підключа K 'i : m'i, m''i, A 'i 1 (m'i ), A ''i 1 (m''i ) i B'i Bi , які заносять в накопичувач секретного ключа і подають в зворотному порядку, в кожному циклі блок K даних їм і відповідні складові підключа i з виходу накопичувача секретного ключа подають на входи пристрою, який реалізує функцію якщо якщо ri ri m'i 1 1 ' mi ' , або f (ri 1,K i ) (ri f (ri 1,Ki ) 1 ri m'i ) A ''i 1 A 'i m'i , , отриманий результат і відповідний підключ B i з виходу накопичувача секретного ключа подають на входи суматора за модулем 2, 6 що g( f (ri 1,K1), B'i) реалізує f (ri 1,K i ) B 'i функцію . На фіг.1 зображена схема пристрою, який реf (ri 1, K i ) алізує функцію ; на фіг. 2 - схема пристрою, що реалізує зашифрування блоку даних; на фіг. 3 - схема пристрою, який виконує розшифрування зашифрованого блоку даних. Пристрій, що зображений на фіг. 1 містить пристрій порівняння 1, перший та другий вхід якого з'єднано з першим та другим входом даного пристрою, вихід пристрою порівняння 1 з'єднано з першим входом першого блока комутації 2, першим входом другого блока комутації 3, першим входом третього блока комутації 4 та першим входом четвертого блока комутації 5, другі входи першого блоку комутації 2 і четвертого блоку комутації 5 з'єднано з другим входом даного пристрою, вихід блоку комутації 2 з'єднано з першим входом пристрою віднімання за модулем 2n 6, другий вхід якого з'єднано з першим входом даного пристрою, вихід пристрою віднімання за модулем 2n 6 з'єднано з першим входом пристрою множення за модулем 7, другий та третій входи якого з'єднано з виходами другого 3 та третього 4 блоків комутації відповідно, другий та третій входи другого блоку комутації 3 з'єднано з другим та третім входами даного пристрою відповідно, другий та третій входи третього блоку комутації 4 з'єднано з четвертим та п'ятим входами даного пристрою відповідно, вихід регістру 8 з'єднано з третіми входами першого блоку комутації 2 та четвертого блоку комутації 5, вихід пристрою множення за модулем 7 з'єднано з першим входом пристрою додавання за модулем 2n 9, другий вхід якого з'єднано з виходом четвертого блоку комутації 5, вихід пристрою додавання за модулем 2n 9 з'єднано з виходом даного пристрою. Пристрій, що зображений на фіг. 2 містить накопичувач даних 13, вихід якого з'єднано з першим входом блока комутації 14, вихід якого з'єднано з першим входом суматора за модулем 2 15, пристрій розширення ключів 10, вхід якого з'єднано з першим входом даного пристрою, виходи пристрою розширення ключів 10 з'єднано з входами накопичувача секретного ключа 11, перший, другий, третій та четвертий виходи якого з'єднано з першим, другим, третім та четвертим входами f (ri 1, K i ) пристрою 12, який реалізує функцію , п'ятий вихід накопичувача секретного ключа 11 з'єднано з другим входом суматора за модулем 2 15, вихід якого з'єднано з п'ятим входом пристрою 12, вихід якого є виходом даного пристрою і з'єднано з другим входом блока комутації 14, вхід накопичувана даних 13 з'єднано з другим входом даного пристрою. Пристрій, що зображений на фіг. З містить пристрій розширення ключів 10, вхід якого з'єднано з першим входом даного пристрою, виходи пристрою розширення ключів 10 з'єднано з входами накопичувача секретного ключа 11, перший, другий, третій та четвертий виходи якого з'єднано з першим, другим, третім та четвертим входами 7 53505 f (ri 1, K i ) пристрою 12, який реалізує функцію , накопичувач даних 13, вхід якого з'єднано з другим входом даного пристрою, вихід накопичувача даних 13 з'єднано з першим входом блока комутації 14, вихід якого з'єднано з п'ятим входом пристрою 12, вихід якого з'єднано з першим входом суматора за модулем 2 15, вихід якого є виходом даного пристрою і з'єднано з другим входом блока комутації 14, другий вхід суматора за модулем 2 15 з'єднано з п'ятим виходом накопичувача секретного ключа 11. Спосіб шифрування даних на основі двох несумісних груп операцій здійснюють таким чином. В f (r , K ) регістр 8, пристрою, що реалізує функцію i 1 i (див. фіг. 1), заносять 0, на входи пристрою порівr няння 1 подають вхідний блок даних i 1 , який ' r m'i шифруватимуть та модуль m i , якщо i 1 , то на перші (керуючі) входи блоків комутації 2, 3, 4 і 5 подають логічну одиницю, тоді на перший вхід пристрою віднімання 6 з блока комутації 2 подають 0, на другий та третій входи пристрою множення за модулем 7 з виходу блоків комутації 3 і 4 ' ' подають значення m i та A i відповідно, на другий вхід пристрою додавання 9 надсилають 0 з виходу r m'i четвертого блока комутації 5, якщо i 1 , то на перші входи блоків комутації 2, 3, 4 і 5 подають логічний нуль, тоді на перший вхід пристрою відніn мання за модулем 2 6 з блока комутації 2 надси' лають m i , на другий та третій входи пристрою множення за модулем 7 з виходу блоків комутації '' '' 3 і 4 подають значення m i , та A i , відповідно, на ' другий вхід пристрою додавання 9 надсилають m i з виходу четвертого блока комутації 5. Вхідний r блок даних i 1 надходить на пристрій віднімання r за модулем 2n 6, на якому від i 1 віднімають значення, яке надходить з першого блоку комутації 2, отриманий результат з виходу пристрою віднімання 6 надходить на пристрій множення за модулем 7, результат множення надходить на пристрій додавання за модулем 2n 9, де його додають із значенням, яке надходить з четвертого блоку комутації 5. Перетворений блок даних надходить на вихід f (r , K ) пристрою, який реалізує функцію i 1 i . Зашифрування блоку даних виконують таким чином. На пристрій розширення ключів 10 (див. k фіг. 2) надсилають початковий секретний ключ 0 B id з якого для кожного циклу генерують i i , якщо m' di , то обчислюють i 1d , стовують такі константи a di di 2n 2 n 2 3 2 , то ' mi такі константи a му випадку m'i di 1d , di 2n 1 2,c та викори4 , якщо n 1 2 та використовують 2,c 4 , в протилежно та використовують такі конста 8 a 1 d 2,c , нти m''i 4 , обчислюють 2n m'i . ' (m'i ) , та A ' 'i (m''i ) Значення множників A i розраховують на пристрої розширення ключів згідно такої функції (m'i ' ' (m i ) 1, якщо m'i0 a) 1 , b) ' (m i , якщо m i0 0 i m'i1 0, c) (m i ' ' ' 1 , 1, якщо m i0 0 im i ' ' ' де m i0 - значення 0-го біта m i , m i1 - значен (m''i ) розраховують так само. K та Bi Отримані складові підключа i надходять в накопичувач секретного ключа 11 з якого підключ Bi r та вхідний блок даних i 1 через блок комутації 14 надходять на суматор за модулем 2 15, отриK маний результат та складові підключа i надходять на пристрій 12, який реалізує функцію f (g(ri 1,Bi ), Ki ) . Вище описані дії виконують L циклів, після завершення яких зашифрований блок даних подається на вихід пристрою зашифрування з виходу пристрою 12. Розшифрування зашифрованого блоку даних виконують в оберненому порядку по відношенню до зашифрування. На пристрій розширення ключів 10 (див. фіг. 3) надсилають початковий секретний k ключ 0 з якого для кожного циклу генерують Bi та di з якого, за тим же принципом, що і під час ' ня 1-го біта m i , ' '' зашифрування, обчислюють значення m i і m i та обирають константи a, b і с Значення множників A 'i 1 1 '' (m'i ) та A ''i (m i ) розраховують на пристрої розширення ключів згідно такої функції 1 i m'io 2, якщо a ' mi 2, 1, 1 i m'io якщо а ' (m i 1 ' (m i ) b) 1, якщо m io ' 4) 2, якщо с 1, (m i ' ' 0 i m'i1 4, m'io 0, m ' i2 ' 0 i m'i1 1, ' (m i (m i )) 1, якщо с (m'i (m'i )) 1 1, якщо с 4, m'io 0 i m'i1 m'i2 1, (m'i (m'i )) 1 1, якщо с 4, m'io m' i2 1, 4, m io 0 i m'i1 m'i2 1, 0 i m'i1 ' ' ' де m io , m i1 , m i2 , - значення 0-го, 1-го та 2-го бітів відповідно, 1 (m'i ) розраховують так само. ' B ' Bi Отримані складові підключа K i та i , в оберненому порядку, надходять в накопичувач секрет' ного ключа 11 з якого складові підключа K i та r вхідний блок даних i 1 через блок комутації 14 надходить на пристрій 12, який реалізує функцію f (ri 1,K 'i ) , отриманий результат та підключ В'; надходять на суматор за модулем 2 15, з виходу суматора за модулем 2 отримують перетворений r g( f (ri 1,K 'i ) блок даних i , який через блок комутації 14 надходить на пристрій 12. Вище описані дії 9 53505 виконують L циклів, після завершення яких розшифрований блок даних подають на вихід при Комп’ютерна верстка Д. Шеверун 10 строю розшифрування з виходу суматора за модулем 2 15. Підписне Тираж 26 прим. Міністерство освіти і науки України Державний департамент інтелектуальної власності, вул. Урицького, 45, м. Київ, МСП, 03680, Україна ДП “Український інститут промислової власності”, вул. Глазунова, 1, м. Київ – 42, 01601
ДивитисяДодаткова інформація
Назва патенту англійськоюMethod for data encoding based on two incompatible groups of operations
Автори англійськоюLuzhetskyi Volodymyr Andriiovych, Dmytryshyn Oleksandr Vasyliovych
Назва патенту російськоюСпособ шифрования данных на основе двух несовместимых операций
Автори російськоюЛужецкий Владимир Андреевич, Дмитришин Александр Васильевич
МПК / Мітки
МПК: H04L 9/06
Мітки: груп, даних, основі, спосіб, операцій, несумісних, шифрування, двох
Код посилання
<a href="https://ua.patents.su/5-53505-sposib-shifruvannya-danikh-na-osnovi-dvokh-nesumisnikh-grup-operacijj.html" target="_blank" rel="follow" title="База патентів України">Спосіб шифрування даних на основі двох несумісних груп операцій</a>
Попередній патент: Ґрунтообробний робочий орган
Наступний патент: Модуляційний спосіб вимірювання швидкості звуку в матеріалах
Випадковий патент: Спосіб лікування хронічного обструктивного захворювання легень на фоні хронічного панкреатиту