Практическая работа на темы: Исследование криптографических методов защиты информации студент 2 курса гр. 076-20 факультета Информационная безопасность


Download 42.68 Kb.
bet2/4
Sana16.06.2023
Hajmi42.68 Kb.
#1492973
TuriПрактическая работа
1   2   3   4
Bog'liq
задания 2

Расшифрованный текст


aol ipn jsjr aol adl m aol hshjl m dlatpal p sk p mal jhsslk ipn il. iba ipn il p lhssf aol ilss m aol jsjr. pa p aol ipnnla jsjr ilss p ipahp. pa dlpno 13.5 a. aol jsjr adl p 318 mlla opno. fb ohcl a n b 374 al a lhjo aol a. aol jsjr sr thss mt aol hcltla ilsd aol adl. iba pa mhjl p 23 mlla dpkl. pa dbsk sf qba mpa pa tl jsht. aol tpbal-ohk p 14 mlla sn. pa dlpnoa p lbhs a aoha m ad ihn m jhs. aol ob-ohk p 9 mlla sn. aol jsjr ilss p jhsslk ipn il hmal p ilqhtp ohss. ol ohk aol qi a ll aoha aol ilss dh ba b. p ilqhtp dh h ipn th. l khf ol hpk p hsphtla, &koin;ohss dl jhss aol ilss a. alol'?&koin; a. alol' p aol htl m aol adl. iba tll hpk m h qrl, &koin;dof a jhss pa ipn il?&koin; d aol ilss p rd hss cl aol dsk if aoha htl.
Задание 2. По заданному алфавиту зашифровать сообщение методом Вернама, после чего расшифровать шифротекст и получить исходное сообщение. № варианта выбрать согласно порядковому номеру по списку в журнале.



1

B

2

KEYBOARD

UITEP

emrfduzw

Задание 2.1. Составить блок-схему и программную реализацию шифра Цезаря. Листинг программы шифрования методом Вернама сообщения M отобразить в отчете к практической работе.
    1. Реализация шифрования Цезаря


using System;


public class CaesarCipher
{
//символы русской азбуки
const string alfabet = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";


private string CodeEncode(string text, int k)
{
//добавляем в алфавит маленькие буквы
var fullAlfabet = alfabet + alfabet.ToLower();
var letterQty = fullAlfabet.Length;
var retVal = "";
for (int i = 0; i < text.Length; i++)
{
var c = text[i];
var index = fullAlfabet.IndexOf(c);
if (index < 0)
{
//если символ не найден, то добавляем его в неизменном виде
retVal += c.ToString();
}
else
{
var codeIndex = (letterQty + index + k) % letterQty;
retVal += fullAlfabet[codeIndex];
}
}


return retVal;
}


//шифрование текста
public string Encrypt(string plainMessage, int key)
=> CodeEncode(plainMessage, key);


//дешифрование текста
public string Decrypt(string encryptedMessage, int key)
=> CodeEncode(encryptedMessage, -key);
}


class Program
{
static void Main(string[] args)
{
var cipher = new CaesarCipher();
Console.Write("Введите текст: ");
var message = Console.ReadLine();
Console.Write("Введите ключ: ");
var secretKey = Convert.ToInt32(Console.ReadLine());
var encryptedText = cipher.Encrypt(message, secretKey);
Console.WriteLine("Зашифрованное сообщение: {0}", encryptedText);
Console.WriteLine("Расшифрованное сообщение: {0}", cipher.Decrypt(encryptedText, secretKey));
Console.ReadLine();
}
}


Download 42.68 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling