Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   eine passwort abfrage vor dem prog start (https://www.delphipraxis.net/51586-eine-passwort-abfrage-vor-dem-prog-start.html)

Zacherl 15. Aug 2005 18:44

Re: eine passwort abfrage vor dem prog start
 
Das Kennwort evtl. noch so in etwa festlegen:

Delphi-Quellcode:
var pw1, pw2, pw3, pw4: string;
.
.
.
pw1 := 's';
pw2 := 'e';
pw3 := 'c';
pw4 := 'u';
kennwort := pw1+pw2+pw3+'re';
Dann ist die Chance, dass jemand das Kennwort im Kompilat erkennen kann niedriger.

Florian

SubData 15. Aug 2005 18:57

Re: eine passwort abfrage vor dem prog start
 
Zitat:

Zitat von Florian Bernd
Delphi-Quellcode:
var pw1, pw2, pw3, pw4: string;
pw1 := 's';
pw2 := 'e';
pw3 := 'c';
pw4 := 'u';
kennwort := pw1+pw2+pw3+'re';

Dürfte in dem Beispiel der Compiler nicht die Variablen rausoptimieren und ne Konstante draus machen?

Edit: Beitrag ein wenig verkleinert...

ichbins 15. Aug 2005 19:09

Re: eine passwort abfrage vor dem prog start
 
Ich habe gerade einen kleinen Algorithmus zur Passwortverschlüsselung geschrieben. Er verschlüsselt das Passwort mit sich selbst in einem XOR-Verfahren:

Delphi-Quellcode:
function encodepassword(password:string):string;
var
  i:integer;
begin
  result:='';
  for i:=1 to length(password) do
    result:=result+char(byte(password[i]) xor byte(password[length(password)+1-i]));
end;

function passwordisok(password,encodedpassword:string):boolean;
var
  i:integer;
begin
  result:=true;
  for i:=1 to length(password) do
    result:=result and (encodedpassword[i]=char(byte(password[i]) xor byte(password[length(password)+1-i])));
end;
In einem anderen selbstgeschriebenen Programm muss das Passwort mit ENCODEPASSWORD verschlüsselt werden. Das was rauskommt dann im Programm als Konstante speichern:
Delphi-Quellcode:
password='encodepassword('abc')'
Dann im Programm folgend verwenden:

Delphi-Quellcode:
if passwordisok(edit1.text,password) then
  passwortok
else
  passwortfalsch;

Pr0g 15. Aug 2005 21:26

Re: eine passwort abfrage vor dem prog start
 
Speichere doch einfach einen Hash des Passworts in das Programm, dann wird eh niemand an das Passwort kommen und geht wohl mit am schnellsten.

misterx 16. Aug 2005 15:08

Re: eine passwort abfrage vor dem prog start
 
Zitat:

Zitat von Pr0g
Hier nen (sehr) simples Beispiel:
Delphi-Quellcode:
program Project1;

uses
  Forms,
  Dialogs, // Fuer die InputBox
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  // Passwortabfrage
  if InputBox('Passwortabfrage', 'Bitte Passwort angeben', '') <> 'geheim' then
    halt;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Edit: Mit einer einfachen Schleife kommst du auch auf drei Versuche:
Delphi-Quellcode:
program Project1;

uses
  Forms,
  Dialogs, // Fuer die InputBox
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

var
  i: Integer; // Fuer die Schleife

begin
  Application.Initialize;
  // Passwortabfrage
  for i := 0 to 2 do
  begin
    if InputBox('Passwortabfrage', 'Bitte Passwort angeben', '') = 'geheim' then
      break;
    if i = 2 then
      halt;
  end;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Anstelle der InputBox bietet sich natürlich ein eigener Dialog an, welcher über den ShowModal aufruf die Eingabe zurückgibt.



wen ich das mache dan geht das prog nicht an ich gebe das richtige pass ein es tauch immer wieder auf :?: :?:

Die Muhkuh 16. Aug 2005 15:12

Re: eine passwort abfrage vor dem prog start
 
Fukntioneirt dch gebe ich driemal dsa falsche pass ien dan beendet sihc dsa program wider gebe ich das richtige pass ein dan funktioneirt allse. :roll:

Nochmal auf deutsch:

Funktioniert doch, gebe ich dreimal das falsche Passwort ein, dann beendet sich das Programm. Gebe ich das richtige Passwort ein, dann funktioniert alles.

misterx 16. Aug 2005 15:49

Re: eine passwort abfrage vor dem prog start
 
ja das mit beenden geht ja aber wen ich das richtige pass eingebe startet er das haupt prog nicht

brechi 16. Aug 2005 16:00

Re: eine passwort abfrage vor dem prog start
 
misterrx würt mic h jezt mal interesiernen wleches pwasswortg du iengisbt

TeronG 16. Aug 2005 16:07

Re: eine passwort abfrage vor dem prog start
 
Zitat:

Fukntioneirt dch gebe ich driemal dsa falsche pass ien dan beendet sihc dsa program wider gebe ich das richtige pass ein dan funktioneirt allse.
Zitat:

misterrx würt mic h jezt mal interesiernen wleches pwasswortg du iengisbt
*kopfschüttelnd* sowas hätt ich in der DP nun wirklich nicht erwartet ... tztztz

EDIT: sorry :oops: war voll OT

RavenIV 5. Sep 2005 13:26

Re: eine passwort abfrage vor dem prog start
 
Zitat:

Zitat von ichbins
Ich habe gerade einen kleinen Algorithmus zur Passwortverschlüsselung geschrieben. Er verschlüsselt das Passwort mit sich selbst in einem XOR-Verfahren:

deine funktion passwordisok(...) hat einen fehler:
wenn das zu prüfende Passwort (password) leer ist, gibt die Funktion TRUE zurück.
Das ist eine Sicherheitsleck, falls leere Passwörter unerwünscht sind.

gruessle


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:06 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz