- •Информационная безопасность и защита информации
- •Санкт-Петербург
- •Содержание
- •1. Общие положения 4
- •2. Порядок проведения лабораторных работ 4
- •3. Содержание лабораторных работ 4
- •4. Список литературы 165
- •1. Общие положения
- •3. Содержание лабораторных работ
- •Тема 1. Защита файлов и папок в операционной системе windows xp
- •Лабораторная работа №1. Создание учетных записей пользователей, шифрование и управление доступом к файлам и папкам на локальном компьютере
- •2. Порядок проведения лабораторных работ
- •Тема 2. Защита документов ms office 2010
- •Лабораторная работа №3. Защита книг ms Excel 2010
- •Лабораторная работа №4. Защита баз данных ms Access 2010
- •Тема 3. Управление цифровыми подписями и защита документов ms office от макровирусов
- •Лабораторная работа №5. Использование цифровой подписи проектов vba
- •Тема 4. Элементы стеганографии
- •Лабораторная работа № 6. Сокрытие сообщения методом знаков одинакового начертания
- •Лабораторная работа № 7. Стеганография в ascii-логотипах
- •Тема 5. Элементы криптографии
- •Лабораторная работа № 8. Изучение шифра «Поворотные решетки Кардано»
- •Лабораторная работа № 9. Анализ шифра табличной перестановки
- •Лабораторная работа №10. Криптоанализ шифра простой замены
- •Лабораторная работа №11. Криптоанализ многоалфавитных шифров (шифр Виженера)
- •Лабораторная работа №12. Изучение шифра rsa
- •Лабораторная работа №13. Изучение электронной цифровой подписи Эль-Гамаля
- •4. Список литературы
Лабораторная работа № 6. Сокрытие сообщения методом знаков одинакового начертания
Стеганографический метод знаков одинакового начертания позволяет скрыть произвольное сообщение в электронном тексте. Метод основан на том, что ряд символов кириллицы и латиницы имеют одинаковое экранное представление, в то время как их кодировка различается, поскольку для латинского и национального алфавитов используются разные части кодовых таблиц.
К таким символам относятся: «а», «А», «В», «е», «Е», «К», «М», «Н», «о», «О», «р», «Р», «с», «С», «Т», «у», «х», «Х». Так, например, буква «А» в русском написании имеет ASCII-код 192, а в латинском – 65.
Пусть скрываемое сообщение содержит только символы, которые могут быть закодированы таблицей ASCII (русский/ латинский текст, цифры, знаки препинания). Таблицу ASCII (правда не для русской, а для западноевропейской раскладки клавиатуры можно посмотреть в окне команды MS Word Вставка/Символ/Обычный текст). Каждый символ в этом случае кодируется числом от 0 до 255 или в двоичном виде – одним байтом (8 двоичных знаков).
Пусть в качестве контейнера используется русский текст, не содержащий отдельных символов латиницы. Если текст содержит отдельные латинские слова, при стеганографическом кодировании/декодировании они игнорируются (пропускаются). Далее следует просматривать подряд символы одинакового начертания в тексте, и если требуется закодировать значение 0, то символ не менять, а если следует закодировать 1 – изменить символ на символ того же начертания латинского алфавита.
Пример: Пусть следует скрытно передать число 7, используя в качестве контейнера текст «Хорошо в деревне летом!».
Числу 7 соответствует ASCII-код 55 и двоичная последовательность 00110111.
Выделим в тексте знаки одинакового начертания (жирным шрифтом):
Хорошо в деревне летом!
В тексте длиной 20 символов получили 11 знаков, с помощью которых можно кодировать стеганограмму. Таким образом, данный метод отличается высокой производительностью.
В примере для кодирования сообщения потребуется всего 8 знаков одинакового начертания, будем перебирать эти знаки один за другим подряд с начала сообщения, заменяя латиницей те из них, которые соответствуют единицам двоичной последовательности (рис.27). На рис.27 замененные символы выделены подчеркиванием.
Контейнер |
Х |
о |
р |
о |
ш |
о |
|
в |
|
д |
е |
р |
е |
в |
н |
е |
|
л |
е |
т |
о |
м |
! |
Стеганограмма |
0 |
0 |
1 |
1 |
|
0 |
|
|
|
|
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
Контейнер со стего |
Х |
о |
p |
o |
ш |
о |
|
в |
|
д |
e |
p |
e |
в |
н |
е |
|
л |
е |
т |
о |
м |
! |
Рис.27. Пример применения метода символов одинакового начертания
Данный метод не лишен недостатков, так, факт передачи секретного сообщения невозможно скрыть при просмотре текста контейнера в редакторе MS Word.
Если заполненный контейнер открыть в приложении MS Word с включенной проверкой правописания, слова со вставленными латинскими символами будут помечены как орфографические ошибки.
Кроме того, замененные символы могут быть выделены при изменении форматирования. Например, если выделить в MS Word весь текст заполненного стего-контейнера шрифтом, не поддерживающим русский алфавит, будут переформатированы только замененные символы (латиница), например:
шрифт Algerian: Хоpoшо в дepeвне летом!
шрифт Blackadder ITC: Хоpoшо в дepeвне летом!
шрифт Brush Script MT: Хоpoшо в дepeвне летом!
Таким образом, метод не отличается стойкостью.
Задание
Скрыть стеганограмму в текстовом контейнере, используя метод знаков одинакового начертания. Извлечь стеганограмму из текста.
Указания к выполнению лабораторной работы
Для выполнения данной лабораторной работы рекомендуется выбрать партнера, с которым можно будет обменяться полученным в результате выполнения работы текстом со встроенной стеганограммой.
Для выполнения лабораторной работы рекомендуется воспользоваться файлом «Стеганография.xlsm», позволяющим производить анализ контейнера и стеганограммы.
Технология выполнения задания
Задание 1. Выбрать стеганограмму, контейнер и занести стеганограмму в контейнер.
Придумать текст секретного сообщения (от 7 до 15 символов).
Получить двоичный код стеганограммы:
Открыть файл «Стеганография.xlsm», перейти на вкладку Файл/Сведения и включить выполнение макросов.
Выбрать вкладку Главная, перейти на лист «Сообщение» и занести в столбец С по одному символы сообщения.
В столбце D с помощью текстовой функции КОДСИМВ() будут отображены ASCII-коды символов сообщения.
В столбце E с помощью инженерной функции ДЕС.В.ДВ() будут отображены восьмизначные двоичные последовательности, соответствующие символам сообщения (рис.28).
Рис.28. Пример кодирования стеганограммы
Выбрать текст сообщения-контейнера, состоящий из 3-5 абзацев (в зависимости от длины стеганограммы, должен быть примерно в 30-40 раз длиннее), не содержащий отдельных латинских символов.
Загрузить выбранный текст в книгу «Стеганография.xlsm» с целью его исследования на наличие символов с одинаковым написанием:
Скопировать текст, перейти на лист «Загрузить текст» и выбрать ячейку B3. Установить курсор мыши в строку формул, вставить в нее скопированный текст и нажать Enter. Затем нажать кнопку Загрузить текст.
После загрузки текста контейнера будет открыт лист «Стего». Под символами стего-контейнера должны отображаться: 0 – если символ одинаково начертания набран в русскоязычной раскладке клавитауры и 1 – если он набран латиницей. Под символами, начертание которых различно в русском и латинском алфавитах, ничего не отображается. Первоначально все отображаемые цифры должны быть нулями.
ПРИМЕЧАНИЕ: Если в загруженном тексте встретились отдельные символы, которым соответствует 1 (например. вследствие опечатки), следует заменить такой символ на русский.
Если текст содержит отдельные слова на латинице, соответствующие их символам цифры следует выделить (например, с помощью заливки цветом с целью их дальнейшего исключения из рассмотрения).
На листе «Стего» начиная с начала текста контейнера заменить символы одинакового начертания так, чтобы под текстом отобразилась двоичная последовательность, соответствующая первому символу стеганограммы (рис.29):
Рис.29. Пример занесения в контейнер буквы «П» стеганограммы, которой соответствует последовательность 11001111
Если в последовательности стоит 0, то символ не изменяется;
Если в последовательности стоит 1 – символ меняется на латинский;
Для удобства последний символ восьмибитовой последовательности (восьмой символ 0/1) можно выделять цветом.
Продолжая изменять символы контейнера, аналогичным образом занести в него все символы стеганограммы.
После того, как все символы стеганограммы занесены в контейнер, сохранить его:
Перейти на лист «Выгрузить текст стего» и нажать кнопку Получить стего.
Выбрать ячейку B3 и скопировать ее, затем создать новый документ MS Word и вставить в него текст из ячейки.
Сохранить файл в текстовом формате, выбрав в окне сохранения тип файла Обычный текст (*.txt).
Задание 2. Извлечь стеганограмму из заполненного контейнера.
Обменяться заполненным контейнером с партнером.
Открыть полученный контейнер, содержащий стеганограмму партнера, в MS Word:
Оценить степень заполнения контейнера, проанализировав слова, помеченные как ошибки правописания.
Просмотреть измененные символы в контейнере, выполнив команду Главная/Выделить/Выделить все, а затем выбрав из списка шрифтов на вкладке Главная шрифт, существенно отличающийся от текущего по написанию и не имеющий рядом с названием примера написания русских букв (например, CasTELLAR, Curl или другой). Замененные буквы должны выделиться этим шрифтом, формат русского текста останется без изменения.
Скопировать текст заполненного стего-контейнера.
Провести анализ заполненного стего-контейнера:
Открыть книгу «Стеганография.xlsm», включив макросы. При необходимости очистить данные с листа «Стего» с помощью кнопки Очистить, затем загрузить скопированный текст заполненного стего-контейнера.
На листе «Стего» проанализировать вставленный текст контейнера. Если текст содержит латинские слова (но не отдельные символы), выделить соответствующие им части двоичной последовательности цветом с целью дальнейшего исключения из рассмотрения.
Выписать с листа «Стего» двоичную последовательность, порциями по 8 символов (можно заносить в столбец на лист «Сообщение»). Последовательности, начинающиеся с символа 0 при вводе в ячейки MS Excel следует предварять знаком одинарной кавычки. Для удобства на листе «Стего» можно выделять цветом конечные символы восьмибитовых последовательностей.
Выписку производить до того момента, пока оставшаяся последовательность не будет состоять только из нулей, что означает незаполненную часть контейнера.
Преобразовать полученную последовательность байт в символы стеганограммы:
Перевести каждый байт в десятичное число с помощью инженерной функции ДВ.В.ДЕС();
Рассматривая полученные десятичные числа как ASCII-коды символов, получить для каждого из них соответствующий символ с помощью текстовой функции СИМВОЛ().
Выписать полученный скрытый текст.
Показать результаты выполнения лабораторной работы преподавателю.
Контрольные вопросы:
1. Почему перед занесением в стего-контейнер приходится преобразовывать сообщение в двоичный вид?
(Метод символов одинакового начертания позволяет кодировать только два состояния: 0 – символ не изменен, 1 – символ изменен)
2. Какие функции MS Excel могут быть использованы для перевода секретного сообщения в двоичный вид и обратного преобразования?
(Текстовые функции КОДСИМВ() и СИМВОЛ(), позволяющие получить ASCII-код символа и выдать символ с заданным кодом; инженерные функции ДЕС.В.ДВ() и ДВ.В.ДЕС(), осуществляющие перевод из одной системы счисления в другую)
3. Каков основной недостаток стеганографического метода символов одинакового начертания?
(Метод скрытия не является стойким, поскольку факт изменения текста контейнера легко установить с помощью средства проверки орфографии или переформатирования текста в MS Word)
