Zugangsdaten zu einer App sicher speichern

P

pjanfred

Neues Mitglied
0
Hallo alle zusammen,

ich entwickle grade eine App die von der internen Sicherheit einer Onlinebanking App gleichkommen muss.

Um dem Benutzer das einloggen zu erleichtern, kann sich dieser durch das setzen entsprechender Haken dazwischen entscheiden entweder nur den Benutzername oder den Benutzername und das Passwort zu speichern.

Genau hier liegt auch das Problem. Das Speichern des Benutzernamen lässt sich ja noch mit relativ gutem Gewissen in einer Datei erledigen.

Wie sieht es aber mit dem Speichern von Benutzername und Passwort aus? Wie speicher ich das Passwort so das kein eventuell Angreifer es auslesen kann, ich es aber beim Start der App zum Server übermitteln kann?

Da auch die Serverseitige API meiner Entwicklung opliegt würde selbstverständlich auch die Möglichkeit bestehen hier entsprechende Anpassungen vorzunehmen, so das das speichern des Passworts garnicht nötig ist.

An diese stelle fehlt mir jedoch schlicht und einfach die Erfahrung in der App Entwicklung bzw. die Idee zur Realisierung.

Ich würde mich über Anregungen etc. sehr freuen.

Gruß
Jan
 
Such mal nach MD5 Hash, das wird dir sicher helfen. Passwörter speichert man nicht im Klartext, sondern benutzt einen Hash. Datenbanken machen das in der Regel auch so.

Beim Passwort-Check werden dann die Hashes miteinander verglichen und nicht die Passwörter im Klartext.

An deinen Server würde ich dann auch den Hash übertragen.
 
Hi Tom299,

das ist mir schon bewusst gewesen, Datenbankseitig wird auch auf unserem Server ein Passwort Hash gespeichert.

Wenn ich jedoch in der App den Hash des Passwords speichere und immer den Hash zum Server übertrage bringt mir das ja dann genauso wenig wie als wenn ich das Password im Klartext speichere und dann zum Server übermitteln würde.

Denn sollte ein eventueller Angreifer unsere Password Hashes entwenden, so braucht er sich noch nicht einmal die Mühe machen und die Passwörter zu Entschlüssen (z.B. über Rainbow Tables), denn er kann ja den Hash einfach direkt zu unserem Server schicken und da dieser ja dann gleich dem ist welcher in der Datenbank gespeichert ist, ist Ihm der Login Vorgang geglückt.

Der von dir vorgeschlagene Weg das Passwort nicht verschlüsselt zu speichern ist daher bis jetzt leider nur ein guter Ansatz mehr jedoch noch nicht.

Gruß
pjanfred

PS: Dennoch vielen Dank für deine Antwort :smile:
 
Du kannst den PW-Hash ja durch weitere Hash-Combos schützen.
Was weiß ich, z.B.: PW-Hash + "4711" + "#!$0815!#&" + clientTimeStamp

Aus dem ganzen machste 1 Hash und fügst z.B. den clientTimeStamp im Klartext dazu (vielleicht auch noch Dummies die nicht benutzt werden).

Der Server liest dann den TimeStamp, das 4711 und den anderen String kennt der Server auch und kann damit den Hash entschlüsseln und den PW-Hash rausnehmen.

Gibt aber sicher noch andere / bessere Möglichkeiten (IP und MAC könntest du z.B. auch noch reinbringen oder Seriennummer vom Handy).
 
  • Danke
Reaktionen: pjanfred
Hi Tom299,

die Anregungen sind perfekt, vielen Dank!

Gruß
pjanfred
 

Ähnliche Themen

M
Antworten
3
Aufrufe
166
moin
M
Manny87
  • Manny87
Antworten
11
Aufrufe
166
swa00
swa00
B
Antworten
6
Aufrufe
1.051
jogimuc
J
Zurück
Oben Unten