DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт до лабораторної роботи № 1 з курсу «Методи та засоби криптологічних перетворень»: Шифр зсуву

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Факультет комп’ютерних наук
Кафедра:
Кафедра захисту інформації

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

Рік:
2009
Тип роботи:
Звіт
Предмет:
Методи та засоби криптографічних перетворень
Група:
ІБ – 44
Коротко про документ

Про що ця робота

Звіт до лабораторної роботи присвячено реалізації шифру зсуву мовою програмування C++. Продемонстровано введення тексту, збереження та зчитування з файлу.

У роботі розглядаються

  • Криптологічні перетворення
  • Шифр зсуву
  • Програмування на C
  • Робота з файлами в C
  • Симетричне шифрування
  • Алгоритми шифрування

Зміст і розділи

  1. Мета роботи
  2. Змінні і константи
  3. Блок-схема
  4. Текст програми
  5. Результат
  6. Висновок
Для кого:Студенти технічних спеціальностей та вивчаючі основи криптографії та програмування.
Викладачі:Викладач кафедри

Ключові поняття

шифр зсувукриптологічні перетворенняC++функціяфайлове введення-виведенняалфавітдешифруванняшифруваннязміннаконстанта

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”  ЗВІТ ДО ЛАБОРАТОРНОЇ РОБОТИ № 1 З КУРСУ “ Методи та засоби криптологічних перетворень” ШИФР ЗСУВУ Мета роботи: Написати программу для шифрування методом pcede забезпечення введеня стрічки і ключа з клавіатури і виведення шифрованої і дешифрованої стрічки на екран Змінні і константи використані в программі : LOWER – нижня межа в латинниці UPPER – верхня межа в латинниці ALPHABET – довжина алфавіту FILE_NAME – назву файлу з шифрованою строкою ARRAY_SIZE – довжина стрічки для шифрування і – лічильник циклу move – зсув cryptedString – шиврована стрічка decryptedSrting – дешифрована стрічка Блок схема:  Текст программи #include <iostream> #include <stdio.h> #define LOWER 97 #define UPPER 122 #define ALPHABET_LENGHT 26 #define FILE_NAME "crypt.txt" #define ARRAY_SIZE 100 using namespace std; //Convert word to lower case void convertToLittleWord(char *str) { for(int i = 0; str[i] != '\0'; i++) { str[i] = tolower(str[i]); } } //Save string to file void saveCryptedString(char str[]) { FILE *fp; if( (fp = fopen(FILE_NAME, "w")) == NULL) { cout << "Error opening file " << FILE_NAME << endl; exit(1); } else { fputs( str, fp ); fclose( fp ); } } //Read string from file void loadCryptedString(char *cryprStr) { FILE *fp; if( (fp = fopen(FILE_NAME, "r")) == NULL) { cout << "Error opening file " << FILE_NAME << endl; exit(1); } else { fgets( cryprStr, ARRAY_SIZE , fp ); } } // Crypt string void Crypt(char *str, int move ) { convertToLittleWord(str); for(int i = 0; str[i] != '\0'; i++) { int charPosWithMove = (int)str[i] + move; if(UPPER < charPosWithMove) { charPosWithMove = charPosWithMove - ALPHABET_LENGHT; } str[i] = (char)charPosWithMove; } saveCryptedString(str); } //Decrypt string void Decrypt(char *str, int move ) { loadCryptedString(str); for(int i = 0; str[i] != '\0'; i++) { int charPosWithMove = (int)str[i] - move; if(charPosWithMove < LOWER) { charPosWithMove = charPosWithMove + ALPHABET_LENGHT; } str[i] = (char)charPosWithMove; } } void main() { char cryptString[ARRAY_SIZE]; int move; cout << "Enter string to crypt"<< endl; cin.get(cryptString, ARRAY_SIZE); cout << "Enter move"<< endl; cin >> move; Crypt(cryptString, move); cout << cryptString << endl; cout << "Push to decrypt" << endl; system("Pause"); cout << "Decrypt String" << endl; char decryptString[ARRAY_SIZE]; Decrypt(decryptString, move); cout << decryptString << endl; } Результат :  Висновок: в данній роботі я створив программу на мові С для шифрування і дешифрування тексту методом зсуву.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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