- Office 2007
- Office 2021
- Автоматическая запись макросов
- Активация и выключение макросов во вкладке разработчика
- Включение / отключение предупреждений безопасности на панели сообщений
- Включение предупреждений безопасности перед открытием книг с поддержкой макросов
- Замечание для office 2000
- Кратко, как создается данная защита
- Макросы с цифровой подписью из надежных источников
- Настройки безопасности макросов в центре управления безопасностью
- Применение vba и макросов в microsoft excel
- Совет 423. управление подключением макросов в приложениях office
- Совет 424. использование цифровой подписи в office 2000/xp
- Совет 425. идентификация элементов управления
- Создание цифровых сертификатов и подпись макросов в книгах ms excel
- Цифровая подпись для макроса excel
Office 2007
По сути, включить макрокоманды в табличном редакторе офиса 2007 можно таким же самым способом, как и в Excel 2003. Отличие заключается лишь в том, что для открытия диалогового окна «Параметры макросов» приходится проделать несколько иной путь.
В офисе 2007 первоначально необходимо зайти в Меню, расположенное в верхнем левом углу, после чего сразу же осуществить переход в «Параметры Excel».
Вслед за этим на экране компьютера появится диалоговое окно «Центр управления безопасностью», визуально изучив которое можно без труда обнаружить строку «Параметры центра управления безопасностью», по которой нужно сразу же кликнуть левой клавишей мышки.
После осуществления последовательных переходов на экране отобразится подменю «Параметры макросов», предоставляющее возможность вносить изменения в процесс отображения, написания и запуска различных макрокоманд.
В новом открывшемся окне переключатель нужно установить на последней строке «Включить все макросы». Система, конечно, предупредит, что такие действия могут позволить осуществлять запуск и опасных программ. Однако если пользователь уверен в своих действиях, на компьютере установлена надёжная противовирусная защита, то опасаться такого предупреждения нет смысла.
Также включить и отключить макрокоманды в Excel 2007 можно более простым способом, ничем не отличающимся от включения их в Excel 2021.
Office 2021
Включить и отключить макрокоманды в Excel 2021 можно, воспользовавшись меню «Разработчик». Однако данное меню не всегда активно в табличном редакторе 2021, особенно в момент первого запуска офисного приложения, поэтому первоначально следует совершить определённые действия, чтобы создать данное меню на панели инструментов.
Для этого необходимо кликнуть по меню «Файл», далее перейти в «Параметры», а затем в «Настройку ленты». С правой стороны будет находиться список, среди предложенных вариантов пользователь может выбрать те меню, в которых он наиболее часто будет нуждаться, а потому желает, чтобы они постоянно были отображены на панели инструментов.
Теперь включить и отключить макрокоманды будет несложно, достаточно будет навести курсор на «Разработчик», далее перейти на строку «Безопасность макросов», после чего откроется уже знакомое меню «Параметры макросов», в котором выбирается последний пункт.
Проделав все вышеописанные действия по включению макрокоманд, у пользователя уже не возникнут вопросы, как отключить макросы в Excel 2021, поскольку все шаги остаются такими же, только меняется их последовательность на обратную.
Чтобы создать собственную автоматическую подпрограмму, пользователь должен освоить некоторые азы программирования. Однако если это совершенно невозможно, поскольку нет никаких навыков в этой области, пользователь не настроен на прохождение обучения программированию, можно начать писать макрокоманды, в которых возникла острая необходимость.
Писать такие команды в Excel 2021 несложно, достаточно кликнуть по строке «Начать запись», а дальше производить те действия, которые ранее выполнялись пользователем, и которые он желал бы осуществлять автоматически. Завершив выполнение действий, нажимается кнопка «Завершить».
Достаточно создать только первую макрокоманду в Excel 2021, как пользователь поймёт, что ничего сложного в этом нет, а также ощутит заметные преимущества, которыми станет сопровождаться его работа. Благодаря этому появляется желание писать новые подпрограммы и совершенствовать процесс выполнения производственных задач.
Итак, макрокоманды в табличных редакторах 2003, 2007 и 2021 способны восприниматься большинством пользователей в качестве лучших помощников, позволяющих рутинную работу автоматизировать и повысить её результативность.
Автоматическая запись макросов
Прежде, чем начать автоматическую запись макросов, нужно включить макросы в программе Microsoft Excel.
Далее, переходим во вкладку «Разработчик». Кликаем по кнопке «Запись макроса», которая расположена на ленте в блоке инструментов «Код».
Открывается окно настройки записи макроса. Тут можно указать любое имя макроса, если установленное по умолчанию вас не устраивает. Главное, чтобы имя это начиналось с буквы, а не с цифры. Также, в названии не должно быть пробелов. Мы оставили название по умолчанию – «Макрос1».
Тут же, при желании, можно установить сочетание клавиш, при нажатии на которые макрос будет запускаться. Первой клавишей обязательно должна быть клавиша Ctrl, а вторую клавишу пользователь устанавливает самостоятельно. Например, мы, в качестве примера, установили клавишу М.
Далее, нужно определить, где будет храниться макрос. По умолчанию, он будет храниться в этой же книге (файле), но при желании можно установить хранение в новой книге, или в отдельной книге макросов. Мы оставим значение по умолчанию.
В самом нижнем поле настройки макросов можно оставить любое подходящее по контексту описание данного макроса. Но, это делать не обязательно.
Когда все настройки выполнены, жмем на кнопку «OK».
После этого, все ваши действия в данной книге (файле) Excel будут записываться в макрос до тех пор, пока вы сами не остановите запись.
Для примера, запишем простейшее арифметическое действие: сложение содержимого трёх ячеек (=C4 C5 C6).
После этого, жмем на кнопку «Остановить запись». Эта кнопка преобразовалась из кнопки «Запись макроса», после включения записи.
Активация и выключение макросов во вкладке разработчика
Сразу стоит отметить, что в процессе выполнения этой задачи некоторые пользователи могут столкнуться с трудностями. Все из-за того, что вкладка “Разработчик” по умолчанию выключена и ее, для начала, нужно активировать.
- Щелкаем левой кнопкой мыши по меню «Файл».
- Затем, внизу раскрывшегося списка выбираем пункт «Параметры».
- В параметрах программы нас интересует пункт «Настройка ленты». Далее ставим галочку напротив вкладки “Разработчик”. Теперь подтверждаем действие нажатием кнопки «OK».
По завершении этих действий вкладка «Разработчик» будет активирована. Теперь можно приступить к включением макросов.
Щелкаем по вкладке “Разработчик”. В левом углу будет находиться требуемый раздел, где нажимаем кнопку «Безопасность макросов» в виде восклицательного знака.В появившемся окне с настройками можно активировать сразу все макросы. Для этого необходимо выбрать из всех предложенных параметров вариант “Включить все макросы”
Нажатием кнопки “OK” подтверждаем внесенные изменения и выходим из параметров.Однако, следует обратить внимание на то, что разработчики Microsoft не рекомендуют выбирать этот вариант, так как есть вероятность запуска опасной программы, что может навредить компьютеру. Поэтому, выполняя эту операцию, помните, что вы действуете на свой страх и риск.
Деактивация макросов происходит в том же диалоговом окне. Однако, при выключении пользователю будет предложено сразу три варианта с разной степенью безопасности.
Как следует из названия, в самом нижнем варианте исправно будут работать все макросы, имеющие цифровую подпись. А в двух первых вариантах они будут отключены полностью. После того, как мы сделали выбор, нажимаем кнопку «OK».
Включение / отключение предупреждений безопасности на панели сообщений
Вы можете включить / отключить предупреждения безопасности с помощью панели сообщений следующим образом:
- Нажмите вкладку ФАЙЛ на ленте.
- Нажмите Опции. Откроется диалоговое окно «Параметры Excel».
- Нажмите Траст-центр.
- Нажмите кнопку Настройки центра управления безопасностью.
- Нажмите Панель сообщений.
Появятся настройки панели сообщений для всех приложений Office.
В разделе « Отображение панели сообщений» есть два варианта.
Вариант 1 — Показывать панель сообщений во всех приложениях, когда активный контент, такой как макросы, заблокирован.
Это опция по умолчанию. Панель сообщений появляется, когда потенциально небезопасный контент отключен.
Если вы выбрали — Отключить все макросы без уведомления в настройках макросов центра управления безопасностью , этот параметр не выбран, и панель сообщений не отображается.
Это опция по умолчанию. Панель сообщений появляется, когда потенциально небезопасный контент отключен.
Если вы выбрали — Отключить все макросы без уведомления в настройках макросов центра управления безопасностью , этот параметр не выбран, и панель сообщений не отображается.
Вариант 2 — Никогда не показывать информацию о заблокированном контенте.
Если этот параметр выбран, он отключает панель сообщений, и никакие предупреждения о проблемах безопасности не появляются, независимо от каких-либо параметров безопасности в центре управления безопасностью.
Включение предупреждений безопасности перед открытием книг с поддержкой макросов
Когда вы открываете книгу, Excel предупреждает вас о том, что книга содержит макросы, и спрашивает, хотите ли вы включить их. Вы можете нажать кнопку « Включить содержимое» , если источник рабочей книги является надежным.
Вы можете установить любой из этих трех параметров в центре управления безопасностью в параметрах Excel.
Если вы работаете в организации, системный администратор мог изменить настройки по умолчанию, чтобы никто не мог их изменить. Microsoft рекомендует не изменять параметры безопасности в центре управления безопасностью, поскольку последствия могут быть потеря данных, кража данных или нарушения безопасности на вашем компьютере или в сети.
Тем не менее, вы можете узнать настройки безопасности макросов в следующих разделах и проверить, если они должны быть изменены. Вы должны использовать свой собственный инстинкт, чтобы выбрать любой из этих вариантов на основе контекста и ваших знаний о происхождении файла.
Замечание для office 2000
Следует обратить
внимание еще на один важный момент, который
имел место в приложениях Office 2000.
Порой здесь
возникает ситуация, когда пользователь не
может сохранить проект (документ с
макрокодом) с электронной подписью —
запись документа возможна только без
подписи. При этом выдается неверная
диагностика о нехватке места на диске.
Причина такого
поведения — наличие внутренних
синтаксических ошибок в коде проекта.
Поэтому при обнаружении подобного
сообщения о невозможности сохранения
документа с электронной подписью, прежде
чем отменять подпись, рекомендуем вам
проверить работоспособность вашего кода.
Довольно часто ошибка связана с
отсутствием описания переменной или ссылки
на внешний объект. Чтобы лучше понять суть
ситуации, сделайте следующий простой
пример в Word: создайте новый документ,
перейдите в среду VBA и там создайте
макрокоманду Test1:
Sub Test1 () Avar = 1 End If
Разумеется,
сначала должен быть задан режим Option Explicit (обязательное
объявление переменных).
Теперь установите
электронную подпись и попробуйте сохранить
документ. Скорее всего, у вас появится
сообщение о нехватке места на диске для
записи файла. Запустите
макрокоманду Test1 на выполнение —
транслятор выдаст сообщение о
синтаксической ошибке (не определена
переменная Avar). Добавьте в процедуру
описание:
Dim Avar As Integer
Теперь
макрокоманда станет выполняться (правда, не
делая ничего полезного), и документ тоже без
проблем сохранится с электронной подписью.
Судя по всему,
такое поведение Word 2000 является ошибкой (об
этом говорит хотя
бы выдача неверной диагностики). В Word 2002 эта
ситуация исправлена — сохранение проекта с
подписью выполняется независимо от ошибок
кода.
Кратко, как создается данная защита
Для создания данной защиты нужно, разархивировать файл Excel. Перейти в архиве в папку
xl
, открыть файл
vbaProject.bin
, в конце файла находятся наши ключи, редактируем значения ключей на пусто, сохраняем файл. Переводим наш архив, обратно в файл Excel. Готово!
Это самый простой вариант данной защиты, но существует множество модификаций.
Алгоритм снятия защиты Project is Unviewable.
1) Разархивируем подопытный файл, переходим в файл …xl_relsworkbook.xml.rels
2) В файле workbook.xml.rels ищем строку, содержащую слово vbaProject, обычно имеет следующий вид: />. В этой строке нас интересует ключ Target,иего значение. Значение является название файла, в котором находится проект VBA.
3) Открываем на редактирование файл, указанный в ключе Target, ищем в файле ключи CMG, DPB, GC. И меняем в их названиях любую букву на любую другую, например: CMC, DPC, CC. При поиске нужно быть аккуратным, так как защищающий может поместить в проект форму, подписью повторяющую один из ключей, например такую:
4) Переводим архив обратно в файл Excel.
5) Запускаем приложение Excel, выполняем следующее: в Центре управления безопасностью -> Параметры макросов -> Отключить все макросы без уведомления. Перезапускаем Excel. Данная операция нужна, для блокировки защиты, которую иногда ставят авторы макросов.
6) Открываем файл. Если все правильно сделано то, Excel, будет ругаться на не правильные ключи, которые мы отредактировали, в пункте 3. Жмем, да, пока данные сообщения не закончатся и диалоговое окно закроется.
Если данное сообщение не появляется то, вы отредактировали не файл который содержит проект VBA.
7) Открываем проект VBA. После всего, проект VBA должен быть доступен.
8) Но иногда защита не снимается, тогда нужно сохранить файл, проверить, что он действительно сохранился! И проделать повторно операции с 1 по 7. Обычно так происходит когда в файле workbook.xml.rels в ключе Target установлено printerSettings.bin.При сохранение, Excel исправляет это на значение на vbaProject.bin
Данную защиту можно установить и снять следующим инструментом:
Третий вид защиты — Hidden Module, скрытые модули VBA
Время на снятие: от 15 до 20 мин (нужен редактор OLE — объектов, Structured Storage Viewer, например.
Недостаток: доступ к коду модуля VBA
Менее распространенный вид защиты обычно встречается в комбинации с защитой Project is Unviewable. При установке данной защиты модуль VBA не отображается в проекте книги Excel. О его существовании можно узнать, проанализировав код VBA (что требует время!) или открыть файл Excel в программе OpenOffice или LibreOffice (так же можно смотреть код при защите Project is Unviewable, но данный способ не дает возможность получить рабочий файл, без пароля).
Просмотр кода VBA в
LibreOffice
Макросы с цифровой подписью из надежных источников
Microsoft предоставляет возможность размещения макросов с цифровой подписью. Однако, даже если макрос имеет цифровую подпись, вы должны убедиться, что он принадлежит доверенному издателю.
Вы найдете доверенных издателей в центре доверия.
Нажмите Надежные издатели в диалоговом окне центра управления безопасностью. Справа появится список сертификатов с подробной информацией — выдано, выдано и срок действия.
Выберите сертификат и нажмите «Просмотр».
Нажмите Надежные издатели в диалоговом окне центра управления безопасностью. Справа появится список сертификатов с подробной информацией — выдано, выдано и срок действия.
Выберите сертификат и нажмите «Просмотр».
Информация о сертификате отображается.
Как вы узнали ранее в этой главе, вы можете установить опцию для запуска макроса с цифровой подписью, только если вы доверяете издателю. Если вы не доверяете издателю, вы получите уведомление о включении подписанного макроса и доверии издателю.
Настройки безопасности макросов в центре управления безопасностью
Настройки макроса находятся в центре управления безопасностью в настройках Excel. Чтобы получить доступ к центру доверия, выполните следующие действия:
Нажмите вкладку ФАЙЛ на ленте.
Нажмите Опции. Откроется диалоговое окно «Параметры Excel».
Нажмите Центр управления безопасностью на левой панели.
Нажмите кнопку Настройки центра управления безопасностью в Центре управления безопасностью Microsoft Excel.
Нажмите вкладку ФАЙЛ на ленте.
Нажмите Опции. Откроется диалоговое окно «Параметры Excel».
Нажмите Центр управления безопасностью на левой панели.
Нажмите кнопку Настройки центра управления безопасностью в Центре управления безопасностью Microsoft Excel.
Откроется диалоговое окно « Центр управления безопасностью ».
Вы увидите различные параметры, доступные в Центре управления безопасностью Excel на левой панели. Вы узнаете об опциях, связанных с макросами Excel, в следующих разделах.
Применение vba и макросов в microsoft excel
Макросы – это внутренние приложения, которые берут на себя всю рутинную работу, облегчая жизнь пользователю. Каждый пользователь может создать макрос без знания языков программирования. Для этого существует макрорекодер, который запускается с помощью кнопки «Запись макроса».
В этом режиме все действия пользователя макрорекодер в Excel записывает, переводя на язык программирования VBA-код в автоматическом режиме. После завершения записи мы получаем готовую программу, которая сама выполняет те действия, которые выполнял пользователь при записи.
Как записать готовый макрос в Excel? Очень просто:
- На вкладке «Разработчик» нажимаем кнопку «Запись макроса».
- В появившимся диалоговом окне заполняем параметры макроса. И нажимаем «ОК».
- После завершения нажимаем на кнопку «Остановить запись», после чего макрос будет автоматически сохранен.
- Для выполнения или редактирования записанного макроса нажимаем на кнопку «Макросы» (или комбинацию клавиш ALT F8). Появится окно со списком записанных макросов и кнопками для управления ими.
С помощью макропрограмм можно увеличить производительность труда пользователя в десятки раз. Но чтобы использовать запись пользовательских макросов на все 100% следует соблюдать простые правила, которые существенно влияют на их качество в момент записи и эффективность при выполнении.
Совет 423. управление подключением макросов в приложениях
office
В целом решение
этого вопроса одинаково для всех
приложений Office. Но в отношении Outlook (версии
2000 и 2002) стоит напомнить, что эта программа
использует для хранения макросов только
один фиксированный файл с именем VbaProject.OTM,
который хранится в каталоге C:
Для ответа на
поставленный вопрос нужно иметь в виду, что
приложения Office (начиная с 2000) имеют три
уровня безопасности для управления
загрузкой макросов, а также возможность
использования цифровой подписи. С помощью
этих механизмов можно более гибко
управлять режимами загрузки.
Рассмотрим возможности управления безопасностью. Режим защиты устанавливается
в диалоговом окне «Безопасность» (Security), которое открывается командой «Сервис|Макро|Безопасность»
(рис. 1), где видно описание трех возможных уровней безопасности.
- Высокий. Разрешается запуск только подписанных макросов из надежных источников.
Неподписанные макросы удаляются автоматически. При наличии макросов с неизвестными
подписями выдается окно предупреждения, однако такие макросы можно подключить,
только признав подлинность подписи. - Средний. Подписанные макросы загружаются автоматически. О наличии неподписанных
макросов выдается предупреждение, и решение об их загрузке принимается пользователем. - Низкий. Защита отсутствует, все макросы загружаются автоматически.
В приложениях Office
по умолчанию установлен средний уровень
безопасности, что и вызывает появление окна
предупреждения о наличии макросов.
Соответственно существует два варианта
ответа на приведенный выше вопрос:
- Установите низкий уровень безопасности — и никаких предупреждений вообще
не будет. Но мы не рекомендуем этот вариант, так как проверка на наличие макросов
при загрузке неизвестных файлов (например, полученных из Интернета или по
электронной почте) необходима. Но для Outlook такой вариант является вполне
подходящим — ведь мы имеем дело только с фиксированным файлом локального компьютера,
который создается исключительно его хозяином. - Лучший способ (наиболее универсальный) — использовать цифровую подпись проекта
(в том числе и для Outlook). Этот способ немного подробнее мы рассмотрим в
совете 424.
Для тех, кто
работает с Word и Excel, есть еще один вариант,
который позволяет отменить проверку
наличия макросов в глобальных шаблонах и
Add-ins. Для подобных приложений во вкладке
Trusted Sources [Надежные источники] окна Security [Безопасность]
имеется флажок Trust all installed Add-ins and templates [Доверять
всем установленным надстройкам и шаблонам].
Совет 424. использование цифровой подписи в office 2000/xp
- Создание и удаление сертификата. Каждый пользователь может создать один
или несколько сертификатов. Это делается тремя способами: создать собственный
сертификат, получить сертификат у администратора сети (если на предприятии
разработаны собственные стандарты) и получить фирменный сертификат в специализированном
центре (например, у той же компании Microsoft).Собственный сертификат создается утилитой SelfCert.exe, которая входит
в состав пакета (рис. 2). В первом варианте русской
версии MS Office 2000 в этой программе была ошибка (не раскрывалось диалоговое
окно), но уже в первом сервисном наборе обновления дефект был исправлен. Удаление же сертификата выполняется довольно хитрым способом, с помощью
(кто бы мог ожидать?) Internet Explorer. Для этого в IE нужно выбрать команду
«Сервис|Свойства обозревателя», затем выделить вкладку «Содержание», нажать
кнопку «Сертификатов…», открыть вкладку «Личные» в окне «Диспетчер Сертификатов»
и уже там проводить операции с сертификатами (рис. 3).- Подключение цифровой подписи. Электронная подпись подключается к VBA-проекту
в среде VBA с помощью команды Tools|Digital Signature, которая выводит соответствующее
окно «Цифровая подпись» (рис. 4).Для выбора нужного сертификата нужно нажать кнопку «Выбрать», после чего
выдается окно Select Certificate со списком имеющихся сертификатов (рис.
5).Нажав кнопку, можно ознакомиться с более детальной информацией о сертификате
в окне Certificate с тремя вкладками (рис. 6).К этой же информации можно получить доступ из других диалоговых окон при
работе с сертификатами (обычно они называются «Подробности»). При желании
можно в любой момент поменять подпись проекта или удалить ее совсем. - Признание подписи в качестве надежной. Эта операция выполняется только в
момент загрузки проекта с наличием макросов, имеющих подписи, в режиме среднего
и высокого уровней безопасности.В этом случае выдается окно предупреждения (рис. 7).
В этот момент можно посмотреть более детальную информацию о данном сертификате
(кнопка Details). Если вы считаете данный источник надежным, то нужно установить
флажок Always trust macros from this source [Всегда доверять макросам этого
источника] — и данный сертификат автоматически попадет в список надежных.
Эти можно увидеть во вкладке Trusted Source окна Security (рис.
8). Здесь же можно удалить ненужные подписи.Обратите внимание, что при использовании среднего уровня безопасности вы
можете разрешить использование макросов проекта даже без занесения подписей
в список доверенных (в том числе загружать проекты без подписей, например
созданных в Office 97). При работе с высоким уровнем это можно сделать,
только признав подпись (установив флажок «Всегда доверять»), то есть макросы
проектов без подписей вообще нельзя использовать.
Совет 425. идентификация элементов управления
If TypeOf ctl Is CommandButton Then ' Выполнить что-то End If Для идентификации типа произвольного элемента управления можно использовать, например, такую процедуру: Private Sub Command1_Click() Dim ctl As Control Dim str As String For Each ctl In Me.Controls If TypeOf ctl Is CommandButton Then _ str = "CommandButton" If TypeOf ctl Is TextBox Then str = "TextBox" If TypeOf ctl Is OptionButton Then str = _ "OptionButton" If TypeOf ctl Is DriveListBox Then str = _ "DriveListBox" If TypeOf ctl Is DataCombo Then str = _ "DataCombo" MsgBox "Элемент управления типа " & str Next ctl End Sub
Создание цифровых сертификатов и подпись макросов в книгах ms excel
12. Создать собственный цифровой сертификат:
· Создать цифровой сертификат с помощью средства Цифровой сертификат для проектов VBA(Digital Certificate for VBA Projects), находящегося в группе Средства Microsoft Office (Microsoft Office Tools) в меню Microsoft Office, или использовать свой сертификат, созданный в одной из предыдущих лабораторных работ.
· Создать еще один цифровой сертификат с фиктивным именем Михайла Ломоносов.
13. Открыть в MS Excel книгу Книга с макросом1.
14. Добавить к проекту VBA, содержащему код макроса Граница_и_заливка, цифровую подпись:
· На панели инструментов Разработчик в группе Код выполнить команду Visual Basic .
· Выполнить команду Tools/Digital Signature. В окне Цифровая подпись нажать кнопку Выбрать, выделить мышью сертификат, названный своим именем и нажать ОК. Проверить, что имя сертификата высветилось в группе Текущая подпись проекта VBA окна Цифровая подпись.
· Щелкнуть на кнопке Подробности, перейти на вкладку Состав окна Сертификат и просмотреть параметры сертификата. Перейти на вкладку Путь сертификации и удостовериться, что источник, выдавший сертификат не считается надежным – помечен красным крестиком. Закрыть окно Сертификат, нажав ОК.
· Подтвердить подпись проекта, нажав ОК в окне Цифровая подпись.
· Сохранить изменения и закрыть окно редактора VBA.
· Установить уровень безопасности для макросов Отключить все макросы, кроме макросов с цифровой подписью.
· Сохранить изменения и закрыть книгу Книга с макросом1.
15. Занести цифровую подпись со своим именем в список надежных источников:
· Открыть книгу Книга с макросом1. Удостовериться, что строка предупреждения выдается, так как нет доверия к сертификату.
· Перейти на вкладку Файл/Сведения или щелкнуть на ссылке Запуск макросов отключен строки предупреждения. Выбрать пункт Дополнительные параметры из выпадающего списка Включить содержимое.
· Просмотреть данные о текущем цифровом сертификате, затем установить переключатель в позицию Доверять всем документам от этого издателя и нажать ОК.
16. Закрыть и вновь открыть книгу. Проверить, что уведомление системы безопасности не выдается, макросы при этом активны (выполняются).
17. Удостовериться, что сертификат занесен в список надежных источников, открыв вкладку Надежные издатели в окне команды Разработчик/Безопасность макросов.
18. Заверить макрос из книги Книга с макросом2 цифровой подписью Михайла Ломоносов.
19. Установить уровень безопасности для макросов Отключить все макросы, кроме макросов с цифровой подписью (Разработчик, Безопасность макросов, вкладка Параметры макросов).
20. Проверить, что при открытии книги с подписью из ненадежного источника Книга с макросом2 по-прежнему выдается уведомление системы безопасности.
Задание 3. С помощью оснастки для управления цифровыми сертификатами осуществить экспорт своего сертификата для проверки подписи на другом компьютере.
§
21. Открыть оснастку Сертификаты, для этого:
· Открыть командную строку Windows командой Пуск/Выполнить. Ввести в командной строке mmc и нажать ОК. Будет создана новая консоль Windows.
· В окне консоли выполнить команду Консоль/Добавить или удалить оснастку, в окне добавления оснастки щелкнуть кнопку Добавить и выбрать тип оснастки – Сертификаты. Нажать кнопку Добавить, (если вы работаете в сеансе пользователя-администратора будет открыто окно Оснастка диспетчера сертификатов, в этом окне следует установить переключатель с позицию моей учетной записи пользователя и нажать кнопку Готово). Затем нажать Закрыть. Выйти из окна добавления оснастки, нажав ОК.
· Сохранить параметры консоли, выполнив команду Консоль/Сохранить. В окне команды должна быть выбрана папка Администрирование, в строку Имя файла ввести имя Сертификаты и нажать кнопку Сохранить.
· Закрыть окно консоли.
22. Отобразить группу Администрирование в главном меню Windows:
· Щелкнуть правой кнопкой мыши на кнопке Пуск главного меню или в любом месте панели задач Windows и выбрать команду Свойства.
· В окне свойств перейти на вкладку Меню «Пуск» и нажать кнопку Настроить. Если было выбрано Классическое меню «Пуск», то установить флажок Отображать меню «Администрирование» и нажать ОК. Если было выбрано Меню «Пуск», то перейти на вкладку Дополнительно, в группе Администрирование установить переключатель в позицию Отображать в меню «Все программы» и нажать ОК. Для выхода из окна настройки меню нажать ОК.
23. В группе Программы главного меню Windows выбрать группу Администрирование и открыть созданную ранее оснастку Сертификаты.
24. Просмотреть с помощью оснастки список доверенных издателей: в окне оснастки Сертификаты раскрыть группу Сертификаты – текущий пользователь, выбрать группу Доверенные издатели, а затем Сертификаты. Проверить, что в этой группе имеется ваш сертификат.
25. Экспортировать цифровой сертификат:
· В окне оснастки Сертификаты раскрыть группу Сертификаты – текущий пользователь, выбрать группу Личные, а затем Сертификаты.
· Выбрать сертификат Михайла Ломоносов, щелкнуть на нем правой кнопкой мыши и выбрать команду Все задачи/Экспорт – будет открыт мастер экспорта.
· В мастере экспорта сертификата нажимать кнопку Далее, не меняя настроек, на этапе задания файла экспорта с помощью кнопки Обзор выбрать свою рабочую папку, задать имя файла сертификат и нажать ОК, затем нажать Далее и Готово.
· Закрыть оснастку Сертификаты, проверить, что в рабочей папке появился файл сертификат .
26. Скопировать рабочую папку на другой компьютер (либо создать нового локального пользователя Windows и зайти в Windows под именем нового пользователя).
27. На другом компьютере (в сеансе нового пользователя) открыть приложение MS Excel, установить уровень безопасности для макросов Отключить все макросы кроме макросов с цифровой подписью.
28. Открыть книгу Книга с макросом2, проанализировать уведомление системы безопасности; удостовериться, что подпись считается недействительной, невозможно включить макрос, невозможно добавить сертификат в список доверенных источников.
29. Импортировать сохраненный в файле цифровой сертификат для обеспечения возможности проверки подписи:
· Запустить мастер установки сертификата, для этого открыть свойства браузера MS Internet Explorer (Сервис/Свойства обозревателя), перейти на вкладку Содержание, нажать кнопку Сертификаты, затем в окне Сертификаты нажать кнопку Импорт. Запустить мастер установки сертификата можно также двойным щелчком мыши на файле сертификата.
· В окне мастера нажать Далее, с помощью кнопки Обзор выбрать рабочую папку, в которой сохранен файл с сертификатом, выбрать файл сертификат и нажать Открыть. Нажать кнопку Далее.
· В следующем окне мастера установить переключатель в положение Автоматически выбрать хранилище на основе типа сертификата, нажать кнопку Далее, а затем кнопку Готово.
· Изучить предупреждение системы о том, что готовится установка корневого сертификата и нажать Да.
· Закрыть окно свойств обозревателя.
30. Открыть книгу Книга с макросом2, проанализировать уведомление системы безопасности; удостовериться, что после установки сертификата подпись считается действительной, можно включить макрос и добавить сертификат в список доверенных источников.
31. Проверить, что при внесении изменений в код макроса, цифровая подпись снимается:
· Создать копию книги Книга с макросом2 (сохранить ее под новым именем Книга с макросом3). Открыть книгу Книга с макросом3 в MS Excel.
· Перейти в редактор VBA, открыть код макроса.
· Изменить значение какого-либо свойства форматирования, устанавливаемого макросом. Например, найти в коде макроса текст With Selection.Font, а затем – строку .Size = 12 и заменить размер шрифта (12) на больший (14).
· В редакторе VBA нажать значок сохранения, проверить, что будет выдано уведомление об удалении подписи, нажать кнопку Сохранить изменения и удалить подпись.
· Проверить, что невозможно подписать макрос заново с помощью сертификата Михайла Ломоносов (сертификат недоступен в списке Выбрать команды Tools/Digital Signature).
32. Ответить на контрольные вопросы.
33. Показать результаты выполнения лабораторной работы преподавателю, затем отключить отображение группы Администрирование в меню Windows.
Контрольные вопросы:
1. Почему не на всех компьютерах с ОС Windows XP в главном меню имеется пункт Администрирование?
(Для отображения пункта Администрирование требуется задать соответствующие настройки главного меню Windows).
2. Какие средства ОС и офисных приложений Windows позволяют работать с цифровыми сертификатами?
(Работу с сертификатами можно осуществлять с помощью встроенных команд приложений MS Office – команда Файл/Сведения/Защитить документ/Добавить цифровую подпись, в настройках браузера MS Internet Explorer (Сервис/ Свойства обозревателя/Содержание/Сертификаты), а также через оснастку ОС Windows Сертификаты.
3. Почему при переносе подписанного документа (проекта VBA – макроса) на другой компьютер невозможно проверить подлинность подписи?
(Проверка подлинности подписи осуществляется с помощью открытого ключа соответствующего сертификата. Поскольку сертификаты были выданы локально, открытый ключ не доступен другим пользователям и на других компьютерах. Однако сертификат можно экспортировать во внешний файл, тогда после импорта сертификата на другом компьютере станет возможной проверка подлинности подписи).
4. Почему даже после импорта сертификата на другом компьютере невозможно заново подписать той же подписью измененный документ (либо проект VBA – макрос)?
(Для подписания требуется наличие закрытого ключа сертификата, однако закрытый ключ не может быть экспортирован/импортирован для сертификатов проектов VBA. Для сертификатов данного вида доступен только экспорт/импорт открытого ключа, использующегося для проверки подлинности подписей).
ТЕМА 4. ЭЛЕМЕНТЫ СТЕГАНОГРАФИИ
Задача защиты конфиденциальной информации от несанкционированного доступа решалась во все времена на протяжении истории человечества. Уже в древнем мире выделилось два основных направления решения этой задачи, существующие и по сегодняшний день: криптография и стеганография. Целью криптографии является скрытие содержимого сообщений за счет их шифрования. В отличие от этого, при стеганографии скрывается сам факт существования тайного сообщения. При этом оба способа могут быть объединены и использованы для повышения эффективности защиты информации.
Методы стеганографии позволяют скрывать секретные сообщения путем их встраивания в безобидные послания так, чтобы невозможно было заподозрить существование встроенного тайного послания. Примером классической стеганографии является использование симпатических («невидимых») чернил, которые проявляются при нагревании или других манипуляциях с письмом.
Слово «стеганография» происходит от греческих слов steganos (секрет, тайна) и graphy (запись) и означает буквально «тайнопись». Исторически это направление защиты секретных сообщений появилось первым, но затем во многом было вытеснено криптографией.
Скрываемая информация называется стеганограммой или просто стего. Данные, среди которых она прячется, играют роль информационного контейнера.
Большинство текущих исследований в области стеганографии так или иначе связаны с цифровой обработкой сигналов. Это позволяет говорить о цифровой стеганографии. Контейнером могут служить любые данные (файлы) достаточно большого объема, например графические или звуковые. Их структура проста и, как правило, обладает большой избыточностью, позволяющей вместить значительный объем дополнительной информации.
Стеганография, использующая текстовые контейнеры, называется текстовой. Методы текстовой стеганографии, как правило, не отвечают современным требованиям надежности, однако хорошо иллюстрируют идеи стеганографии.
Примером является выбор определенных позиций букв (нулевой шифр). Частный случай этого метода – акростих, когда начальные буквы каждой строки образуют сообщение. Определенные символы открытого текста могут выделяться, например, за счет незначительных различий в написании рукописных символов, либо незаметных пометок (например, булавочных проколов) печатных символов.
Компьютерным аналогом этого метода является выделение нужного слова предваряющим его двойным пробелом.
Кроме того, при сокрытии двоичных последовательностей одинарный пробел может соответствовать значению 0, а двойной – 1.
Другим вариантом является кодирование двоичного сообщения с помощью добавления (1) или отсутствия (0) дополнительного пробела в конце строки/абзаца (метод хвостовых пробелов), либо замена (1) или отсутствие замены (0) символа русского текста латинской буквой, одинаковой с ним по написанию (метод знаков одинакового начертания). При распечатке скрытая информация будет потеряна.
Обеспечение секретности информации перечисленными методами текстовой стеганографии возможно лишь благодаря тому, что противнику неизвестен сам метод скрытия, то есть такие методы не являются стойкими.
Лабораторная работа № 6. Сокрытие сообщения методом знаков одинакового начертания
Стеганографический метод знаков одинакового начертания позволяет скрыть произвольное сообщение в электронном тексте. Метод основан на том, что ряд символов кириллицы и латиницы имеют одинаковое экранное представление, в то время как их кодировка различается, поскольку для латинского и национального алфавитов используются разные части кодовых таблиц.
К таким символам относятся: «а», «А», «В», «е», «Е», «К», «М», «Н», «о», «О», «р», «Р», «с», «С», «Т», «у», «х», «Х». Так, например, буква «А» в русском написании имеет ASCII-код 192, а в латинском – 65.
Пусть скрываемое сообщение содержит только символы, которые могут быть закодированы таблицей ASCII (русский/ латинский текст, цифры, знаки препинания). Таблицу ASCII (правда не для русской, а для западноевропейской раскладки клавиатуры можно посмотреть в окне команды MS Word Вставка/Символ/Обычный текст). Каждый символ в этом случае кодируется числом от 0 до 255 или в двоичном виде – одним байтом (8 двоичных знаков).
Пусть в качестве контейнера используется русский текст, не содержащий отдельных символов латиницы. Если текст содержит отдельные латинские слова, при стеганографическом кодировании/декодировании они игнорируются (пропускаются). Далее следует просматривать подряд символы одинакового начертания в тексте, и если требуется закодировать значение 0, то символ не менять, а если следует закодировать 1 – изменить символ на символ того же начертания латинского алфавита.
Пример: Пусть следует скрытно передать число 7, используя в качестве контейнера текст «Хорошо в деревне летом!».
Числу 7 соответствует ASCII-код 55 и двоичная последовательность 00110111.
Выделим в тексте знаки одинакового начертания (жирным шрифтом):
Хорошо в деревне летом!
В тексте длиной 20 символов получили 11 знаков, с помощью которых можно кодировать стеганограмму. Таким образом, данный метод отличается высокой производительностью.
В примере для кодирования сообщения потребуется всего 8 знаков одинакового начертания, будем перебирать эти знаки один за другим подряд с начала сообщения, заменяя латиницей те из них, которые соответствуют единицам двоичной последовательности (рис.27). На рис.27 замененные символы выделены подчеркиванием.
Контейнер | Х | о | р | о | ш | о | в | д | е | р | е | в | н | е | л | е | т | о | м | ! | |||
Стеганограмма | |||||||||||||||||||||||
Контейнер со стего | Х | о | p | o | ш | о | в | д | e | p | e | в | н | е | л | е | т | о | м | ! |
Рис.27. Пример применения метода символов одинакового начертания
Данный метод не лишен недостатков, так, факт передачи секретного сообщения невозможно скрыть при просмотре текста контейнера в редакторе MS Word.
Если заполненный контейнер открыть в приложении MS Word с включенной проверкой правописания, слова со вставленными латинскими символами будут помечены как орфографические ошибки.
Кроме того, замененные символы могут быть выделены при изменении форматирования. Например, если выделить в MS Word весь текст заполненного стего-контейнера шрифтом, не поддерживающим русский алфавит, будут переформатированы только замененные символы (латиница), например:
· шрифт Algerian: Хоpoшо в дepeвне летом!
· шрифт Blackadder ITC: Хоpoшо в дepeвне летом!
· шрифт Brush Script MT: Хоpoшо в дepeвне летом!
Таким образом, метод не отличается стойкостью.
Задание
Скрыть стеганограмму в текстовом контейнере, используя метод знаков одинакового начертания. Извлечь стеганограмму из текста.
Цифровая подпись для макроса excel
В нашем проекте есть шаблон excel (.xlt) и файл надстроек (.xla). Эти файлы используются для создания dataview. Dataview – не что иное, как своего рода отчет. Xla содержит код для создания элементов управления для создания, удаления, управления dataview и его содержимого. Этими элементами управления являются OCX-элементы управления, созданные в VС для создания dataview. У нас есть дополнительный код отдельно и файл шаблона отдельно.
xlt и xla были цифровой подписью для обеспечения того, что код является доказательством несанкционированного доступа. Все работало нормально, пока не появилась цифровая подпись. Создание dataview создается путем открытия файла шаблона (.xlt) и сохранения файла в расширении .xls, тем самым не изменяя файлы xlt и xla с цифровой подписью. Когда мы пытаемся сохранить это, мы получаем следующее сообщение: “Вы пытаетесь изменить подписанный проект. У вас нет подходящего ключа для подписи проекта…”
Когда мы даем Сохранить изменения и отбрасываем подпись, подпись теряется только для созданного нового файла. Подпись остается неизменной для xlt и xla.
Мы также попытались вручную отредактировать ячейки в excel и сохранить его, но мы не получаем это сообщение выше. Только после создания dataview с помощью элемента управления OCX и сохранения их всплывает сообщение выше.