шифр цезаря с кодом. Отчет 1 по курсу Основы информационной безопасности Лабораторная работа 1 Вариант 20 Студент Семенов И. А
Скачать 123.05 Kb.
|
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «РОССИЙСКИЙ УНИВЕРСИТЕТ ТРАНСПОРТА (МИИТ)» РУТ (МИИТ) Кафедра «Цифровые технологии управления транспортными процессами» О Т Ч Е Т №1 по курсу Основы информационной безопасности Лабораторная работа №1 Вариант №20 Студент: Семенов И. А. Группа: УВА-212 Проверил: К.С. Панкина МОСКВА 2022 2. Описание метода шифрования: Одноалфавитный шифр подстановки: Одноалфавитный шифр подстановки (шифр простой замены) — шифр, при котором каждый символ открытого текста заменяется на некоторый, фиксированный при данном ключе символ того же алфавита. 3. Исходное сообщение: 4. Ключ: Шифрование с использованием ключа k = 4 {\displaystyle k=3}. 5. Описание преобразования: Буква «Е» «сдвигается» на четыре буквы вперёд и становится буквой «Й». Твёрдый знак, перемещённый на четыре буквы вперёд, становится буквой «Ю» и так далее 6. Криптограмма: Механизмы обеспечения аутентификации - различают одностороннюю и взаимную аутентификацию. Соответствует Рйщдсмлря тейхуйыйсм0 дчцйсцмшмодъмм 1 фдлпмыд,ц тистхцтфтсс,, м жлдмрсч, дчцйсцмшмодъм,2 7. Алгоритм разработанной программы: 8. Код программы: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace oibLr1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } static int IndexOf(char[] array, char value) { for (int i=0; i { if (array[i] == value) { return i; } } return -1; } public char[] ABC = new char[] { 'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я', '-', '.', ',', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; public char[] CBA = new char[] { 'Д', 'Е', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я', '-', '.', ',', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'А', 'Б', 'В', 'Г' }; private void button1_Click(object sender, EventArgs e) { string con = Convert.ToString(textBox1.Text); string noc = ""; for (int i = 0; i < con.Length; i++) { if (Convert.ToString(con[i]) == " ") { noc = noc + " "; } else { if (Convert.ToChar(con[i]) == char.ToLower(con[i])) { int index = IndexOf(ABC, char.ToUpper(con[i])); noc = noc + Convert.ToString(char.ToLower(CBA[index])); } else { int index = IndexOf(ABC, char.ToUpper(con[i])); noc = noc + Convert.ToString(char.ToUpper(CBA[index])); } } } textBox2.Text = noc; } private void button2_Click(object sender, EventArgs e) { string con = Convert.ToString(textBox1.Text); string noc = ""; for (int i = 0; i < con.Length; i++) { if (Convert.ToString(con[i]) == " ") { noc = noc + " "; } else { if (Convert.ToChar(con[i]) == char.ToLower(con[i])) { int index = IndexOf(CBA, char.ToUpper(con[i])); noc = noc + Convert.ToString(char.ToLower(ABC[index])); } else { int index = IndexOf(CBA, char.ToUpper(con[i])); noc = noc + Convert.ToString(char.ToUpper(ABC[index])); } } } textBox2.Text = noc; } } } 9. Результат: |