Easy Crypted File ist ein kleine Include von mir um einfach verschlüsselte Dateien zu erstellen.
Die Dateien werden Blockweise verschlüsselt um bei einem Zugriff nicht immer das ganze File entschlüsseln zu müssen sondern nur die Blöcke in denen der Bereich liegt. Die Blockgröße ist frei definierbar. Des weiteren kann man an eine beliebig Stelle des Files springen und dort Daten abspeichern, ist die Datei nicht groß genug wird sie erst vergrößert und unbenötigter Platz mit Zufallswerten gefüllt, die neuen CryptRandom - Befehle werden unterstützt.
Des weiteren verfügt das System über einen intelligenten Cache der häufig verwendete Blöcke im Speicher hält, gemessen an der Zahl der Zugriffe, letztem Zugriff und Alter der Cache Einträge, das sollte zusätzliche Performace bei Lese - Operationen bieten. Die Maximale Cachegröße ist frei definierbar.
Der eingesetzte Verschlüsselungsalgorithmus ist RC4, aus Performance-gründen habe ich bewusst auf AES verzichtet, kann aber problemlos eingebaut werden.
ECF Bietet derzeit folgende Befehle:
Die Befehle verhalten sich exakt wie ihre PB - Pendanten, trotzdem sind sie nochmal ausführlich im Source kommentiert.ECF_OpenFile()
ECF_CloseFile()
ECF_FileSeek()
ECF_FileSize()
ECF_Truncate()
ECF_WriteData()
ECF_ReadData()
Geplant sind derzeit noch Routinen um die Datei neu zu Blocken, also die Blockgröße zu ändern und ich werde mich noch ein bisschen um die Cache Verwaltung kümmern, in bestimmten Situationen (schlecht gewählte Blockgröße/Cachegröße) kann es hier leider zu Performance - Einbusen kommen
Kritik, Bugs oder Feature Requests bitte einfach hier posten

Download:
http://paladiumproject.q-soft.ch/public ... d_File.zip
Gruß, Alex