// Diese Funktion zeigt wie man Crypt mit Dateien anwenden kann.
void demoFileFile()
{
// 2 Dateien öffnen
ifstream file("c:\\klartext.txt",ios::binary);
ofstream file2("c:\\verschluesselt.txt",ios::binary);
if(!file || !file2)
return;
// Organisiert einen Iterator um eine Datei
istreambuf_iterator<char> begin(file); // Iterator auf Anfang der Datei setzen
istreambuf_iterator<char> end; // der Iterator liefert 0x0 wenn man am Ende ist.
ostreambuf_iterator<char> out(file2); // Ausgabe-Iterator anlegen
// Crypt erzeugen das direkt mit Dateien arbeiten kann
Crypt<CryptXOr,istreambuf_iterator<char>,ostreambuf_iterator<char> > c;
// Klartext setzen
c.set_source(begin,end);
// Schlüssel setzen
std::string key("TESTtest"); // Schlüssel
c.set_key(key.begin(),key.end()); // Setzen
c.crypt(out); // Verschlüsseln und gleichzeitig wegschreiben
}
int main(int argc, char* argv[])
{
std::string target2;
std::string target;
demoFileFile();
demoStringCout();
demoStringString();
// Beweis das es geht: In target2 muß wieder Hallo Welt stehen
demoConstStringString("Hallo Welt","123",target);
demoConstStringString(target,"123",target2);
demoCharChar();
return 0;
}
|