Vernam Verschlüsselung mittels XOR'en oder OTP(one time pad)
Verfasst: 14.02.2018 19:37
Moin,
ich suche eine schnelle Möglichkeit, um Dateien mit XOR zu verschlüsseln.
Unter C++ (mit MinGW) habe ich eine sehr schnelle Kommandozeilen-Lösung. Unter PB funktioniert meine Umsetzung leider noch nicht.
Zum Verständnis:
1) Die Dokumentendatei und der Schlüssel sind gleich lang.
2) Das Dokument soll mit der Schlüsseldatei xor'd werden.
Beispiel-Code...
Nun sollen beide Speicher xor'd ... und abgespeichert werden...
Kennt jemand eine schnelle Lese/Schreib Routine? Ich habe verschiedene Ansätze hier aus dem Forum ausprobiert, komme aber zu keinem brauchbaren Ergebnis.
Vielen Dank
Blitzer
ich suche eine schnelle Möglichkeit, um Dateien mit XOR zu verschlüsseln.
Unter C++ (mit MinGW) habe ich eine sehr schnelle Kommandozeilen-Lösung. Unter PB funktioniert meine Umsetzung leider noch nicht.
Zum Verständnis:
1) Die Dokumentendatei und der Schlüssel sind gleich lang.
2) Das Dokument soll mit der Schlüsseldatei xor'd werden.
Beispiel-Code...
Code: Alles auswählen
ReadFile(0,"Dokument):dokumentsize=Lof(0):CloseFile(0)
ReadFile(1,"schluessel"):keysize=Lof(1):CloseFile(1)
; Ab in den Speicher...
If ReadFile(1,"Dokument") ; Dokument-Datei öffnen
*dokument2=AllocateMemory(dokumentsize) ; Speicher reservieren (für Länge des Dokumentes)
ReadData(1,*dokument2,dokumentsize) ; Einlesen der Zeichen in den Speicher
CloseFile(1)
EndIf
If ReadFile(2,"schluessel") ; Keydatei öffnen
*schluessel2=AllocateMemory(dokumentsize) ; Speicher reservieren (für Länge der Datendatei)
ReadData(2,*schluessel2,dokumentsize) ; Einlesen der Zeichen in den Speicher
CloseFile(2)
EndIfNun sollen beide Speicher xor'd ... und abgespeichert werden...
Code: Alles auswählen
If CreateFile(3,"Datei-xor")
WriteData(3,*schluessel2,dokumentsize) ; Arbeitsspeicher in Datei speichern
CloseFile(3)
EndIf
Vielen Dank
Blitzer