Принципы шифрования
В шифрующей файловой системе (EFS) Windows 2000 для защиты данных используются механизмы шифрования на основе открытых ключей. Все файлы шифруются с помощью ключа шифрования файла (File Encryption Key, FEK), который создается случайным образом и имеет фиксированную длину.
Шифрование ключа FEK
Сам FEK, в свою очередь, шифруется с использованием одного или нескольких открытых ключей пользователей, имеющих доступ к файлу. Это позволяет организовать доступ к зашифрованным данным сразу для нескольких пользователей. Для каждого пользователя FEK зашифрован с применением его открытого ключа, а соответствующая информация хранится в специальном атрибуте EFS — поле дешифрования данных (Data Decryption Field, DDF).
При попытке расшифровать файл пользователь использует свою секретную часть ключа, которая хранится в надежном месте, например, на смарт-карте или другом защищенном устройстве.
Примечание
Шифрование, основанное на ключе, сформированном из пароля, возможно с использованием симметричного алгоритма. Однако EFS не поддерживает этот метод, поскольку он подвержен атакам по словарю и не обладает достаточной стойкостью.
Ключи восстановления
Для предотвращения потери данных в случае утраты личного ключа EFS поддерживает механизм восстановления. Ключ FEK дополнительно шифруется с помощью ключа восстановления (Recovery Encryption Key, REK). Этот зашифрованный FEK сохраняется в другом атрибуте — поле восстановления данных (Data Recovery Field, DRF).
Наличие нескольких зашифрованных FEK позволяет организациям использовать несколько агентов восстановления. Эти агенты могут хранить свои закрытые ключи восстановления на защищенных носителях, таких как смарт-карты. Использование механизма восстановления требуется редко — например, в случае увольнения пользователя или потери ключа.
Таким образом, архитектура EFS обеспечивает надежную защиту данных, при этом сохраняя возможность безопасного восстановления файлов.