also da ist das
unit mit der verschlüsselung aber ich dänke ich lasse es so weil meine Anwendung keine super hohe sicherheit aufweisen muss.
oder hat vielleicht jemand eine einfache und schnelle Lösung?
Delphi-Quellcode:
procedure TPasswordDlg1.OKBtnClick(Sender: TObject);
var ini: TIniFile;
PB: string;
PA: string;
CryptStr: string;
begin
ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'test.ini');
PB:=ini.ReadString('Benutzer','Passwort',PB);
// Auslesen des Benutzer-Passwortes
PA:=ini.ReadString('Administrator','Passwort',PA);
// Auslesen des Administrator-Passwortes
PA:=Decrypt(DCP_rijndael1,PA,'DELPHI');
// Entschlüsselung des Administrator-Passwortes
PB:=Decrypt(DCP_rijndael1,PB,'DELPHI');
// Entschlüsselung des Benutzer-Passwortes
IF ((AltesPassword.Text = PB) OR (AltesPassword.Text = PA)) THEN BEGIN
// entweder das Benutzer-Passwort oder das Administratorpasswort stimmt
IF (NeuesPassword.Text = NeuesPassword1.Text) THEN BEGIN
// stimmen Passwort und Sicherheitseingabe
CryptStr:=Encrypt(DCP_rijndael1,NeuesPassword.Text,PA);
// Verschlüsselung der Mitliedernummer
ini.WriteString('Benutzer','Passwort',CryptStr);
// Schreibt das Neue Passwort ins ini-File
AltesPassword.Text:='';
NeuesPassword.Text:='';
NeuesPassword1.Text:='';
END ELSE
ShowMessage('Sie haben das neue Passwort falsch eingegeben');
AltesPassword.Text:='';
NeuesPassword.Text:='';
NeuesPassword1.Text:='';
END ELSE
ShowMessage('Sie haben das alte Passwort falsch eingegeben');
AltesPassword.Text:='';
NeuesPassword.Text:='';
NeuesPassword1.Text:='';
ini.free;
end;
mfg