wie erzeuge ich dann unterschiedliche Resultate bei der Stringverschlüsselung, wenn gleicher Text und gleiches Passwort verwendet wird (analog zu Lockbox)?
Die Speichern das Salz mit im Ergebnis-Stream, am Anfang, vor den eigentlichen verschlüsselten Daten.
Man kann es einzeln speichern, oder eben mit einfügen (was man hier auch machen könnte).
In einem Datenbank-Feld (VARCHAR) hatte ich es so gelöst.
z.B. "algo:salt:data......" oder "salt:data......" als Base64 oder Hex.
Inklusive "Algorithmus/Modus", damit man neue Daten in einem "neueren/besseren" Modus speichern kann, ohne die alten Daten ändern zu müssen.
(bei Verschlüsselung kann man es entschlüsseln und neu verschlüsseln, aber bei einem HASH kann man die alten Daten ja nicht automatisch ändern und muß dann wissen was was ist)