- •Кодирование как средство криптографического закрытия информации
- •Задания: (по вариантам)
- •Расшифровать сообщение, зашифрованное некоторым очень простым шифром перестановки. Алфавит: 33 буквы русского алфавита. Пробел не зашифрован.
- •Зашифровать сообщение Mes кодом Вижинера с ключом KeyC.
- •Расшифровать сообщение Cod кодом Вижинера с ключом KeyD.
- •Алфавит русский нумерованный по порядку (для задания № 2, 3)
Теоретические основы информатики
Лабораторная работа № 3. Кодирование информации при передаче по дискретному каналу без помех
Теория
Кодирование как процесс выражения информации в цифровом виде
Любому дискретному сообщению или знаку сообщения можно приписать какой-либо порядковый номер. Измерение аналоговой величины, выражающееся в сравнении ее с образцовыми мерами, также приводит к числовому представлению информации. Передача или хранение сообщений при этом сводится к передаче или хранению чисел. Числа можно выразить в какой-либо системе счисления. Таким образом, будет получен один из кодов, основанный на данной системе счисления.
Для передачи и проведения логических и арифметических операций наиболее целесообразен двоичный код. Однако он неудобен при вводе и выводе информации, так как трудно оперировать с непривычными двоичными числами. Кроме того, запись таких чисел на бумаге оказывается слишком громоздкой. Поэтому, помимо двоичной, получили распространение системы, которые, с одной стороны, легко сводятся как к двоичной, так и к десятичной системе, а с другой стороны, дают более компактную запись. К таким системам относятся восьмеричная, шестнадцатеричная и двоично-десятичная.
Среди кодов, отходящих от систем счисления, большое практическое значение имеют такие, у которых при переходе от одного числа к другому изменение происходит только в одном разряде.
Наибольшее распространение получил код Грея, часто называемый циклическим или рефлексно-двоичным. Код Грея используется в технике аналого-цифрового преобразования, где он позволяет свести к единице младшего разряда ошибку неоднозначности при считывании. Комбинации кода Грея, соответствующие десятичным числам от 0 до 15, приведены в таблице.
Правило перевода числа из кода Грея в обычный двоичный и обратно: первая единица со стороны старших разрядов остается без изменения, последующие цифры (0 и 1) остаются без изменения, если число единиц, им предшествующих, четно (в коде Грея), инвертируются, если число единиц нечетно.
Пример: 01111код грея => 010102
01 111кг = 01 (первую единицу оставляем без изменений)
01 1 11кг = 010 (нечетное число единиц – инвертируем 3-й бит)
011 1 1кг = 0101 (четное число единиц – оставляем 4-й бит без изменений)
0111 1кг = 010102 (нечетное число единиц – инвертируем 5-й бит)
Пример: 011102 => 01001код грея
01 1102 = 01 (первую единицу оставляем без изменений)
01 1 102 = 01 0 (нечетное число единиц – инвертируем 3-й бит)
011 1 02 = 010 0 (нечетное число единиц – инвертируем 4-й бит)
0111 02 = 0100 1кг (нечетное число единиц – инвертируем 5-й бит)
Число в десятичном коде |
Код Грея |
Число в десятичном коде |
Код Грея |
Число в десятичном коде |
Код Грея |
0 |
0000 |
6 |
0101 |
11 |
1110 |
1 |
0001 |
7 |
0100 |
12 |
1010 |
2 |
0011 |
8 |
1100 |
13 |
1011 |
3 |
0010 |
9 |
1101 |
14 |
1001 |
4 |
0110 |
10 |
1111 |
15 |
1000 |
5 |
0111 |
|
|
|
|
Кодирование как средство криптографического закрытия информации
В последние годы все большее развитие получают интегрированные информационно-вычислительные системы, в частности автоматизированные системы управления и вычислительные сети коллективного пользования. В таких системах концентрируются большие объемы данных, хранимые на машинных носителях, и осуществляется автоматический межмашинный обмен данными, в том числе и на больших расстояниях.
Во многих случаях хранимая и передаваемая информация может представлять интерес для лиц, желающих использовать ее в корыстных целях. Последствия от такого несанкционированного использования информации могут быть весьма серьезными. Поэтому уже в настоящее время возникла проблема защиты информации от несанкционированного доступа.
Существует комплекс технических средств защиты информации, включающий системы охраны территории и помещений, регулирования доступа в помещения, устройств идентификации пользователей и др. Ограничимся рассмотрением методов защиты информации от несанкционированного доступа при передаче ее по каналам связи. Рассматриваемые методы защиты обеспечивают такое преобразование сообщений (данных), при котором их исходное содержание становится доступным лишь при наличии у получателя некоторой специфической информации (ключа) и осуществления с ее помощью обратного преобразования. Эти методы называют методами криптографического закрытия информации. Они применяются как для защиты информации в каналах передачи, так и для защиты ее в каналах хранения, в основном в накопителях со сменными носителями (магнитными лентами, дисками), которые легко могут быть похищены.
Преобразования, выполняемые в системах, где используются методы криптографического закрытия информации, можно считать разновидностями процессов кодирования и декодирования, которые получили специфические названия шифрования и дешифрования. Зашифрованное сообщение называют криптограммой.
Современные методы криптографического закрытия информации должны обеспечивать секретность при условии, что противник обладает любым специальным оборудованием, необходимым для перехвата и записи криптограмм, а также в случае, когда ему стал известен не только алгоритм шифрования, но и некоторые фрагменты криптограмм и соответствующего им открытого текста сообщений. Иначе говоря, метод должен предусматривать такое множество возможных ключей, чтобы вероятность определения использованного даже при наличии указанных фрагментов была близка к нулю. Последнее требование является весьма жестким, но его можно удовлетворить.
Известно значительное число различных методов криптографического закрытия информации. Рассмотрим некоторые из них в порядке возрастания сложности и надежности закрытия.
Шифр простой подстановки. Буквы кодируемого сообщения прямо заменяются другими буквами того же или другого алфавита. Если сообщения составляются из k различных букв, то существует k! способов выражения сообщения k буквами этого алфавита, т. е. существует k! различных ключей.
Шифры подстановки можно разделить на шифры перестановки и шифры замены.
Шифр перестановки. Шифрами перестановки называют такие шифры, преобразования которых приводят к изменению только порядка следования символов исходного сообщения. Примером преобразования шифра перестановки может служить следующее правило: каждая буква исходного сообщения, стоящая в тексте на позиции с четным номером, меняется местами с предшествующей ей буквой.
Шифр замены. Шифрами замены называют такие шифры, преобразования которых заключается в замене каждого символа открытого сообщения на другие символы – шифробозначения, причем порядок следования шифробозначений совпадает с порядком следования соответствующих им символов открытого сообщения. В качестве примера преобразования шифра замены можно привести такое правило: каждая буква исходного сообщения заменяется её порядковым номером в алфавите. В этом случае исходный буквенный текст преобразуется в числовой.
Метод шифрования прост, но не позволяет обеспечить высокой степени защиты информации. Это связано с тем, что буквы английского языка (как, впрочем, и других языков), имеют вполне определенные и различные вероятности появления. Так как в зашифрованном тексте статистические свойства исходного сообщения сохраняются, то при наличии криптограммы достаточной длины можно с большой достоверностью определить вероятности отдельных букв, а по ним и буквы исходного сообщения.
Шифр Вижинера. Этот шифр является одним из наиболее распространенных. Степень надежности закрытия информации повышается за счет того, что метод шифрования предусматривает нарушение статистических закономерностей появления букв алфавита.
Каждая буква алфавита нумеруется. Например, буквам английского алфавита ставятся в соответствие цифры от 0 (А=0) до 25 (Z=25):
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
Ключ представляет собой некоторое слово или просто последовательность букв, которая подписывается с повторением под сообщением. Цифровой эквивалент каждой буквы криптограммы определяется в результате сложения с приведением по модулю 26 цифровых эквивалентов буквы сообщения и лежащей под ней буквы ключа.
Пример. Зашифруем сообщение CAREFULLY кодом Вижинера с ключом PIES.
Запишем буквы сообщения, расположив под ними их цифровые эквиваленты. Аналогично внизу запишем ключ, повторяя его необходимое число раз:
C |
A |
R |
E |
F |
U |
L |
L |
Y |
2 |
0 |
17 |
4 |
5 |
20 |
11 |
11 |
24 |
P |
I |
E |
S |
P |
I |
E |
S |
P |
15 |
8 |
4 |
18 |
15 |
8 |
4 |
18 |
15 |
Складывая верхние и нижние цифровые эквиваленты с приведением по модулю 26, получим следующую последовательность чисел: 17 8 21 22 20 2 15 3 13, что соответствует криптограмме RIVWUCPDN.
Для расшифровки припишем к криптограмме ключ, повторяя его необходимое число раз (вместе с цифровыми эквивалентами):
R |
I |
V |
W |
U |
C |
P |
D |
N |
17 |
8 |
21 |
22 |
20 |
2 |
15 |
3 |
13 |
P |
I |
E |
S |
P |
I |
E |
S |
P |
15 |
8 |
4 |
18 |
15 |
8 |
4 |
18 |
15 |
2 |
0 |
17 |
4 |
5 |
20 |
11 |
11 |
24 |
C |
A |
R |
E |
F |
U |
L |
L |
Y |
Затем необходимо к верхним цифровым эквивалентам добавить 26 и вычесть нижний цифровой эквивалент, а результат привести по модулю 26. Потом полученные числа заменяют на соответствующие им символы.
Шифр Вижинера обладает достаточно высокой надежностью закрытия только при использовании весьма длинных ключей, что сопряжено с определенными трудностями.
Шифр Вижинера с ключом, состоящим из одной буквы, известен как шифр Цезаря, а с неограниченным неповторяющимся ключом как шифр Вернама.