DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

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

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2019
Тип роботи:
Лабораторна робота
Предмет:
Захист інформації в комп’ютерних системах
Варіант:
2 3 8 10 12 15 17

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ Звіт з лабораторної роботи №6,7 з дисципліни:”Захист інформації в комп’ютерних системах ” на тему:” Сучасні комп’ютеризовані методи шифрування та дешифрування ві текстових повідомлень ” Львів 2019 / / / / Рис.1 Результат роботи програми Висновок:Під час виконання лабораторної роботи була розроблена програма,яка реалізує кодування шифру Хіла. Код програми #include "pch.h" #include<iostream> #include<math.h> #include<stdio.h> using namespace std; float encrypt[3][1], decrypt[3][1], a[3][3], b[3][3], mes[3][1], c[3][3]; void encryption(); void decryption(); void getKeyMessage(); void inverse(); int main() { getKeyMessage(); encryption(); decryption(); system("pause"); } void encryption() { int i, j, k; for (i = 0; i < 3; i++) for (j = 0; j < 1; j++) for (k = 0; k < 3; k++) encrypt[i][j] = encrypt[i][j] + a[i][k] * mes[k][j]; cout << "\nEncrypted string is: "; for (i = 0; i < 3; i++) cout << (char)(fmod(encrypt[i][0], 26) + 98); } void decryption() { int i, j, k; inverse(); for (i = 0; i < 3; i++) for (j = 0; j < 1; j++) for (k = 0; k < 3; k++) decrypt[i][j] = decrypt[i][j] + b[i][k] * encrypt[k][j]; cout << "\nDecrypted string is: "; for (i = 0; i < 3; i++) cout << (char)(fmod(decrypt[i][0], 26) + 98); cout << "\n"; } void getKeyMessage() { int i, j; char msg[4]; cout << "Enter 3x3 matrix for key (It should be inversible):\n"; for (i = 0; i < 3; i++) for (j = 0; j < 3; j++) { scanf_s("%f", &a[i][j]); c[i][j] = a[i][j]; } cout << "\nEnter a 3 letter string: "; cin >> msg; for (i = 0; i < 3; i++) mes[i][0] = msg[i] - 98; } void inverse() { int i, j, k; float p, q; for (i = 0; i < 3; i++) for (j = 0; j < 3; j++) { if (i == j) b[i][j] = 1; else b[i][j] = 0; } for (k = 0; k < 3; k++) { for (i = 0; i < 3; i++) { p = c[i][k]; q = c[k][k]; for (j = 0; j < 3; j++) { if (i != k) { c[i][j] = c[i][j] * q - p * c[k][j]; b[i][j] = b[i][j] * q - p * b[k][j]; } } } } for (i = 0; i < 3; i++) for (j = 0; j < 3; j++) b[i][j] = b[i][j] / c[i][i]; cout << "\n\nInverse Matrix is:\n"; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) cout << b[i][j] << " "; cout << "\n"; } }
Антиботан аватар за замовчуванням

23.10.2019 20:27

Коментарі

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

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!