Скачиваний:
45
Добавлен:
24.07.2019
Размер:
51.2 Кб
Скачать

Практическая работа №6

Защита оперативной памяти компьютера

Цель: освоить технологию работы с программой защиты оперативной памяти

Ход работы

Задание: Защита оперативной памяти компьютера.

Листинг:

using System;

using System.Security.Cryptography;

namespace ЗащиОПКомп {

class Program {

private static byte[] s_aditionalEntropy = { 3, 6, 2, 1, 5 };

static void Main(string[] args) {

//Данные для шифрования

byte[] secret = {3, 6, 8, 1, 5, 4};

//Шифрование

byte[] encryptedSecret = ProtectData(secret);

Console.WriteLine("Зашифрованный массив данных:");

PrintData(encryptedSecret);

//Расшифровака

byte[] originalData = UnprotectData(encryptedSecret);

Console.WriteLine("{0} Расшифрованные данные:", Environment.NewLine);

PrintData(originalData);

}

private static byte[] ProtectData(byte[] data) {

try {

return ProtectedData.Protect(data, s_aditionalEntropy, DataProtectionScope.CurrentUser);

}

catch (CryptographicException e) {

Console.WriteLine("Ошибка шифрования.");

Console.WriteLine(e.ToString());

return null;

}

}

private static byte[] UnprotectData(byte[] data){

try {

return ProtectedData.Unprotect(data, s_aditionalEntropy, DataProtectionScope.CurrentUser);

}

catch (CryptographicException e) {

Console.WriteLine("Ошибка шифрования.");

Console.WriteLine(e.ToString());

return null;

}

}

private static void PrintData(byte[] Array) {

foreach (byte i in Array) Console.Write("{0} ", i);

Console.WriteLine();

Console.ReadKey();

}

}

}

Результат выполнения программы: