Шифровать указанный альтернативный поток данных - NTFS, XP - PullRequest
3 голосов
/ 11 ноября 2010

Согласно MSDN, каждый альтернативный поток данных может храниться в зашифрованном виде (зашифрованное состояние NTFS).Единственная функция API, которую я нашел для установки состояния шифрования, - это EncryptFile (), которая позволяет шифровать все потоки данных файла.Так есть ли способ не шифровать все потоки данных под XP?

Ответы [ 2 ]

3 голосов
/ 14 ноября 2010

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

Пожалуйста, покажите ссылку на эту статью MSDN. Я убежден, что это ошибка (это была бы не единственная статья, опубликованная на microsoft.com, которая не была на 100% точной - авторы этих статей - люди). Черт возьми, я поместил материал на MSDN, который не был на 100% точным ранее в моей карьере.

1 голос
/ 05 мая 2015

Это важный момент, поскольку ADS может содержать исполняемый код и, следовательно, может представлять угрозу безопасности.На практике шифруются только атрибуты $ DATA файла, но теоретически возможно зашифровать другие атрибуты.Однако другие атрибуты, такие как $ EFS, не шифруются.Только нерезидентные атрибуты $ DATA могут быть зашифрованы.Если в записи MFT существует несколько (нерезидентных) атрибутов $ DATA, все эти атрибуты шифруются одним и тем же ключом.Обратите внимание, что другие атрибуты не будут зашифрованы, только атрибуты $ DATA.

...