Hallo sv00010,
wir sind zwar hier "Off Topic" aber sei es drum.
Mein Programm ist in FORTRAN geschrieben.
Ich benutze Zufallszahlengeneratoren und "Verwürfelungsverfahren", die im Werk von Donald Knuth "The Art of Computer Programming", Band 2, Seiten 1 bis 177, beschrieben werden. Ich habe sie (sowohl in "Originalform" als auch in von mir modifizierten Formen) schon vor -zig Jahren im Rahmen meiner Promotion zu meiner vollsten Zufriedenheit sehr ausführlich getestet. Du findest den Text des gesamten Bands (704 Seiten) als PDF Datei hier:
https://new.vk.com/doc10903696_19427616 ... 8d089930e0
In meinem Verschlüsselngsverfahren wird keine Zuffallszahl abgespeichert. Sie wird generiert, benutzt und dann vergessen. Beim entschlüsseln wird sie wieder generiert und benutzt.
Jedes Byte des zu verschlüssenden Files wird mit einer neuen Zufallszahl verknüpft. Die Art der Verknüpfung kann von Byte zu Byte variieren.
Die ersten 8 Bytes des Files geben die Länge des Originalfiles an.
Am Ende werden auch einige (oder auch sehr viele) "dummy" Bytes mit verschiedenen, zufälligen Weren hinzugefügt.
Warum? Es gibt eine endliche Anzahl N! = 1x2x3x4....xN von Möglichkeiten ein File mit N Bytes zu verwürfeln. Indem ich viele "dummy" Bytes hinzunehme, erhöhe ich diese Anzahl gewaltig. Ein "brute force" Verfahren, das alle diese Möglichkeiten ausprobiert, würde daran scheitern!
ALLE diese Bytes werden verschlüsselt und verwürfelt. Die 8 Bytes mit der Länge des Files und die "dummy" Bytes sind jetzt irgendwo verstreut im verschlüsselten File.
Wenn das Ganze entschlüsselt und "entwürfelt" worden ist, weiß ich wie viele Bytes die Originalinformation enthält.
Bitte sei mir nicht böse, aber ich möchte den Quelltext eines Verfahrens, das nicht mal die NSA knacken könnte, nicht publik machen.
Ich kann Dir aber versichern, dass es Spaß macht ein solches Programm zu schreiben.
Viele Grüße
646377
P.S. Bei Verfahren der Art von "Caesar-Verschlüsselung"
https://de.wikipedia.org/wiki/Caesar-Ve ... %BCsselung
kann man beim verschlüsseln SOFORT jedes Originalbyte durch das verschlüsselte ersetzen. Man braucht nicht den "doppelten" Speicherplatz. Analoges gilt für das Entschlüsseln.
Bei diesem Verfahren wird zu jedem Byte eine KONSTANTE Zahl addiert, bzw. subtrahiert. Diese konstante Zahl (Byte) kann einen der Werte zwischen 0 und 255 annehmen. Zum Knacken braucht man nur alle 256 möglichen Zahlen ausprobieren, ein Klacks für Computer heute!