Paßwort in Tabelle verschlüsseln

31. August 2006 10:11

Hallo,

ich habe auf der Debitorenkarte Textboxen mit den Angaben für einen kundenspezifischen FTP-Zugang hinterlegt. Darunter ist auch ein Textfeld für das FTP-Passwort. Auf der Debitorenkarte kann ich es über die Properties des Textfeldes verschlüsseln. In der Tabelle 18 (Customer) steht es dann allerdings immer noch unverschlüsselt. Ist es möglich das Passwort auch in der Tabelle zu verschlüsseln?

Vielen Dank für eure Hilfe im voraus.

31. August 2006 12:29

Bei der Verschlüsselung stellt sich mir immer zuerst die Frage, ob der Wert wieder entschlüsselt werden muss.

Z. B. ist das Passwort in diesem Forum mit einer Einwegverschlüsselung in der Datenbank gespeichert, so dass sich das tatsächliche Passwort nicht wieder daraus ermitteln lässt.
Loggt sich der Benutzer nun mit seinem Passwort ein, wird das eingegebene Passwort wieder verschlüsselt und das Ergebnis wird mit dem gespeicherten Wert verglichen. Ist es identisch, so hat er mit Sicherheit das korrekte Passwort eingegeben.

In deinem Fall muss wahrscheinlich das FTP-Passwort wieder entschlüsselt werden können, damit sich eine Schnittstelle an dessen Servern anmelden kann, somit fällt oben genannte Möglichkeit aus.
Hier könntest du dir eine einfache Verschlüsselungsmethode ausdenken z. B. die sogenannte "FF-Maske", wo die Zeichentabelle invertiert wird:
Code:
FF-Encryption(Text : Text[1024]) : Text[1024]
FOR I := 1 TO STRLEN(Text) DO
  NewText[I] := 256 - Text[I];
EXIT(NewText);

Diese Methode macht den Text für den Anwender unleserlich, kann jedoch mit derselben Funktion in den Originaltext entschlüsselt werden.

Eine andere Möglichkeit wäre, den Text per BASE64 zu verschlüsseln.
Die Funktionen für die Ver- und Entschlüsselung von BASE64 findest du hier:
Encoding: http://www.mibuso.com/forum/viewtopic.php?p=20166#20166
Decoding: http://www.mibuso.com/forum/viewtopic.php?p=20256#20256

Paßwort in Tabelle verschlüsseln

5. September 2006 10:47

Hallo Timo,

danke für die Antwort. Ich werde es mal ausprobieren.