Студенческий сайт КФУ - ex ТНУ » Учебный раздел » Учебные файлы »ПРОГРАММИРОВАНИЕ

Реалізація базових VHDL-моделей

Тип: курсовая работа
Категория: ПРОГРАММИРОВАНИЕ
Скачать
Купить
Відомі підходи до реалізації потокового шифрування даних. Регістр зсуву з оберненими зв’язками. Комбінуючий та фільтруючий генератор. Потоковий шифр Alpha1. Розробка структурної схеми алгоритму шифрування Alpha1. Розробка блоку керування пристрою.
Краткое сожержание материала:

Размещено на

Вступ

Мобільні засоби зв'язку дозволяють передавати не тільки голосову інформацію, а й короткі текстові повідомлення, факсимільну інформацію, мультимедійні потоки даних у форматі аудіо та відео в режимі реального часу. Кількість користувачів мобільного зв'язку різко зростає, а поряд із тим, зростає актуальність задач захисту такої інформації.

Для вирішення задачі шифрування великих інформаційних масивів у режимі реального часу широко використовується апаратна реалізація потокових шифрування. Основою потокових шифрів є генератор псевдовипадкових послідовностей, що генерує ключі шифрування. Більшість сучасних генераторів псевдовипадкових послідовностей будують на основі регістрів зсуву з оберненими зв'язками.

У даній роботі досліджено засоби безпровідного зв'язку. Розглянуто особливості експлуатації мобільного зв'язку стандарту GSM. Досліджено відомі підходи до реалізації потокового шифрування даних. Показано переваги застосування потокових шифрів до задач побудови захищених каналів зв'язку.

Показано перспективи використання алгоритмів генерування ПВЧ в системах мобільного зв'язку стандарту GSM. Показано переваги застосування алгоритму Alpha1 у порівнянні з використовуваним на даний час алгоритмом A5 до задач захищеної комунікації.

Розроблено VHDL модель алгоритму Alpha1: структурну схему алгоритму шифрування Alpha1, базову компоненту регістру зсуву з оберненими зв'язками, блок керування пристроєм, компоненту обчислення кінцевого результату та проведено функціональну верифікацію спроектованого пристрою.

1. Відомі підходи до реалізації потокового шифрування даних

1.1 Актуальність задач потокового шифрування

Розвиток безпровідного зв'язку починався із аналогового зв'язку, який характеризувався низькою якістю та пропускною здатністю каналів. Проте зараз, завдяки використанню цифрових технологій - GSM, де якість зв'язку значно покращилася; додалися нові можливості по передачі текстових повідомлень типу (SMS), передачі мультимедійної інформації, підключення до всесвітньої мережі Інтернет та багато іншого.

Основу системи безпеки GSM складають три секретних алгоритми:

- А3 - алгоритм аутентифікації, що захищає телефон від клонування;

- А8 - алгоритм генерації криптоключа, по суті справи односпрямована функція, що бере фрагмент виходу від A3 і перетворює його в сеансовий ключ для A5;

- A5 - власне алгоритм потокового шифрування оцифрованої мови для забезпечення конфіденційності переговорів. У GSM використовуються два основні різновиди алгоритму: A5/1 - «сильна» версія шифру для обраних країн і A5/2 - ослаблена для всіх інших.

Мобільні станції (телефони) постачаються смарт-карткою, що містить алгоритми A3 і A8, а в самому телефоні розміщений ASIC-чіп з алгоритмом A5., що являє собою алгоритм потокового шифрування даних. Саме простота апаратної реалізації та висока швидкість роботи дозволили йому зайняти чільне місце у даному стандарті.

1.2 Підходи до реалізації потокового шифрування даних

Першою спробою реалізації процедури шифрування був так званий гама-блокнот. Одноразовий гама-блокнот використовує довгу шифрувальну послідовність (або гаму), яка складається із бітів, вибраних зовсім випадково - псевдовипадкова послідовність (ПВП). Гама побітово накладається на відкритий текст. Причому, довжина гами має бути не меншою, ніж довжина повідомлення, що зашифровується і може використовуватися тільки один раз. Зрозуміло, що при такому способі шифрування необхідно велику довжину шифрувальної гами. Відкритий текст повідомлення m записують як послідовність бітів , а послідовність гами k як . Шифротекст утворюється наступним чином:

, при , (1.1)

де означає операцію «побітове виключне або» (XOR). У своїй історичній роботі [1] Шеннон довів, що саме одноразовий гама-блокнот є криптосистема яку неможливо зламати у теоретичному сенсі.

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

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

Відносно підходів до побудови потокових шифрів є концепція, що отримала широке визнання і належить авторитетному швейцарському криптограму Лайнеру Рюппелю [2].

Як вже було сказано, основу потокового шифру складає генератор псевдовипадкових чисел. Переважна більшість запропонованих до теперішнього часу генераторів потокового шифрування так чи інакше базуються на використанні регістрів зсуву, або точніше регістрів зсуву з оберненими зв'язками (LFSR - linear feedback shift register). Для цього є дві основні причини:

- послідовності, які генерують LFSR мають хороші статистичні властивості;

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

В реальності, регістр зсуву - це послідовність бітових комірок, а тому довжину регістру виражають у бітах. Кожен раз, коли виникає необхідність згенерувати новий біт, всі біти регістру зсуваються (наприклад на позицію вправо). Новий, крайній лівий біт обчислюється як функція від решти бітів регістру.

Виходом регістра зсуву на кожному такті є один біт. Період регістра зсуву - це довжина вихідної послідовності до того моменту, поки вона почне повторюватися. Зовнішній вигляд регістра зсуву з оберненими зв'язками зображено на рисунку 1.1.

Размещено на

Рисунок 1.1. Регістр зсуву з оберненими зв'язками

За допомогою LFSR можна отримати послідовність максимального періоду (2n-1, де n - розрядність регістра зсуву у бітах) у тому випадку, коли поліном, що представляє зворотні зв'язки, є примітивним поліномом. У довідковій літературі можна знайти поліноми зворотних зв'язків різної розрядності, при яких можна отримати вихідну послідовність «максимальної» довжини [3].

У визначених комірок регістрів роблять відводи (зворотні зв'язки); вміст цих комірок додається за модулем 2, а сума повертається у першу комірку регістру. Символ - це операція взяття за модулем 2 (mod 2).

Більшість, із запропонованих на даний час схем генераторів псевдовипадкових чисел (ПВЧ) попадає в один із цих класів. По-перше, стимулом для цього став технологічний прогрес, оскільки регістри зсуву та комбінуючими компоненти, такі як тригери, мультиплексори, плати пам'яті і т.д., стали вільно доступними на ринку.

Рисунок 1.2. Комбінуючий генератор

По-друге, теоретико-системні властивості цих генераторів, такі як період повтору, лінійна складність та статистичні характеристики часто піддаються аналізу завдяки детермінованій природі цих (нелінійних) пристроїв.

При розгляді цих двох класів генераторів треба пам'ятати, що будь-яка періодична послідовність має кінцевий лінійний еквівалент. Основна вимога для розробника генераторів ПВП, щоб він був не передбачуваний. Звідси виходить, що лінійна складність його вихідної послідовності має бути достатньо великою, щоб протидіяти будь-якій атаці, наприклад, основаній на алгоритмі Берлекампа-Массей для синтезу регістру зсуву.

Рисунок 1.3. Фільтруючий генератор

До відомих (опублікованих) генераторів ПВП побудованих з використанням регістрів зсуву можна віднести: Hughes XPD/KPD, Fish, Pike, Mush. Як було зазначено у попередньому підрозділі, потокове шифрування широко використовується для вирішення практичних задач захисту інформації. Прикладом може слугувати потоковий шифр A5, який реалізований апаратно та внесений у GSM стандарт - стандарт супутникового зв'язку.

A5 реалізує потоковий шифр на основі трьох лінійних регістрів зсуву з нерівномірним рухом. Такого роду схеми мовою фахівців називаються «криптографією військового рівня» і при правильному виборі параметрів здатні забезпечувати дуже високу стійкість шифру. В А5 довжини регістрів обрані довжиною 19, 22 і 23 біта, що в сумі і дає 64-бітний сеансовий ключ шифрування в GSM.

Ці три регістри зсуву мають відповідно такі поліноми зворотних зв'язків: «(18, 7, 0)», «(21, 2, 0)», «(22, 1, 0)». Загальна структура генератора ПВП за алгоритмом А5 наведена на рисунку 1.4.

Рисунок 1.4. Загальна структура генератора ПВЧ за алгоритмом А5

Алгоритм функціонує наступним чином. На початку, всі три регістри зсуву мають отримати певне ініціалізуюче значення (ключ). Відповідні поліноми зворотних зв'язків вже вбудовані і наведені вище. Виходом генератора є XOR із трьох LFSR. Проте у А5 використовується змінне керування запуском на роботу базових регістрів. Кожен регістр тактується в залежності від значення свого середнього біта, потім виконується зворотна порогова функція середніх бітів всіх трьох регістрів. Зазвичай на кожному етапі тактується два LFSR.

По мірі генерування (за один такт робо...

Другие файлы:

Проектирование цифровых систем на VHDL
В книге рассматривается язык VHDL - стандартизованный язык высокого уровня для описания аппаратуры - и его применение для проектирования систем на СБИ...

Реалізація комплекса моделей управління поставками на підприємстві
Аналіз фінансово-господарської діяльності ЧП "Лазаренко Л.П." на ринку громадського харчування. Короткострокове планування перевезень; моделювання змі...

Розробка VHDL моделі комп'ютера (архітектура MIPS)
Синтез на основі поведінкового опису, виконаний розробниками на мові програмування класу HDL, як перспективний напрямок проектування цифрових пристрої...

Digital System Design with VHDL
Since the publication of the first edition, a new version of the VHDL standard has been agreed and analogue extensions to the language have also been...

Разработка АЛУ на языке VHDL
Проектирование арифметико-логических устройств (АЛУ). Отладка описания логических схем на языке VHDL. Классификация АЛУ по способу представления чисел...