16
Міністерство освіти і науки, молоді та спорту України Чернівецький національний університет імені Юрія Федьковича Кафедра радіотехніки та інформаційної безпеки Шифрування зображення за допомогою трьох одномірних хаотичних відображень Круліковський Олег Валерійович Ледвінський Станіслав Сергійович Науковий керівник: Політанський Леонід Францевич

Krulikovsyj o

  • Upload
    garasym

  • View
    722

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Krulikovsyj o

Міністерство освіти і науки, молоді та спорту України

Чернівецький національний університет

імені Юрія Федьковича

Кафедра радіотехніки та інформаційної безпеки

Шифрування зображення за допомогою трьох одномірних

хаотичних відображень

Круліковський Олег Валерійович

Ледвінський Станіслав Сергійович

Науковий керівник: Політанський Леонід Францевич

Page 2: Krulikovsyj o

Біфуркаційні діаграми

Рис. 1. Діаграма біфуркацій логістичного відображення

11

n n nx rx x

Рис. 2. Діаграма біфуркацій квадратичного відображення

2

11

n nx x

Рис. 3. Діаграма біфуркацій кубічного відображення

31n n nx a bx x

(2)(1)

(3)

Page 3: Krulikovsyj o

Алгоритм шифрування

Рис.4. Структурна схема алгоритму шифрування

*

*

Page 4: Krulikovsyj o

Кроки алгоритму шифрування

1. Зображення складається з пікселів ( ) як показано на рис. 5. Кожен

піксель складається з трьох компонент кольору червоної зеленої синьої,

кожна компонента приймає ціле значення в межах . Таким

чином ми розбиваємо піксель на три складові, кожну з яких перетворюємо за

допомогою рівняння (4) в значення змінних відображення та

використовуємо їх в якості початкових умов для одномірних відображень.

N M m

Рис. 5. Розбиття зображення на пікселі

0 255

(4)

Page 5: Krulikovsyj o

2. Значення кольору останнього пікселя використовується як початкова

умова для шифрування першого пікселя , тобто .

3. Після n ітерацій першого відображення, ми визначаємо змінну

відображення та додаємо до нього значення кольору пікселя і отримуємо

зашифроване значення першого пікселя. Сумарне значення використовуються як

початкова умови для наступного відображення, тобто .

4. Ітеруємо всі відображення послідовно стартуючи з першого до останнього і

шифруємо всі пікселі зображення. Крім того, якщо сума, ми

віднімаємо, тобто, .

5. Повторюємо кроки 3 та 4 і робимо кілька циклів j. Для наступного

циклу, нове значення кольору останнього відображення ( j-

номер циклу) використовуються як початкова умова для першого відображення

щоб запустити наступний цикл, тобто, .

6. Після декількох циклів ми отримаємо відображення сітки (рис. 6) та

візуалізуємо зашифроване зображення з використанням рівняння (5).

m

Cx

1

0

m

Cx x

1

nx 1

Cx

2 1 1

0 n Cx x x

max

i i

n Cx x x

x 1

0

i i i

n Cx x x x

m m m

C n Cx j x j x j

1

01 m

Cx j x j

(5)

Page 6: Krulikovsyj o

Рис. 6. Зашифрована червона складова зображення

7. Повторюємо всі кроки для трьох компонент кольору (червона, зелена, синя).

Накладаємо три складові одна на одну та отримуємо зашифроване зображення.

В загальному алгоритм шифрування може бути описаний наступними

формулами:

01 1i m

Cx j x j if i 1

01i i

cx j x j if i

max1 1 1 1i i i i i

c n c n cx j x j x j if x j x j x

max1 1 1 1i i i i i

C n c n cx j x j x j x if x j x j x

(6) (7)

(8)

(9)

Page 7: Krulikovsyj o

Алгоритм дешифрування

Для дешифрування, необхідно відтворити оригінальний цикл зображення в

зворотному напрямку, стартуючи з останнього відображення, та ідучи до першого

відображення здійснюючи ту саму кількість ітерацій для кожного відображення

як і при шифруванні.

1. Спочатку ми повинні відновити зображення циклу , Шифроване

значення передостаннього відображення в циклі це початковий умова для

останнього відображення в циклі , тобто, . Починаючи з цих початкових

умов ітеруємо останнє відображення n разів і отримаємо значення .

Віднімаючи ці значення від значення кольору останнього відображення в j циклі,

, отримаємо значення кольору останнього відображення в

циклі .

2. Потім беремо зашифроване значення відображення як початкову

умову для відображення і знаходимо значення кольору останнього

відображення в циклі і так далі.

3. Повторюємо крок 2 для кожного відображення в зворотному напрямку з

останнього відображення до першого відображення та відтворюємо зображення

циклу .

Page 8: Krulikovsyj o

4. Для відновлення значення кольору першого відображення в циклі

використовуємо розшифроване значення кольору останнього відображення m в

циклі, , як початкову умову для першого відображення. Ітеруємо

необхідну кількість разів та віднімаємо від зашифрованого значення першого

пікселя.

5. Повторюємо всі попередні кроки j разів та отримаємо відображення сітки

, що конвертується рівнянням (5) в значення кольорів .

6. Повторюємо всі кроки для кожної компоненти кольору (червона, зелена,

синя) та накладаючи три складові отримаємо оригінальне зображення.

В загальному алгоритм дешифрування може бути описаний наступними

формулами:

(10)

(11)

(12)

(13)

Page 9: Krulikovsyj o

12 69 121

205 23 46

14 109 241

-0,810588 -0,385882 0,00156863

0,627451 -0,728627 -0,557255

-0,795686 -0,0878431 0,895686

-0,100445 -0,6839 0,881486

0,647199 0,110808 0,8798

-0,863713 -0,829499 0,51699

107 29 239

208 136 239

5 9 190

Приклад шифрування зеленої складової за допомогою

квадратичного відображення, та

Значення зеленої складової

оригінального зображення

Перетворене значення за

допомогою формули (4)

Зашифроване значення

зеленої складової

Візуалізоване значення зашифрованої

складової за допомогою рівняння (5)

Page 10: Krulikovsyj o

-0,810588 -0,385882 0,00156863

0,627451 -0,728627 -0,557255

-0,795686 -0,0878431 0,895686

-0,100445 -0,6839 0,881486

0,647199 0,110808 0,8798

-0,863713 -0,829499 0,51699

107 29 239

208 136 239

5 9 190

12 69 121

205 23 46

14 109 241

Приклад дешифрування зеленої складової

Зашифроване значення Перетворене зашифроване значення

за допомогою формули (4)

Відтворене оригінальне зображення Візуалізоване оригінальне зображення

Page 11: Krulikovsyj o

Приклад програмної реалізації алгоритму

шифрування зображення

Рис. 7. Вікно програми шифрування з оригінальним зображенням

Page 12: Krulikovsyj o

Рис. 8. Вікно програми шифрування з зашифрованим зображенням

Page 13: Krulikovsyj o

Рис. 9. Оригінальне зображення

Додатковий приклад роботи алгоритму шифрування

Page 14: Krulikovsyj o

Рис. 10. Зашифроване зображення

Page 15: Krulikovsyj o

Висновки:

1. Алгоритму шифрування/дешифрування властива висока чутливість до

початкових умов та параметрів.

2. Шифрування кожної складової пікселя окремим одномірним відображенням

дає більш нерівномірний розподіл кольорів ніж використання одного відображення.

3. Використання трьох одномірних відображень збільшило кількість ключів

шифрування до семи, що забезпечує підвищення стійкості алгоритму до різного

роду криптографічних атак.

4. Зміна параметрів одномірних відображень та кількості ітерацій забезпечує

маскування контурів кольорового зображення

5. Кількість ітерацій є не на стільки критичною до часу

шифрування/дешифрування, як кількість циклів.

Даний алгоритм може бути використаний в галузі інформаційної безпеки для

передачі таємної інформації.

Page 16: Krulikovsyj o

Дякуємо за увагу!