Спосіб шифрування інформації, поданої бінарним кодом
Номер патенту: 41481
Опубліковано: 17.09.2001
Автори: Молдовян Алєксандр Андрєєвіч, Молдовяну Пьотр Андрєєвіч, Молдовян Ніколай Андрєєвіч
Формула / Реферат
1. Спосіб шифрування інформації, поданої бінарним кодом, який включає формування секретного ключа, формування К≥1 блоків даних, які мають Р≥1 ділянок бінарного коду інформації, і перетворення блоків даних під керуванням ключа шифрування, який відрізняється тим, що додатково генерують D≥1 бінарних векторів, а формування блоків даних здійснюють шляхом приєднання бінарних векторів до відповідних ділянок бінарного коду інформації.
2. Спосіб за п.1, який відрізняється тим, що бінарні вектори генерують за випадковим законом.
3. Спосіб за п.1, який відрізняється тим, що бінарні вектори генерують за псевдовипадковим законом.
4. Спосіб за п.1, який відрізняється тим, що бінарні вектори приєднують до відповідних ділянок бінарного коду інформації в залежності від секретного ключа.
Текст
1. Спосіб шифрування інформації, поданої бінарним кодом, який включає формування секретного ключа, формування К≥1 блоків даних, які мають Р≥1 ділянок бінарного коду інформації, і перетворення блоків даних під керуванням ключа шифр ування, який відрізняється тим, що додатково генерують D≥1 бінарних векторів, а формування блоків даних здійснюють шляхом приєднання бінарних векторів до відповідних ділянок бінарного коду інформації. 2. Спосіб за п. 1, який відрізняється тим, що бінарні вектори генерують за випадковим законом. 3. Спосіб за п. 1, який відрізняється тим, що бінарні вектори генерують за псевдовипадковим законом. 4. Спосіб за п. 1, який відрізняється тим, що бінарні вектори приєднують до відповідних ділянок бінарного коду інформації в залежності від секретного ключа. (19) (21) 98127023 (22) 24.12.1997 (24) 17.09.2001 (31) 97104754 (32) 02.04.1997 (33) RU (86) PCT/RU97/00419, 24.12.1997 (46) 17.09.2001, Бюл. № 8, 2001 р. (72) Молдовян Алєксандр Андрєєвіч, RU, Молдовян Ніколай Андрєєвіч, RU, Молдовяну Пьотр Андрєєвіч, RU (73) ОТКРИТОЄ АКЦІОНЄРНОЄ ОБЩЄСТВО "МОСКОВСКАЯ ГОРОДСКАЯ ТЄЛЄФОННАЯ СЄТЬ", RU, МОЛДОВЯН АЛЄКСАНДР АНДРЄЄВІЧ, RU, МОЛДОВЯН НІКОЛАЙ АНДРЄЄВІЧ, RU, МОЛДОВЯНУ ПЬОТР АНДРЄЄВІЧ, RU (56) RU, 2072635, 27.01.1997. US, 5479513A, 26.12.1995 41481 Second International Workshop Proceedings (Leuven, Belgium, December 14-16, 1994), Lecture Notes in Computer Science, v. 1008, Springer-Verlag, 1995, pp. 86-96). У відомому способі шифр ування блоків виконують за допомогою формування секретного ключа, розбивання блоку даних, що перетворюється, на підблоки і почергової зміни останніх за допомогою операцій циклічного зсуву, підсумовування за модулем 2 і підсумовування за модулем 232, що виконуються у відношенні до поточного підблоку. Даний спосіб блочного шифрування забезпечує високу швидкість шифрування за умови реалізації у вигляді програми для ЕОМ. Але цей спосіб не є достатньо стійким до диференційного і лінійного криптоаналізу (Kalinski B.S., Yin Y.L. On Differential and Linear Cryptanalysis of the RC5 Encryption Algorithm. Advances in Cryptology - CRYPTO'95 Proc., Springer-Verlag, 1995, pp. 171-184), що пов'язане з тим, що в цьому способі криптоаналізу той, хто атакує, має можливість шифрування спеціально підібраних вхідних текстів. Найближчим за своєю технічною суттю до способу блочного шифрування, згідно з винаходом, є спосіб, описаний в стандарті США DES (National Bureau of Standards. Data Encryption Standard. Federal Information Processing Standards Publication 46. January 1977). Цей спосіб передбачає формування секретного ключа, розбиття вхідної інформації, поданої у вигляді бінарного коду, на ділянки довжиною по 64 біт, формування на їх основі 64-бітових блоків даних і перетворення блоків під керуванням секретного ключа. Перед перетворенням кожний блок даних розбивають на два 32-бітових підблока L і R, які по черзі перетворюють шляхом виконання 16 однотипних раундів перетворення. Один раунд перетворення полягає у виконанні операцій підстановки, перестановки та підсумовування за модулем 2, які виконуються над підблоком R. Кожний раунд завершується перестановкою підблоків R і L. Цей спосіб блочного шифр ування інформації забезпечує високу швидкість перетворень при реалізації у вигляді спеціалізованих електронних схем. Але цей спосіб має недоліки, а саме, до нього можуть бути е фективно застосовані способи криптоаналізу на основі спеціально підібраних вхідних блоків початкового тексту. Цей недолік пов'язаний з тим, що, маючи можливість здійснення криптоаналізу на основі підібраних початкових текстів, криптоаналітик може підібрати вхідні початкові тексти, при шифруванні яких виявляються статистичні властивості алгоритму шифр ування. В основу винаходу покладена задача розробити спосіб шифрування інформації, поданої бінарним кодом, в якому перетворення даних здійснювалось би таким чином, що для заданого фіксованого секретного ключа забезпечувалось би перетворення вхідного тексту в шифр текст, структура якого не була б визначена наперед, що робить виявлення статистичних властивостей алгоритму шифр ування більш складним, завдяки чому підвищується стійкість до криптоаналізу на основі підібраних вхідних текстів. Поставлена задача вирішується тим, що у способі шифрування інформації, поданої бінарним кодом, який включає формування секретного клю ча, формування К>1 блоків даних, що містять Р>1 ділянок бінарного кода інформації, і перетворення блоків даних під керуванням секретного ключа, згідно з винаходом додатково генерують D>1 бінарних векторів, а формування блоків даних здійснюють шляхом приєднання бінарних векторів до відповідних ділянок бінарного кода інформації. Завдяки такому рішенню структура блоків шифртекста залежить не тільки від секретного ключа і від структури ділянок бінарного кода інформації, але також і від структури бінарних векторів, яка задає залежність структури блоків шифртекста від бінарних векторів, завдяки чому стр уктура блока шифртекста не є заздалегідь визначеною для заданого початкового текста і заданого секретного ключа. Це робить виявлення статистичних властивостей алгоритму шифр ування більш складним, завдяки чому підвищується стійкість до криптоаналізу на основі підібраних початкових текстів. Новим є також те, що бінарні вектори генеруються за випадковим законом. Завдяки такому рішенню забезпечується випадкове модифікування блоку шифртекста, що підвищує стійкість до відомих методів криптоаналізу. Новим є також те, що бінарні вектори генеруються за псевдовипадковим законом. Це дозволяє реалізувати спосіб за винаходом програмними засобами на персональних комп'ютерах без використання додаткових електронних схем для генерації випадкових чисел. Новим є також те, що бінарні вектори приєднують до відповідних ділянок бінарного коду інформації в залежності від секретного ключа. Це забезпечує підвищення стійкості шифрування за рахунок введення додаткової невизначеності до процедур формування блоку даних. Нижче сутність винаходу більш докладно роз'яснюється на прикладах його здійснення з посиланнями на креслення, які додаються. На фіг. 1 схематично показана процедура шифр ування початкового тексту Р згідно із способом за винаходом. На фіг. 2 показана схема процедури дешифрування шифртексту С. На фіг. 3 показана схема розбиття бінарного коду інформації на ділянки р 1, р2, ..., рi.. та сукупність бінарних векторів r1, r2 , ..., ri..., що генеруються. На фіг. 4 схематично показаний вхідний блок даних, сформований шляхом об'єднання ділянок бінарного коду інформації та бінарних векторів. На фіг. 5 показана схема шифр ування, яка відноситься до прикладу 2. Кращі варіанти реалізації винаходу Винахід пояснюється за допомогою загальної схеми криптографічного перетворення блоків даних на основі способу за винаходом, яка показана на фіг. 1, де блок RNG - генератор випадкових чисел, R - випадковий бінарний вектор, який генерується генератором випадкових чисел, Р - ділянка бінарної інформації, яка перетворюється, блок Е блок шифрування, К - секретний ключ, С - ви хідний шифртекст, "|" - знак, який позначає операцію конкатенації. Ділянка бінарної інформації всередині шифратора об'єднується із бінарним вектором R, який ге 2 41481 нерується випадково, утворюючи блок даних B=R|P, який подається на вхід блока шифрування Е, який формує ши фртекст С. В способі за винаходом передбачається, що блок генерування бінарного вектору є частиною шифр у і під час криптоаналізу на основі підібраних текстів він не може бути замінений на алгоритм шифр ування. Останнє є загальною вимогою для всіх відомих шифрів. Структура бінарного вектора в процесі шифрування блока даних змінюється непередбачуваним чином, оскільки він породжується генератором випадкових чисел. Таким чином, блок даних, який шифрується, отриманий після приєднання бінарного вектора до вхідного блоку, не може бути відомим заздалегідь чи заздалегідь підібраним. Цей факт являє собою принципову трудність для здійснення атаки на основі підібраних вхідних текстів. Законний користувач знає ключ шифрування, тому використовуючи алгоритм дешифрування може відновити структур у бінарного вектора і структур у вхідного блоку. Відокремлюючи і відкидаючи бінарний вектор, який не містить будь-якої частини інформації, що передається, законний користувач повністю і однозначно відбудовує призначену йому інформацію. На фіг. 2 показана схема процедури дешифрування за способом за винаходом. Блок шифротексту надходить на блок дешифрування D, який відбудовує значення блоку даних B=R|P за введеним секретним ключем К. Відбудований бінарний вектор R, який був сформований та використаний при шифруванні, витирається всередині шифратора шляхом виконання операції порозрядного підсумовування за модулем два над R і над деяким новим випадковим значенням, сформованим на виході генератора випадкових чисел. Генерування бінарних векторів за випадковим законом може виконуватись, наприклад, шляхом вимірювання ймовірносного фізичного процесу або вимірювання сигналу датчика шуму, у ролі якого часто використовуються спеціально сконструйовані електронні пристрої. В іншому варіанті способу замість генератора випадкових чисел може бути використаний генератор псевдовипадкових чисел, на вхід якого подається випадково вибране бінарне число, отримуючи на виході псевдовипадкову послідовність необхідного розміру. Відомий ряд способів побудови генераторів псевдовипадкових чисел (див. наприклад B. Schneier, "Applied Cryptography", Second Edition, John Wiley & Sons, Inc., New York, 1966, pp. 416-418), які можуть бути використані в способі за винаходом. Використання генератора псевдовипадкових чисел дозволяє реалізувати спосіб, який пропонується, програмним шляхом, беручи як початкове випадкове число, наприклад, значення інтервалу часу між натисненням певних клавіш. Для виконання перетворень, які шифрують підблоки, може бути використаний, наприклад, спосіб-аналог або спосіб-прототип, а також відомий спосіб блочного шифрування, описаний в патенті США 5003596 (М.С. Wood, "Method of Cryptographically Transforming Electronic Digital Data from One Form to Another", 26.03.1991). Можливість технічної реалізації способу, що пропонується, пояснюється конкретними прикладами його здійснення. Приклади для стислості та зручності сприйняття подані у вигляді алгоритмів, які є логічною формою запису процедур, що виконуються послідовно і є конкретними варіантами реалізації запропонованого способу блочного шифр ування. Приклад 1 Цей приклад пояснює спосіб шифрування інформації, поданої бінарним кодом, розбитим на ділянки розміром 32 біт. У цьому прикладі як блок Е використовується блок, який реалізує процедури шифрування 64-бітових блоків даних за способом-прототипом. Приклад 1 описується таким алгоритмом. Алгоритм 1: 32-бітовий блочний шифр. 1. Взяти чергову 32-бітову ділянку бінарного коду інформації Р, виробити 32-бітовий випадковий вектор R, сформувати блок даних B=R|P, де знак "|" означає конкатенацію (приєднання). 2. Використовуючи спосіб-прототип, зашифрувати 64-бітовий блок даних. Приклад 2 Цей приклад пояснює спосіб шифрування інформації, поданої бінарним кодом, розбитим на ділянки по 12 біт. У цьому прикладі використовується відомий спосіб шифрування 64-бітових блоків В (де В=Х|Y), наприклад, спосіб-прототип. Функція шифрування визначена як Е(В), тобто при шифр уванні блока В він перетворюється за правилом В¬Е(В), де "¬" означає операцію присвоювання. Приклад 2 описується таким алгоритмом. Алгоритм 2: 48-бітовий блочний шифр. 1. Сформувати ключ шифр ування. 2. Взяти наступні чотири 12-бітові ділянки бінарного коду інформації р 1, р2, р3 і р4 , виробити за псевдовипадковим законом чотири 20-бітових бінарних вектора v1, v2, v3 і v4, сформувати блок даних Р=р1|v1 |р2|v2|р3 |v3|p4|v4. 3. Розбити блок даних Р на два підблоки: Р=Х|Y, де Х=р1|v1|р2|v2 і Y=р3|v3|p4|v4 . 4. Перетворити підблок X: X¬Е(Х). 5. Накласти підблок X на підблок Y: Y¬YÅX, де знак "Å" означає операцію порозрядного підсумовування за модулем 2. 6. Перетворити підблок Y: Y¬E(Y). 7. Накласти підблок Y на підблок X: X¬XÅY. 8. Перетворити підблок X: X¬Е(Х). 9. Накласти підблок X на підблок Y: Y¬YÅX. 10. Перетворити підблок Y: Y¬E(Y). 11. Накласти підблок Y на підблок Х: Х¬ХÅY. 12. Видати блок Х|Y як ви хідний блок шифртексту. Приклад 2 пояснюється на фіг. 3-5. На фіг. 3 блок 1 - це бінарний код інформації, розбитий на 12-бітові ділянки, блок 2 - послідовність 20-бітових векторів, що генеруються. На фіг. 4 показана структура блоків даних, які формуються. Схема перетворень пояснюється на фіг. 5, де блок Е означає процедури шифрування у відповідності до способу-прототипу. Приклад 3 Цей приклад пояснює використання секретного ключа для задання закону формування 1024байтового блока даних В, використовуючи 32 3 41481 5. Обчислити індекс h=[(u1Åі)
ДивитисяДодаткова інформація
Назва патенту англійськоюMethod for encryption of information presented by binary code
Автори англійськоюMoldovian Aleksandr Andreievich, Moldovian Nikolai Andreievich, Moldovian P'otr Andreievich
Назва патенту російськоюСпособ шифрования информации, представленной бинарным кодом
Автори російськоюМолдовян Александр Андреевич, Молдовян Николай Андреевич, Молдовяну Пётр Андреевич
МПК / Мітки
Мітки: шифрування, інформації, поданої, спосіб, кодом, бінарним
Код посилання
<a href="https://ua.patents.su/5-41481-sposib-shifruvannya-informaci-podano-binarnim-kodom.html" target="_blank" rel="follow" title="База патентів України">Спосіб шифрування інформації, поданої бінарним кодом</a>
Попередній патент: Мікроемульсія і спосіб знищення повзаючих комах
Наступний патент: Зварна шпунтова паля
Випадковий патент: Спосіб лікування хворих на бронхіальну астму з ускладненнями в верхніх дихальних шляхах