Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Програмна реалізація алгоритму шифрування IDEA

Реферат Програмна реалізація алгоритму шифрування IDEA





ю укорочений раунд lt;http://ru.wikipedia/wiki/%D0%A0%D0%B0%D1%83%D0%BD%D0%B4_%28%D0%B2_%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8%29gt;, а саме, чотири 16-бітних подблока на виході восьмого раунду lt;http://ru.wikipedia/wiki/%D0%A0%D0%B0%D1%83%D0%BD%D0%B4_%28%D0%B2_%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8%29gt; і чотири відповідних підключа піддаються описаним операціями.

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

Зашифроване повідомлення користувач побачить після успішної авторизації.

Метод обчислення, що використовується для розшифровки тексту по суті такий же, як і при його шифруванні. Єдина відмінність полягає в тому, що для розшифровки використовуються інші підключи. У процесі розшифровки підключи повинні використовуватися в зворотному порядку. Перший і четвертий підключи i-го раунду розшифровки виходять з першого і четвертого підключа (10-i) -го раунду шифрування мультиплікативної інверсією. Для 1-го і 9-го раундів другий і третій підключи розшифровки виходять з другого і третього підключів 9-го і 1-го раундів шифрування адитивної інверсією. Для раундів з 2-го по 8-й другий і третій підключи розшифровки виходять з третього і другого підключів з 8-го по 2-й раундів шифрування адитивної інверсією. Останні два підключа i-го раунду розшифровки рівні останнім двом підключити (9-i) -го раунду шифрування.

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


Рис. 5. Структура алгоритму IDEA


Рис. 6. Підключи шифрування і дешифрування алгоритму IDEA



2.3 Програмна реалізація


Курсова робота реалізована в середовищі програмування Microsoft Visual Studio 2012. Мова програмування, який використовувався при написанні роботи - C #.

Список основних процедур - обробників, в яких закладено функціонал розробляється програми:

· public static int idea_hash_cbс (char * s, int len, int k, int iv) функція обчислення хеша CB С. У даній функції ми отримуємо поточне значення для XOR'а (iv), створюємо покажчик на масив хешіруемих даних, ділимо розмір масиву на 8 (робимо перевірку на кратність 8), шифруємо за формулою: C (i)=IDEA (C (i - 1) ^ S (i), KEY), і повертаємо отриманий хеш.

· private static string ShiftByteLeft (string s) зрушення на 25 бітів циклічно вліво

· private static string ShiftbyteRight (string s) зрушення на 25 бітів циклічно вправо

· private static string Sum (string a1, string a2) підсумовування по модулю 2 ^ 16

· private static string Multi (string a1, string a2) множення по модулю 2 ^ 16 + 1 private static string XOR (string a1, string a2) виключає АБО

· inline T setBit (T v, int nBitNumber) функція установки біта. Біти вважаються від 0, нумерація йде зліва-направо.

· inline bool getBit (T v, int nBitNumber) функція отримання значення біта (true/false).

· map lt; int64, vector lt; int64 gt; * gt; keys_archive; архів таблиць раундових ключів, щоб кожного разу не генерувати ключі заново (функція включає в себе: початкову перестановку ключа, кінцеву перестановку ключа, зрушення, таблицю підстановок). private void idea_Encryption (string st1, string st2) алгоритм IDEA. Вхід - 2 рядки: 1) набір бітів ліченого блоку (довжина 64). 2) набір бітів нашого ключа (довжина 128). Вихід - шіфроблок (64 символу) public string idea_Decryption (string st1, string st2) функція дешифрування за алгоритмом IDEA.

· bool CheckLogin (int hash) функція читає логін, якщо хеш з аргументів дорівнює вважає логіну, то закриває файл і видає позитивний результат. Якщо ні - видає повідомлення «Невірний логін»

· bool CheckPass (int login_hash, int pass_hash) функція читає логін і пароль, якщо логін дорівнює запрошенням, але пароль не збігається, то закриває файл і видає повідомлення «Невірний пароль». Якщо логін і пароль збігаються, то функція повертає «істин а».

Програма складається з трьох форм: форма реєстрації (рис. 7.), форма авторизації (рис.8.) і форма з виведенням зашифрованого і розшифрованого тексту (рис. 9.). Дані форми представлені нижче.


Рис. 7. Форма авторизації

програмний блоковий шифрування аутентифікація

Рис.8. Форма Реєстрації


Рис.9. Форма виведення інф...


Назад | сторінка 7 з 8 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми шифрування та дешифрування тексту методом простої заміни
  • Реферат на тему: Створення компонента для шифрування-дешифрування тексту
  • Реферат на тему: Розробка програм шифрування і дешифрування тексту методом простої заміни
  • Реферат на тему: Програма для шифрування тексту
  • Реферат на тему: Шифрування даних за допомогою алгоритму DES