Passwortverwaltung



  • Hallo,

    ich hätte da 'ne Frage, was die Passwortverwaltung anbetrifft...und zwar wie schütze ich meine Passwörter vor Dritten bzw. vor Datenklau am Besten...zur Zeit hab ich das so, dass ich meine Passwörter in einer txt-datei abgelegt habe und diese mit einer ID versehen sind, welche in anderen Dateien anstelle des Passwortes vorzufinden ist...mein programm nimmt sich dann die ID und schaut in meiner Passwort-Datei nach der passenden ID und holt sich das Passwort raus...ist aber so gut wie garnet sicher diese Variante...wie kann man denn sonst die Passwörter verwalten?

    Gruss,

    chullain



  • Ich würde folgende weit verbreitete Methode verwenden.
    Hashwert vom Passwort erzeugen und diesen Wert dann in die Datei schreiben. Bei jeder Passwortabfrage generierst du aus der Eingabe den Hashwert und vergleichst ihn mit dem jeweiligen Hashwert in deiner Textdatei. Natürlich sollte zu dem Hashwert noch eine ID bzw. eine Nutzerkennung in der Datei existieren.

    Gleicht also nahezu deiner Methode, mit Ausnahme des Hashs.



  • ...ok, das hört sich schon besser an, nur noch 'ne Frage, wie generiere ich so ein Hashwert unter c++ aus meinem passwort...falls Du c++-Kenntnisse hast, denn ich reihe mich noch in die Liga der Anfänger ein...

    ...danke, schon mal...

    Gruss,

    chullain



  • Es gibt nicht einfach einen Hashwert, sondern unterschiedliche Algorithmen um diese zu Erzeugen. Du musst dir ein Verfahren aussuchen und entweder selber implementieren oder eine externe Library nehmen.

    http://de.wikipedia.org/wiki/Hash-Funktion

    @Herrmann
    wobei man idr. noch einen Salt-Wert hinzufügt, um einfache Angriffe abzuwehren!



  • Hallo,

    ich habe z.B. jetzt diesen algorithmus, um ein Hashcode zu erzeugen...

    int h = 0;
    for (int ix = 0; ix < pWStruktur.pPassword.GetLength(); ix++) {
        h = 31*h + pWStruktur.pPassword.GetAt(ix);
    }
    

    gibt es die Möglichkeit jetzt aus dem Hashcode ein String wieder zu erzeugen? 😕
    ...oder eher nicht...kann irgendwie nicht vorstellen



  • so wie ich hashwerte verstanden habe, ist es genau sinn der sache, den alten string nicht mehr rauszukriegen. bei unix passwörtern ist es doch ähnlich: es sind one-way verschlüsselungen, die abgespeichert werden. du kannst dann einen "versuch" verschlüsseln, und schauen, ob der gleiche hash rauskommt. wenn ja: richtiges passwort. plaintext passwörter zu speichern halte ich eh für grob fahrlässig


Anmelden zum Antworten