passwortabfrage und Passwort ändern

  • Hi Leutz!

    Folgende Situation:

    Ich bin dabei eine Tagebuchsoftware zu schreiben.
    Da braucht man natürlich auch ein Passwort. wenn ich das aber mit

    if $passw = "asdf"

    mache dann ist das ja 1. nicht wirklich sicher und 2. kann man das Passwort dann nicht mehr ändern. also hab ich mir gedacht das ich das PW in eine Externe Datei schreibe (z.B. mal ne .TXT)
    Wenn ich dann in dem GUI Fenster "Passwort ändern" kommt ne GUI mit 3 eingabe feldern:
    1. Altes Passwort
    2. Neues Passwort
    3. Neues Passwort wiederholen

    zuerst soll es also das alte PW überprüfen
    und dann das Neue PW reinschreiben

    soweit so gut: es scheitert aber bereits daran das ich nicht weiß wie ich zb das Passwort in ne TXT oder so schreiben ohne das die txt geöffnet werden muss (ich nehm TXT nur als Beispiel, wenns ne bessere möglichkeit giebt bitte sagen)
    Und dann soll es bei der abfrage das eingegebene Passwort mit dem Passwort in der TXT vergleichen.
    Kann mir da wer helfen?

  • Hi

    Dateien kann man mit FileReadLine auslesen. Ich würde es aber verschlüsseln bzw gleich mit SQLite arbeiten

  • OK, danke!
    und schreiben?

    mit FileReadLine muss die txt doch auserdem geöffnet sein oder?

    Einmal editiert, zuletzt von Hollywood (12. April 2007 um 08:47)

    • Offizieller Beitrag

    Hallo!

    Das Beispiel in der Hilfe zu FileReadLine zeigt ein vollständiges Beispiel, wie man etwas aus einer Datei ausliest. Das geschieht komplett unsichtbar im Hintergrund.
    Etwas leichter geht es vermutlich mit Ini-Dateien (siehe Befehle IniRead und IniWrite).
    Recht hohe Sicherheit erreichst du, wenn du das Passwort hashst, am besten mit SHA-1, aber dazu später mehr.

    peethebee

  • Passwort soll mit sich selbst verschlüsselt sein

    [autoit]

    #include<string.au3>
    $pass1="FCB889432137F5CAFDB2"
    $pass2=InputBox("","Passwort?")
    $pass3=_StringEncrypt(0,$pass1,$pass2)
    If $pass2=$pass3 Then
    MsgBox(0,"","OK")
    Else
    MsgBox(0,"","Falsch")
    EndIf

    [/autoit]

    $pass1=Passwort verschlüsselt
    $pass2=Passworteingabe
    $pass3=Es wird versucht $pass1 mit $pass2 zu entschlüsseln
    Wenn der entschlüsselte Password mit eingegebenem gleich sind, dann stimmt alles

    PS
    Der Passwort zu dem Script lautet Filin

    4 Mal editiert, zuletzt von Filin (12. April 2007 um 12:17)

  • HI @all!
    :hm:Habe nochn kleinen Verbesserungvorschlag:

    anstatt:

    [autoit]

    If $pass2=$pass3 Then

    [/autoit]

    das hier

    [autoit]

    If $pass2==$pass3 Then

    [/autoit]

    So wird auch die Groß- und Kleinschreibung verglichen! Und das ganze wird bisl sicherer! ;)

    Schönen Tag auch!

  • :hm:
    Bei mir wurde die Groß- und Kleinschreibung auch so verglichen

    [autoit]

    If $pass2=$pass3 Then

    [/autoit]
  • =:
    Testet, ob zwei Werte gleich sind (Groß-/Kleinschreibung egal, wenn Strings verwendet werden)

    == :
    Testet, ob zwei Werte gleich sind (Groß-/Kleinschreibung beachtet, wenn Strings verwendet werden)