Sichern und Wiederherstellen verschlüsselter Dateien

Der verschlüsselndes Dateisystem (EFS) filtert das Öffnen einer verschlüsselten Datei so, dass die Anwendung, die die Datei geöffnet hat, Zugriff auf die unverschlüsselten Informationen erhält, vorausgesetzt, sie verfügt natürlich über die richtigen Anmeldeinformationen, um auf die Datei zuzugreifen und den Schlüssel abzurufen, der zum Entschlüsseln der Datei erforderlich ist. Nachfolgende Lesevorgänge für diese Datei ergeben unverschlüsselten Text. Dies ist für den typischen Zugriff auf verschlüsselte Dateien sehr wünschenswert und sorgt dafür, dass die Verschlüsselung und Entschlüsselung der Dateien transparent bleibt. Es wird jedoch die Sicherung verschlüsselter Dateien verhindert, da die gesicherten Dateien die Nur-Text-Version sind, wenn versucht wird, eine Sicherung mit den Standarddatei-E/A-Aufrufen wie CreateFile, ReadFileund WriteFiledurchzuführen.

Die verschlüsselungsrohen Funktionen werden bereitgestellt, um dieses Problem zu lösen. Sicherungsanwendungen sind ein primärer vorgesehener Benutzer für diese Funktionen. Unformatierte Verschlüsselungsfunktionen unterscheiden sich von anderen Dateisystemfunktionen darin, dass Open-, Read- und Write-Funktionen den Zugriff auf die verschlüsselten Rohdatenströme und auch das Lesen/Schreiben des $EFS Datenstroms ermöglichen. Daher benötigt der Aufrufer der verschlüsselungsrohen Funktionen keinen Zugriff auf die kryptografischen Schlüssel, die die Datei entschlüsseln. Die folgenden unformatierten Verschlüsselungs-APIs sind für die Verwendung mit Sicherungs- und Wiederherstellungsanwendungen verfügbar:

Raw Encryption API Beschreibung
OpenEncryptedFileRaw Öffnen Sie eine verschlüsselte Datei mit Zugriff auf Daten im verschlüsselten Format. Wenn der Aufrufer keinen Zugriff auf den Schlüssel für die Datei hat, benötigt der Aufrufer SeBackupPrivilege, um verschlüsselte Dateien zu exportieren, oder SeRestorePrivilege, um verschlüsselte Dateien zu importieren.
CloseEncryptedFileRaw Schließen einer verschlüsselten Datei, die mit OpenEncryptedFileRaw geöffnet wurde
ReadEncryptedFileRaw Lesen einer verschlüsselten Datei, die ihre Daten im verschlüsselten Format zurücklässt
WriteEncryptedFileRaw Schreiben einer verschlüsselten Datei, die ihre Daten im verschlüsselten Format zurücklässt
ImportCallback Anwendungsdefinierte Rückrufe zur Verwendung mit WriteEncryptedFileRaw
ExportCallback Anwendungsdefinierte Rückrufe zur Verwendung mit ReadEncryptedFileRaw