Supportnet / Forum / Anwendungen(Java,C++...)
Authentifizierung an ein Programm mit C++
Frage
Hallo,
Ich möchte gern das sich verschiede User, bevor sie ein Programm benutzen mit einer Kennnummer und einem Passwort anmelden.
Dafür hatte ich vor, einen Array oder Container zu erstellen indem die User den Passwörtern zugeordnet werden, außerdem sollen die User auch ihr Kennwort ändern können.
Das Problem was ich natürlich hab,ist das ich nicht weis wie ich diesen anlegen soll bzw die Daten bei der Anmeldung später wieder auslesen kann.
Oder kann ich das auch anders lösen?
Kann mir da jemand weiterhelfen?
Antwort 1 von ThomasOOP
1. (Verschlüsselte) (Text)datei
2. (geschützte) Datenbank
3. Registry(mach es lieber nicht (-: )
4. Authentifizierung übers Internet(Dafür werden dich deine Kunden lieben hrhr )
2. (geschützte) Datenbank
3. Registry(mach es lieber nicht (-: )
4. Authentifizierung übers Internet(Dafür werden dich deine Kunden lieben hrhr )
Antwort 2 von mb0156ba
Zitat:
1. (Verschlüsselte) (Text)datei
2. (geschützte) Datenbank
3. Registry(mach es lieber nicht (-: )
4. Authentifizierung übers Internet(Dafür werden dich deine Kunden lieben hrhr)
1. (Verschlüsselte) (Text)datei
2. (geschützte) Datenbank
3. Registry(mach es lieber nicht (-: )
4. Authentifizierung übers Internet(Dafür werden dich deine Kunden lieben hrhr)
meiner meinung nach sind die ersten beiden
lösungen die sinnvollsten und sichersten...
gruß
mb
Antwort 3 von Gummikuh
Hallo,
unter Pascal hab ich sowas mal gemacht.
Einfach ein "Geheimes" Wort definieren. Beim schreiben der Passwortes dieses mit dem Geheimwort buchstabenweise XOR addieren.
Schon kannst Du das Passw. speichern, ohne das es (allzu-)einfach ausgelesen werden kann.
Beim Einlesen wieder buchstabenweise mit dem gleichen Geheimwort XOR verknüpfen, schon ist es wieder im klartext.
Das ganze in eine externe Datei, je datum ein Record (Username;Passwort).
Beim start des Prog. dann eine Abfrage: Get Username, get Passwort; Datei öffnen; Record mit Username suchen, einlesen und beide Passworte vergleichen. Durch das Einlesen ist das gespeicherte PW ja bereits wieder Klartext.
Weitere Abfrage: Prog. Starten oder PW ändern?
Diese Methode der verschlüsselung ist zwar nicht die sicherste, aber sehr einfach und schnell zu programmieren. Ggf kannst du noch ein zweites "Geheimwort" hinterlegen und das PW durch beide Stufen laufen lassen.
Gruss
Micha
unter Pascal hab ich sowas mal gemacht.
Einfach ein "Geheimes" Wort definieren. Beim schreiben der Passwortes dieses mit dem Geheimwort buchstabenweise XOR addieren.
Schon kannst Du das Passw. speichern, ohne das es (allzu-)einfach ausgelesen werden kann.
Beim Einlesen wieder buchstabenweise mit dem gleichen Geheimwort XOR verknüpfen, schon ist es wieder im klartext.
Das ganze in eine externe Datei, je datum ein Record (Username;Passwort).
Beim start des Prog. dann eine Abfrage: Get Username, get Passwort; Datei öffnen; Record mit Username suchen, einlesen und beide Passworte vergleichen. Durch das Einlesen ist das gespeicherte PW ja bereits wieder Klartext.
Weitere Abfrage: Prog. Starten oder PW ändern?
Diese Methode der verschlüsselung ist zwar nicht die sicherste, aber sehr einfach und schnell zu programmieren. Ggf kannst du noch ein zweites "Geheimwort" hinterlegen und das PW durch beide Stufen laufen lassen.
Gruss
Micha
Antwort 4 von Nicolas
speicher den Usernamen zusammen mit dem MD5 des Passwortes, beim Anmelden suchst du in der Datei/Datenbank nach den Usernamen und liest die MD5 Summe ein und vergleichst sie mit der MD5 Summe die du aus dem gerade eingegebenen pdw erstellt hast. Für MD5 findet man ziemlich schnell genug implementierungen für C++, wenn du Borland C++ Builder nutzt gibts sogar ein Icon in der Symbolleiste dafür (also einfach gehts dann fast nicht mehr)

