From DiskCryptor wiki
Jump to: navigation, search

Kompilieren von DiskCryptor

Diese Seite wird von Denjenigen benötigt, die DiskCryptor selber kompilieren wollen. Dies ist nötig, falls Sie den Funktionsumfang des Programmes ändern wollen, selber irgendwelche Fehler beheben wollen, einfach Niemandem trauen und es vorziehen, selber den Quellcode durchzusehen und den überprüften Code zu kompilieren. Zum Kompilieren brauchen Sie eine Reihe Werkzeuge, welche Sie ganz gratis von den entsprechenden Anbietern beziehen könnt.

benötigte Werkzeuge

  1. Windows Driver Kit (WDK). Auf der Seite von Microsoft gibt es zwei Versionen, welche hier beide brauchbar sind. Setzen Sie das WDK auf, und achten Sie anschliessend darauf, dass die "DDK"-Umgebungsvariable auf den Installationspfad verweist. Bei mir ist das zum Beispiel "C:\WinDDK\6000\".
  2. Microsoft Visual Studio. Falls Sie Visual Studio Express nutzen wollen, müssen Sie "Tools → Options" öffnen, dort zu "Projects and Solutions → VC++ Directories" gehen:
    • den Pfad von Executable Files mit "$(DDK)\bin\x86"
    • den Pfad von Include Files mit "$(DDK)\inc\mfc42" ergänzen.
Falls Sie die volle Version von Visual Studio einsetzen, ist dies nicht nötig. Beachten Sie, dass das Visual Studio Express keinen 64 Bit Code erzeugen kann. Deshalb brauchen Sie für das Kompilieren einer 64 Bit Version die Vollversion von Visual Studio.
  1. Flat Assembler (FASM). Seine Installation ist trivial.
  2. Yasm Modular Assembler would need to be placed in any folder that is included in the %path% environment variable.

Fast AES Version für die x86 Plattform

Um die Geschwindigkeit der kryptografischen Funktionen zu beschleunigen verwendet DiskCryptor eine optimierte Assemblerversion des AES-Algorithmus. Der Code dieses Alogrithmuses wird dynamisch aus dem verwendeten Schlüssel erzeugt. Das erlaubt, die Anzahl Speicherzugriffe zu verkleinern, was den Durchsatz verbessert. Den verwendeten Assemblercode finden Sie unter "fast_aes\aes_x86.asm". Durch das Kompilieren dieses Assemblercodes mit Hilfe von FASM erhalten Sie die Datei aes_x86.exe. Durch Ausführen dieser Datei erhalten Sie aes_x86.txt, welche den binären Code enthält, mit Hilfe dessen die kryptografische Funktion erzeugt wird. Der erste Block des Codes stellt die Entschlüsselungsfunktion dar, der zweite Block die Verschlüsselungfunktion. Sie müssen diese Blöcke in die Felder decryptor und encryptorin der Datei "sys\aes_tab.h" einfügen. Sie müssen nichts befürchten, denn im Falle eines Fehler wird der Treiber einfach nicht starten, weil der Selbsttest fehlschlägt. Falls Sie aus irgend einem Grund die Assembler Variante des Kryptoalgorithmuses nicht erzeugen können, dann kommentiert die Zeile "#define ASM_CRYPTO" in der Datei "sys\defines.h" aus.

Kompilieren des Projektes

Öffnen Sie die Datei "boot\make_asm.bat" und setzen Sie den aktuellen Pfad zu FASM ein. Als Hilfe ist der Pfad "C:\fasm" angegeben, und falls FASM bei Ihnen wirklich dort ist, dann müssen Sie gar nichts ändern. Dann öffnen Sie das Projekt dcrypt.sln im Visual Studio, wählen Sie die Konfiguration (debug/release), geben Sie die Zielplattform (Win32/x64) an und führen Sie Build Solution aus. Beachten Sie, dass Sie das erste Mal das Projekt zweimal kompilieren müssen — zuerst wird der Treiber erstellt, dann das ganze Programm. Das Resultat des Kompilierens finden Sie im Ordner, entsprechend der gewählten Konfiguration und Plattform.

Zusammenstellen des BartPE plugins

  1. Führen Sie die Kompilation für die Konfiguration Release und die Plattform Win32 aus.
  2. Starten Sie make_bartpe.bat. Das Resultat der Kompilation befindet sich im Ordner bartpe.

Wie die Disk mit diesem Plugin erstellt wird lesen Sie auf der Seite Installation von DiskCryptor auf einer Windows LiveCD.

Language: English  • Deutsch • русский