Steht doch im Code...
Wenn bei der Verschlüsselung aus "einfachen" Zeichen "Steuerzeichen" entstehen, dann handelt es sich quasi um "binäre" Daten und diese darfst du nicht in Komponenten laden, welche auf entsprechende Steuerzeichen reagieren.
Bei der TStringList sind das vorallem #0, #10 und #13.
- alles nach einer #0 wird ignoriert
- und Zeichen #10 und #13 werden eventuell umgewandelt, bzw. die TStringList paßt Zeilenumbrüche an den des Systems an
Das ist genau das worauf ich hinaus wollte. Wenn du nicht sicherstellen kannst, daß keine Steuerzeichen innerhalb des Strings auftauchen, kannst du keine StringList (zumindest nicht zum Schreiben in und Lesen aus einer Datei) benutzen.