Автор работы: Пользователь скрыл имя, 21 Ноября 2011 в 12:41, курсовая работа
Цель: исследование криптографического метода защиты информации.
Задачи:
Рассмотреть различные методы защиты информации;
Подробно изучить криптографический метод;
Выявить области применения кодирования инфрмации.
Введение……………………………………………………………2
Глава I Современные методы защиты информации…………….3
§1. Классификация методов защиты информации………………3
1.1. Организационные методы…………………………………….3
1.2. Технические методы………………………………………….6
§2 Криптография………………………………………………….10
Шифрование………………………………………………..10
2.2. Кодирование………………………………………………….17
Глава II Реализация шифра Цезаря в Делфи……………………22
Заключение………………………………………………………..29
Литература…………………………………………………………30
2.2.
Кодирование
Для экономии памяти при работе с текстом имеет смысл уплотнение текста. Существуют несколько способов уплотнения текста.
Кодирование часто используемых элементов данных. Этот способ уплотнения данных также основан на употреблении неиспользуемых комбинаций кода. Например: для кодирования можно использовать комбинации из двух байтов диграф PN, где P – признак кодирования символа, N – номер символа. Таким образом может быть закодировано 256 символов. Другой способ: отыскание в текстах наиболее часто встречающихся сочетании букв и даже слов и замене их на неиспользуемые байты кода ДКОИ.
Наилучший результат достигается при использовании обоих методов.
Надежность защиты
информации проверить временем расшифровки
информации и определения ключей.
Применение кодирования
Кодирование двоичным кодом
Для автоматизации работы с данными, относящимися к различным типам очень важно унифицировать их форму представления – для этого обычно используется приём кодирования - выражение данных одного типа через данные другого типа.
В вычислительной технике существует своя система – двоичное кодирование, основанная на представлении данных последовательностью двух знаков: 0 и 1 (бит). Одним битом могут быть выражены два понятия: 0 или 1 (да или нет, чёрное или белое, истина или ложь). Если количество битов увеличить до двух, то уже можно выразить четыре различных понятия. Тремя битами можно закодировать восемь различных значений.
Кодирование целых и действительных чисел
Для кодирования целых чисел от 0 до 255 достаточно иметь 8 разрядов двоичного кода (8 бит). 16 бит позволяют закодировать целые числа от 0 до 65535, 24 более 16,5 миллионов различных значений.
Для кодирования
действительных чисел используют 80-разрядное
кодирование. При этом число предварительно
преобразовывают в
3,1414926 = 0,31415926 × 101
300 000 = 0,3 × 106
Первая часть числа - мантисса, вторая – характеристика. Большую часть из 80 бит отводят для хранения мантиссы (вместе со знаком) и некоторое фиксированное количество разрядов отводят для хранения характеристики.
Кодирование текстовых данных
Если каждому символу алфавита сопоставить определённое целое число, то с помощью двоичного кода можно кодировать текстовую информацию. Восьми двоичных разрядов достаточно для кодирования 256 различных символов. Это хватит, чтобы выразить различными комбинациями восьми битов все символы английского и русского языков, как строчные, так и прописные, а также знаки препинания, символы основных арифметических действий и некоторые общепринятые специальные символы.
Технически это просто, но существует ряд организационных сложностей. В первые годы развития вычислительной техники они были связаны с отсутствием необходимых стандартов, в последствии - изобилием одновременно действующих и противоречивых стандартов. Для того чтобы весь мир одинаково кодировал текстовые данные, нужны единые таблицы кодирования, а это пока невозможно из-за противоречий между символами национальных алфавитов.
Для английского языка противоречия уже сняты. Институт стандартизации США ввёл в действие систему кодирования ASCII (American Standard Code for Information Interchange – стандартный код информационного обмена США). В системе ASCII закреплены две таблицы кодирования базовая и расширенная. Базовая таблица закрепляет значения кодов от 0 до 127, а расширенная относится к символам с номерами от 128 до 255.
Первые 32 кода базовой
таблицы, начиная с нулевого, отданы
производителям аппаратных средств. В
этой области размещаются
Кодировка символов русского языка, известная как кодировка Windows-1251, была введена «извне» - компанией Microsoft, но, учитывая широкое распространение операционных систем и других продуктов этой компании в России, она глубоко закрепилась и нашла широкое распространение.
Другая
Международный стандарт,
в котором предусмотрена
Универсальная система кодирования текстовых данных
Если проанализировать организационные трудности, связанные с созданием единой системы кодирования текстовых данных, то можно прийти к выводу, что они вызваны ограниченным набором кодов (256). В то же время, очевидно, что если, кодировать символы не восьмиразрядными двоичными числами, а числами с большим разрядом то и диапазон возможных значений кодов станет на много больше. Такая система, основанная на 16-разрядном кодировании символов, получила название универсальной – UNICODE. Шестнадцать разрядов позволяют обеспечить уникальные коды для 65 536 различных символов – этого поля вполне достаточно для размещения в одной таблице символов большинства языков планеты.
Переход на данную систему
долгое время сдерживался из-за недостатков
ресурсов средств вычислительной техники
(в системе кодирования UNICODE все текстовые
документы становятся автоматически вдвое
длиннее). Во второй половине 90-х годов
технические средства достигли необходимого
уровня обеспечения ресурсами, и сегодня
мы наблюдаем постепенный перевод документов
и программных средств на универсальную
систему кодирования.
Глава II Реализация шифра Цезаря в Делфи.
Как было уже сказано, Шифр Це́заря — один из древнейших шифров; при шифровании каждый символ заменяется другим, отстоящим от него в алфавите на фиксированное число позиций.
Текст программы
в делфи:
unit
Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ActnList, StdCtrls,
Buttons, ExtCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Shfcezar: TActionList;
zzcezar: TAction;
rrcezar: TAction;
clear: TAction;
BitBtn6: TBitBtn;
memo1: TMemo;
memo2: TMemo;
procedure zzcezarExecute(Sender: TObject);
procedure rrcezarExecute(Sender: TObject);
procedure clearExecute(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function zcezar(s:string;key:byte):
var
i:integer;
a,b:char;
c:string;
begin
c:='';
for i:=1 to length(s) do
begin
a:=s[i];
b:=chr(ord(a)+key);
c:=c+b;
end;
zcezar:=c;
end;
function rcezar(s:string;key:byte):
var
i:integer;
a,b:char;
c:string;
begin
c:='';
for i:=1 to length(s) do
begin
a:=s[i];
b:=chr(ord(a)-key);
c:=c+b;
end;
rcezar:=c;
Информация о работе Защита информации методом шифрования и кодирования