ich bin gerade dabei einen Passwort-Generator zu entwickeln, doch ich habe ein Problem bei der Zusammensetzung des Passwortes. Ich habe einige Konstanten definiert, welche entsprechende Zeichenketten enthalten, welche für das Passwort verwendet werden können. Der Vorgang ist simpel: Der Nutzer wählt die Zeichen aus, welche für das Passwort verwendet werden sollen. Es entsteht ein Zeichenvorrat, aus dem via Zufall ein Zeichen ausgewählt und in ein seperaten String gespeichert wird. Hier ist das Problem: Oft enthält das Passwort nicht die Anzahl an Zeichen, welche durch den Nutzer festgelegt wurde.
Hier mal etwas Code:
Code: Alles auswählen
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Forms, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
const
Charset = '^°!"²§³$%&/{([)]=}?\`´*+~''#_-:,;µ@|<>1234567890qwertzuiopüäölkjhgfdsayxcvbnmQWERTZUIOPÜÄÖLKJHGFDSAYXCVBNM';
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
var
i: Byte;
begin
Edit1.Text := '';
for i := 1 to 20 do // Passwortlänge aus 20 Zeichen begrenzen
begin
Edit1.Text := Edit1.Text + Charset[Random(Length(Charset)) + 1] // zufälliges Zeichen aus Charset wählen
end;
end;
end.
MfG
-- Dee