Thema: Delphi Pw sicherheit anzeigen

Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#15

Re: Pw sicherheit anzeigen

  Alt 26. Jan 2006, 22:49
Verschlüsselt ist der falsche Begriff da er suggeriert das man es auch wieder "ent-schlüsseln" kann.

Um das reale Passwort, zb. "Test" zu schützen sollte man daraus quasi einen Sessionkey erzeugen. Dazu wird mit Hilfe einer Hash Funktion, einer "secure Oneway function", sichere Einweg-"verschlüsselung" aus dem "Test" ein binärer Wert erzeugt. Je nachdem welchen Algo man benutzt wird dieser binäre Wert dann immer 128 oder zb. 256 Bit groß sein. Man könnte das eher als "Prüfsumme" bezeichnen.

Wichtig an dieser Hash Funktion ist aber das man nur von A nach B rechnen kann und nicht mehr von B nach A, praktisch gesehen wohlgemerkt. Man kann also aus "Test" einen Hash erzeugen aber ausgehend von einem beliebigen Hash ist es fast unmöglich wieder "Test" zu berechnen.

Dies dient primär zum Schutz DEINES Passwortes. Denn ein Login zb. hier in der DP würde praktisch gesehen so aussehen:

Du erzeugst erstmal einen Zufallswert, sogenanter Salt. Dieser sollte ca. 128 Bit groß sein.
Du erzeugst aus dem Salt + Passwort mit einer Hashfunktion einen sogenannten Hash-Digest. Durch den Zufallssalt wird dieser Wert jedesmal anders aussehen.
Beides sendest du an den DP Server. Der DP-Server nimmt den Salt + das gespeicherte Passwort und erzeugt seinerseits diesen Hashdigest. Er vergleicht nun deinen errechneten Wert mit seinem. Wenn beide gleich sind dann ist sicher das Du das gleiche Passwort kennst wie das das auf dem DP Server gespeichert wurde.

Ein Angreifer der nun diesen Hash-Digest unterwegs abhört wird nun eben nicht dein Reales Passwort "Test" lesen können, da es quasi nur INDIREKT und sogar noch pseudozufällig in dem Hashdigest vorkommt. Mathematisch praktisch gesehen müsste dieser Angreifer den Salt abfangen und deinen Hashdigest. Dann fängt er an ALLE Kombinationen von Passwörtern durchzuprobieren solange bis er den gleichen Hashdigest erzeugt hat. Dies IST die EINZIGSTE Möglichkeit einen solchen Hashdigest zu knacken und nennt sich Brute Force Attacke, Durchprobieren! Aber jetzt kommt der klitzekleine und fiese Hacken den die Mathematiker eingebaut haben zum tragen. Denn dieser Hash-Digest ist 128 Bit groß und der Salt sollte ebenfalls 128 Bit groß sein. Damit haben die mathematiker die Kombinationsvielfalt so hoch gesetzt das es bis zur Implosion der Sonne dauern würde so einen Angriff praktisch durchzuführen.

Ergo: auf diesem Wege kann zb. ein Server überprüfen ob du ein Geheimnis kennst das er ebenfalls kennt und das ohne das man beim Lauschen an der Kommunikation irgendwelche brauchbaren Informationen kommt.
Es schützt also DICH und DEIN Passwort.

Hashfunktionen sind Algortihmen der Kryptographie, sehr richtig, sie sind aber eben keine "Ver-schlüsselungen" im wörtlichen Sinne, da sie eben Einweg sind.

Gruß Hagen
  Mit Zitat antworten Zitat