>
Симетричне шифрування - стороннім особам може бути відомий алгоритм шифрування, але невідома невелика порція секретної інформації - ключа, однакового для відправника і одержувача повідомлення.
2.2.1 Метод підстановки
У шифрі простої підстановки проводиться заміна кожної букви повідомлення деяким заздалегідь певним символом (зазвичай це також буква). У даному шифрі ключем є просто перестановка алфавіту (це вірно в тому випадку, якщо літери замінюються літерами). p align="justify"> Як можна зрозуміти з визначення, даний шифр є досить простим. Перейдемо до прикладу, що показує одну з можливих його реалізацій. p align="justify"> Програма буде шифрувати і дешифрувати тільки російський текст, залишаючи незмінним все інше.
В
Малюнок 2.1 Екранна форма - Шифрування метом підстановки
Лістинг алгоритму шифрування методом підстановки:
procedure TMain.Shifrovat1Click (Sender: TObject);, j, q: integer;, str2: string;: array [1 .. 256, 1 .. 2] of char; [1,1 ]: = '1 '; mas [1,2]: =' я '; [2,1]: = '2'; mas [2,2]: = 'ч'; [3,1]: = ' 3 '; mas [3,2]: =' з '; [4,1]: = '4'; mas [4,2]: = 'м'; [5,1]: = '5 '; mas [5,2]: = 'і'; [6,1]: = '6 '; mas [6,2]: =' т '; [7,1]: = '7'; mas [7,2 ]: = 'ь'; [8,1]: = '8 '; mas [8,2]: =' б '; [9,1]: = '9'; mas [9,2]: = ' ю '; [10,1]: = '0'; mas [10,2]: = '.'; [11,1]: = '-'; mas [11,2]: = 'Я'; [ 12,1]: = '='; mas [12,2]: = 'Ч'; [13,1]: = '!'; mas [13,2]: = 'С'; [14,1] : = '"'; mas [14,2]: = 'М'; [15,1]: = '№'; mas [15,2]: = 'І'; [16,1]: = ' ; '; mas [16,2]: =' Т '; [17,1]: ='% '; mas [17,2]: =' Ь '; [18,1]: =': '; mas [18,2]: = 'Б'; [19,1]: = '?'; mas [19,2]: = 'Ю'; [20,1]: = '*'; mas [20,2 ]: = '.'; [21,1]: = '('; mas [21,2]: = 'Ф'; [22,1]: = ')'; mas [22,2]: = ' И '; [23,1]: =' _ '; mas [23,2]: =' В '; [24,1]: =' + '; mas [24,2]: =' А '; [ 25,1]: = 'Ї'; mas [25,2]: = 'П'; [26,1]: = 'Ц'; mas [26,2]: = 'Р'; [27,1] : = 'У'; mas [27,2]: = 'О'; [28,1]: = 'К'; mas [28,2]: = 'Л'; [29,1]: = 'Е '; mas [29,2]: =' Д '; [30,1]: =' Н '; mas [30,2]: =' Ж '; [31,1]: =' Г '; mas [ 31,2]: = 'Е'; [32,1]: = 'Ш'; mas [32,2]: = ''; [33,1]: = 'Щ'; mas [33,2] : = 'д'; [34,1]: = 'З'; mas [34,2]: = 'е'; [35,1]: = 'Х'; mas [35,2]: = 'ж '; [36,1]: =' Комерсант '; mas [36,2]: =' л '; [37,1]: =' Ф ...