Пример информации, хранящейся в реестре
Реестр
Блокировки и операции ввода/вывода
Логика предоставления блокировки
Блокировка файлов
Обычная логика работы с файлами
Резервное копирование зашифрованных файлов
Расшифрование файлов
Для расшифрования EFS ищет среди DDF или DRF-элементов пользователя его SID.
При нахождении пользователя расшифровывается его FEK из соответствующей записи DDF и DRF.
EFS выполняет шифрование блоками по 512 байтов.
Для расшифровки данных NTFS вызывает драйвер EFS по мере чтения данных с диска – до их помещения в файловый кэш.
EFS позволяет выполнять резервное копирование зашифрованных файлов через специальные функции даже в том случае, если доступ к файлу отсутствует.
В этом случае резервная копия файла создаётся зашифрованной; восстановленный в результате файл также будет зашифрован.
· Открытие и блокировка файла.
· Последовательные или с произвольным доступом операции чтения и/или записи.
· Разблокировка и закрытие файла.
Блокировка файла позволяет процессу получить монопольный доступ к файлу или его фрагменту, что предотвращает одновременные несогласованные модификации файлов несколькими процессами.
Виды блокировки:
· Монопольная.
· Разделяемая, предоставляющая другим процессам доступ только на чтение.
Существующая блокировка | Запрашиваемая разделяемая блокировка | Запрашиваемая монопольная блокировка |
Отсутствует | + | + |
Разделяемая (одна или несколько) | + | - |
Монопольная | - | - |
Существующая блокировка | Чтение | Запись |
Отсутствует | Выполняется | Выполняется |
Разделяемая (одна или несколько) | Выполняется | Не выполняется |
Монопольная | Выполняется только процессом – владельцем блокировки | Выполняется только процессом – владельцем блокировки |
Реестр – это централизованная иерархическая база данных, хранящая информацию о параметрах конфигурации операционной системы и установленных приложений.
Информация в реестре хранится в записях типа «имя-значение», организованных в древовидную структуру.
· Информация об операционной системе.
· Информация о приложениях, установленных в системе.
· Информация о процессорах, памяти и прочие аппаратные характеристики компьютера.
· Информация, необходимая для обеспечения безопасности ОС.
· Данные, специфичные для каждого пользователя, например, индивидуальные настройки приложений.
Корневые разделы реестра
· HKEY_LOCAL_MACHINE – хранит информацию об оборудовании локального компьютера и установленном на нём ПО.
· HKEY_USERS – хранит информацию о настройке пользовательских конфигураций.
· HKEY_CURRENT_CONFIG – хранит текущие настройки различных системных параметров.
· HKEY_CLASSES_ROOT – содержит записи, устанавливающие соответствие между приложениями и расширениями имён файлов, для обработки которых данные приложения используются.
· HKEY_CURRENT_USER – хранит информацию о предпочтительных для текущего пользователя конфигурационных параметрах приложений.
Этим список корневых разделов не исчерпывается. Это – пять основных.
Работа процессов с реестром во многом аналогична работе с файлами.
Литература по ч.1 раздела 3.1
1. Соломон Д., Русинович М., «Внутреннее устройство Microsoft Windows 2000@
2. Харт Д.М., «Системное программирование в среде Windows. Третье издание».
3. А. Лихоносов, «Безопасность клиентских операционных систем. Учебное пособие». Доступно на http://ui-miit.ru.
4. http://en.wikipedia.org.
5. Панасенко С.П., Батура В.П., «Основы криптографии для экономистов: учебное пособие. Под ред. Л.Г.Гагариной». – 176 с.
6. Панасенко С.П. «Алгоритмы шифрования. Специальный справочник». – 576 с.
Внутреннее устройство операционных систем (на примере Microsoft Windows)