- •Кибардин а.В. Методы и средства Защиты компьютерной информации
- •1 Информационная безопасность как часть проблемы интегральной безопасности человека
- •Виды атак на компьютерную информацию
- •Атаки на уровне субд
- •Атаки на уровне ос
- •Атаки на уровне спо
- •Основная терминология
- •Государственная политика России в области информационной безопасности
- •2 Аппаратная реализация современных методов несанкционированного доступа к информации Технические каналы утечки информации. Классификация технических средств несанкционированного доступа к информации
- •Системы контроля компьютеров и компьютерных сетей
- •Угрозы информации в вычислительных сетях
- •3 Программная реализация современных методов нсд к информации
- •Программные закладки
- •Компьютерные вирусы
- •4 Методы защиты информации Установление подлинности
- •Парольная защита
- •Физические методы аутентификации
- •Установление полномочий
- •Матрица установления полномочий
- •Уровни полномочий
- •Регистрация
- •5 Преобразование секретной информации (криптография)
- •Симметричные криптосистемы
- •Подстановки
- •Перестановки
- •Блочные шифры
- •Потоковые шифры
- •Ассимметричные криптосистемы
- •6 Компьютерная стеганография
- •7 Сжатие (архивация информации)
- •Алгоритм Хоффмана
- •Алгоритм Лемпеля–Зива
- •Алгоритмы сжатия изображений
- •8 Защита от программ-шпионов Защита от программных закладок (пз)
- •Защита от клавиатурных шпионов
- •Защита от парольных взломщиков
- •Защита от компьютерных вирусов
- •Типы антивирусов
5 Преобразование секретной информации (криптография)
Использование криптографии (в переводе с греческого “тайнопись”) является одним из методов, значительно повышающих безопасность передачи данных в сетях ЭВМ и данных, хранящихся в удаленных устройствах памяти.
Преобразование секретной информации – это кодирование данных, которое используется для маскировки информации. Эти преобразования изменяют данные, представленные в явной форме, так что они становятся нераспознаваемыми (с определенной степенью надежности) неавторизованными людьми. Шифрование является особенно эффективным средством против прослушивания сообщений, передаваемых по канала связи, и неавторизованных доступов к данным, хранящихся в файлах.
Введем несколько понятий.
Криптография – наука о том, как обеспечить секретность сообщения.
Криптоанализ – наука о том, как вскрыть шифрованное сообщение, т.е. извлечь открытый текст, не зная ключа.
Криптология – раздел математики, изучающий математические основы криптографических методов.
Основной схемой классификации всех криптоалгоритмов является следующая схема.
Тайнопись – отправитель и получатель производят над сообщением преобразование, известное только им двоим. Сторонним лицам неизвестен сам алгоритм шифрования.
Криптография с ключом – алгоритм воздействия на передаваемые данные известен всем сторонним лицам, но он зависит от некоторого параметра – “ключа”, которым обладают только отправитель и получатель.
Симметричный криптоалгоритм – для зашифровки и расшифровки сообщения используется один и тот же блок информации (ключ).
Ассиметричный криптоалгоритм – для зашифровки сообщения используется один ключ, а для расшифровки – другой. При этом один ключ является доступным для всех (“открытый ключ”), другой (секретный ключ) имеется только у одного человека (получателя или отправителя).
Симметричные криптосистемы
Под симметричными криптосистемами понимаются такие системы, в которых для шифрования и расшифровки сообщений используется один и тот же ключ (рис. 9.1).
Все многообразие симметричных систем основывается на следующих базовых классах:
- моно- и многоалфавитные подстановки;
- перестановки;
- блочные шифры;
- гаммирование.
Рис. 5.1
Подстановки
В прямых подстановках каждый знак исходного текста заменяется одним или несколькими знаками. Одним из важных подклассов прямых подстановок являются моноалфавитные подстановки, в которых устанавливается взаимнооднозначное соответствие между знаком ei исходного алфавита и соответствующим знаком сj зашифрованного текста. Все методы моноалфавитной подстановки можно представить как числовые преобразования букв исходного текста, рассматриваемых как числа, по следующей формуле:
c ≡ (a*e +s) mod K , (5.1)
где a – десятичный коэффициент; s – коэффициент сдвига; e – код буквы исходного текста; c – код зашифрованной буквы; K – длина алфавита; mod – операция вычисления остатка от деления выражения в скобках на модуль К.
Пример. Шифр Цезаря
Рассмотрим шифрование на алфавите, состоящим и 26 латинских букв и знака пробела (пробел будем изображать знаком #). Знаку # присвоим код 0, букве A – код 1, B – код 2,… букве Z – код 26.
Исходное сообщение: WE#NEED#SNOW
Возьмем следующие параметры: a = 1 s = 2 K = 27
Формула для шифрования примет вид
c ≡ (e + 2) mod 27 (5.2)
Входной алфавит:
# 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
Выходной алфавит
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 # A
(Буквы сдвигаются на две позиции: A-C B-D и т.д.)
Тогда исходное сообщение в зашифрованном виде будет выглядеть так:
YGBPGGFBUPQY
Для расшифровки (для случая, когда a=1) используется следующая формула
e ≡ (K+ c - s) mod K (5.3)
Простая многоалфавитная подстановка последовательно и циклически меняет используемые алфавиты (в предыдущем случае для шифрования использовался один алфавит). При m-алфавитной подстановке знак a1 из исходного сообщения заменяется знаком из алфавита B1, знак a2 - знаком из алфавита B2, … знак am - знаком из алфавита Bm, знак am+1 - знаком из алфавита B1 и т.д. Эффект использования многоалфавитной подстановки состоит в том, что обеспечивается маскировка частотной статистики исходного языка, так как конкретный знак из алфавита А преобразуется в несколько различных знаков шифровального алфавита В.
Пример
Исходное сообщение: WE#NEED#SNOW
Ключ: SECURITYSECU
В качестве ключа выбрано слово SECURITY. Слово записывается под исходным сообщением, когда буквы ключа исчерпываются, начинаем повторять слово, пока не закончатся буквы исходного сообщения. Каждая буква ключа (точнее ее код) будет задавать сдвижку в исходном алфавите для получения зашифрованного символа. В качестве алфавита используем латинские буквы и знак # вместо пробела.
И сходный ключ Шифр
Т екст
(W + S) mod 27 = (23 + 19) mod 27 = 15→O
(E + E) mod 27 = (5 + 5) mod 27 = 10 → J
(# + C) mod 27 = (0 + 3) mod 27 = 3 → C
…
Задание
Предлагаем в качестве упражнения составить шифровку до конца.