Файловая система NTFS Механизм EFS
Рефераты >> Программирование и компьютеры >> Файловая система NTFS Механизм EFS

В процессе работы системы NTFS ведет запись в файл метаданных – файл журнала с именем $LogFile. NTFS использует его для регистрации всех операций, влияющих на структуру тома NTFS, в том числе для регистрации создания файлов и выполнения любых команд, модифицирующих структуру каталогов. Файл журнала используется и при восстановлении тома NTFS после аварии системы.

Еще один элемент MFT зарезервирован для корневого каталога, обозначаемого как «\». Его запись содержит индекс файлов и каталогов, хранящихся в корне структуры каталогов NTFS. Когда NTFS впервые получает запрос на открытие файла, она начинает его поиск с записи корневого каталога. Открыв файл, NTFS сохраняет файловую ссылку MFT для этого файла и поэтому в следующий раз, когда понадобится считать или записать тот же файл, сможет напрямую обратиться к его записи в MFT.

NTFS регистрирует распределение дискового пространства в файле битовой карты с именем $Bitmap. Атрибут данных для файла битовой карты содержит битовую карту, каждый бит которой представляет кластер тома и сообщает, свободен кластер или выделен.

Защита и шифрование

Защита в NTFS построена на модели объектов Windows 2000. Файлы и ка­талоги защищены от доступа пользователей, не имеющих соответствующих прав. Открытый файл реализуется в виде объекта «файл» с дескриптором защиты, хранящимся на диске как часть файла. Прежде чем процесс сможет открыть описатель какого-либо объекта, в том числе и объекта «файл», сис­тема защиты Windows 2000 должна убедится, что у этого процесса есть соот­ветствующие полномочия. Дескриптор защиты в сочетании с требованием регистрации пользователя при входе в систему гарантирует, что ни один процесс не получит доступа к файлу без разрешения системного администра­тора или владельца файла.

Пользователи часто хранят на своих компьютерах конфиденциальную информацию. Хотя данные на серверах компаний обычно надежно защи­щены, информация, хранящаяся на портативном компьютере, может попасть в чужие руки в случае потери или кражи компьютера. Права доступа к фай­лам NTFS в таком случае не защитят данные, поскольку полный доступ к то­мам NTFS можно получить независимо от их защиты – достаточно восполь­зоваться программами, умеющими читать файлы NTFS вне среды Windows 2000. Кроме этого, права доступа к файлам NTFS становятся бесполезны при использовании другой системы Windows 2000 и учетной записи администра­тора, т.к. учетная запись администратора обладает привилегиями захвата во владение и резервного копирования, любая из которых позволяет получить доступ к любому защищенному объекту в обход его параметров защиты.

NTFS поддерживает механизм Encrypting File System (EFS), с помощью которого пользователи могут шифровать конфиденциальные данные. EFS полностью прозрачен для приложений. Это означает, что данные автомати­чески расшифровываются при чтении их приложением, работающим под учетной записью пользователя, который имеет права на просмотр этих дан­ных, и автоматически шифруются при изменении их авторизованным приложением.

NTFS не допускает шифрования файлов, расположенных в корневом ката­логе системного тома или в каталоге \Winnt, поскольку многие находящиеся там файлы нужны в процессе загрузки, когда EFS ещё не активна.

EFS использует криптографические сервисы, предоставляемые Windows 2000 в пользовательском режиме, и состоит из драйвера устройства режима ядра, тесно интегрированного с NTFS и DLL5-модулями пользовательского режима, которые взаимодействуют с подсистемой1 локальной аутентифика­ции и криптографическими DLL.

Доступ к зашифрованным файлам можно получить только с помощью за­крытого ключа из криптографической пары EFS (которая состоит из закры­того и открытого ключей), а закрытые ключи защищены паролем учетной за­писи. Таким образом, без пароля учетной записи, авторизированной для про­смотра данных, доступ к зашифрованным EFS файлам на потерянных или краденных портативных компьютерах нельзя получить никакими средст­вами, кроме грубого перебора паролей.

Механизм EFS

EFS использует средства поддержки шифрования, введенные Microsoft ещё в Windows NT 4. При первом шифровании файла EFS назначает учетной записи пользователя, шифрующего этот файл, криптографическую пару – за­крытый и открытый ключи. Пользователи могут шифровать файлы с помо­щью Windows Explorer; для этого нужно открыть диалоговое окно Свойства применительно к нужному файлу, щелкнуть кнопку Другие и установить флажок Шифровать содержимое для защиты данных. Пользователи также могут шифровать файлы с помощью утилиты командной строки cip­ber.Windows 2000 автоматически шифрует файлы в каталогах, помеченных зашифрованными. При шифровании файла EFS генерирует случайное число, называемое шифровальным ключом файла (file encryption key, FEK8). EFS ис­пользует FEK для шифрования содержимого файла по более стойкому вари­анту DES3 (Data Encryption Standard) – DESX4. EFS сохраняет FEK вместе с самим файлом, но FEK шифруется по алгоритму RSA-шифрования на основе открытого ключа. После выполнения EFS этих действий файл защищен: дру­гие пользователи не смогут расшифровать данные без расшифрованного FEK файла, а FEK они не смогут расшифровать без закрытого ключа пользователя – владельца файла.

Для шифрования FEK используется алгоритм криптографической пары, а для шифрования файловых данных – DESX, алгоритм симметричного шиф­рования (в нем применяется один и тот же ключ для шифрования и дешиф­рования). Как правило, алгоритмы симметричного шифрования работают очень быстро, что делает их подходящими для шифрования больших объе­мов данных, в частности файловых. Однако у алгоритмов симметричного шифрования есть одна слабая сторона: зашифрованный ими файл можно вскрыть, получив ключ. Если несколько человек собирается пользоваться од­ним файлом, защищенным только DESX, каждому из них понадобится дос­туп к FEK файла. Очевидно, что незашифрованный FEK – серьезная угроза безопасности. Но шифрование FEK все равно не решает проблему, поскольку в этом случае нескольким людям приходится пользоваться одним и тем же ключом расшифровки FEK.

Защита FEK сложная проблема, для решения которой EFS использует ту часть своей криптографической архитектуры, которая опирается на техноло­гии шифрования с открытым ключом. Шифрование FEK на индивидуальной основе позволяет нескольким лицам совместно использовать зашифрованный файл. EFS может зашифровать FEK файла с помощью открытого ключа каж­дого пользователя и хранить их FEK вместе с файлом. Каждый может полу­чить доступ к открытому ключу пользователя, но никто не сможет расшиф­ровать с его помощью данные, зашифрованные по этому ключу. Единствен­ный способ расшифровки файла заключается в использовании операционной системой закрытого ключа, который она. Как правило, хранит в безопасном месте. Закрытый ключ помогает расшифровать нужный FEK файла. Windows 2000 хранит закрытые ключи на жестком диске, что не слишком безопасно, но в следующих выпусках операционной системы пользователи смогут хра­нить закрытые ключи на компактных носителях вроде смарт-карт. Алго­ритмы на основе открытого ключа обычно довольно медленные. Поэтому они используется EFS только для шифрования FEK. Разделение ключей на открытый и закрытый немного упрощает управление ключами по сравнению с таковым в алгоритмах симметричного шифрования и решает дилемму, свя­занную с защитой FEK.


Страница: