Возможно ли написать драйвер, который шифрует файлы? Типа truecrypt, только с шифрованием на уровне отдельного файла, а не диска
Здравствуйте, DimaR, Вы писали:
DR>Возможно ли написать драйвер, который шифрует файлы? Типа truecrypt, только с шифрованием на уровне отдельного файла, а не диска
Да без проблем. Самое сложное здесь-знание реализации целевой ФС, для чего потребуется тщательное изучение её исходников.
Сам драйвер шифрования разрабатывать не придётся, они уже есть во
всех ядрах
Здравствуйте, BlackEric, Вы писали:
BE>Здравствуйте, DimaR, Вы писали:
DR>>Возможно ли написать драйвер, который шифрует файлы? Типа truecrypt, только с шифрованием на уровне отдельного файла, а не диска
BE>Возможно — это будет драйвер-фильтр файловой системы.
Я тоже про это думал. Насколько я понял, там есть filesystem filter driver и mini-filter.
Непонятно с каким типом надо иметь дело и являются ли эти типы разными?
Стоит задача модификации данных в процессе их чтения и записи. Для простоты считаю, что длина файлов меняться не будет и шифрование будет происходить с помощью простого XOR. А то в противном случае возникают большие проблемы и развесистая архитектура типа
https://www.osr.com/dmk/ .
И по ходу вопрос возник — как хранить признак "зашифрованый\нормальный" для каждого файла, что бы драйвер мог решить нужно ли шифровать или нет ?
Здравствуйте, DimaR, Вы писали:
DR>И по ходу вопрос возник — как хранить признак "зашифрованый\нормальный" для каждого файла, что бы драйвер мог решить нужно ли шифровать или нет ?
В NTFS широчайшие возможности для хранения метаданных у файла. Признак можно поместить в object id, например. Или в расширенный атрибут (EA). Или в NTFS-поток (ADS). Вот ссылка, как с этим работать:
http://hex.pp.ua/ntfs.php