Login Interface

  • WPF
  • .NET (FX) 4.0

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Login Interface

    Meun Leute , da ich mir ja das Programmieren selber bei bringe hab ich mir ein Programm geschrieben wo sich leute regestrieren können und dann anmelden können und wenn man sich angemeldet hat können sie ihre Daten sehen.

    Das Programm funktioniert auch aber jetzt kommt meine bitte was kann ich alles besser machen von der Programm struktur oder von der Programmierung her, also ich meine jetzt nicht in Xaml für das Desgin meine nur das Programm.
    Wie gesagt bin anfänger und bin für alle Tipps sehr dankbar.
    Ich denke man kann dort auch viel verbessern... bitte regt aber euch nicht sehr auf wenn ich anscheinden sehr viel falsch gemacht hab, bin halt anfänger :D

    Ich würde mich halt gerne über ein Feedback freuen ! :)

    In's WPF-Unterforum verschoben. Künftig bitte beachten. ~fufu

    EXE-Anhang entfernt (Admin)

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Das Loginsystem ist unsicher. Ich kann ja die Passwörter der anderen sehen in der Datei. Das sollte verschlüsselt werden. Dann hat man aber das altbekannte Problem mit dem Passwort, sowas sollte man nie einkompilieren, das kann jeder mit IlSpy finden. Lege einfach für jeden Nutzer eine Datei an, da Nutzer ein Passwort eingeben müssen kannst du das zum verschlüsseln nehmen, oder einfach nur den Hash der Passwörter speichern, ich bin für Hash+Verschlüsselte Datei, denn von einem Hash könnte man an den ursprünglichen Text mit RainbowTables kommen. Wenn du auch ein Salt verwendest noch besser, Passwort ohne Salt als Hash speichern, die Datei aber mit Passwort und Salt verschlüsseln.

    PS.
    Für den Dateinamen, könnte man den Hash der Nutzernamen nehmen, damit das nicht auf Anhieb zu erkennen ist.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „BitBrösel“ ()

    MrLaTuNiX schrieb:

    und absolut keine ahnung hab wie man das macht
    Wie kommst Du dann zu solch einem Programmier-Problem?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @MrLaTuNiX Du hast keine Ahnung, behängst Dich aber mit diffizilen Problemen, die Du, wenn überhaupt, nur mit massiver Hilfe von außen (z.B. unserem Forum) lösen kannst.
    Warum fängst Du nicht an mit einfacheren Problemen, um zunächst ein Gefühl für .NET zu bekommen?
    [Sammelthread] Programmieren, aber was? (Programmideen)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hi.

    Nun ist die Problemstellung ja definiert.

    Erstmal zu meiner Intuition,
    ich will das auch können mit den Logins und LDAP und Weltherrschaft und so...
    Auch grobe Definitionen sind erlaubt. Denke ich...

    Ich teile das Problem in mehrere Schichten auf.

    1. Was ich auf dem Bildschirm sehe, also UI und XAML.

    2. Eingabeverarbeitung. Prüfung ob Passwort und überhaupt und so...

    3. Anlegen und Persistenz von Passwortdaten.

    4. Weiter zum erlaubtem Teil des Programms, bei 1000 Promille korrekter Benutzer/Passwort Kombination.

    Wobei 2. und 3. eher 3. und 2. sind, also zusammen 5tes. :)

    Die Reihenfolge ist eher anlegen und sichern und dann bei Login einlesen und vergleichen und dann 4.

    Bei der UI kann ich dir empfehlen auf lange Sicht, mit IDataErrorInfo im Quell-Code zu hantieren.

    Das ist das Ziel in XAML und WPF, und auf dem Weg sind das 'ne Menge Sachen, die erlernt werden können/sollten.

    Zudem sollten das hantieren mit Eigenschaften/Properties und INotifyPropertyChanged sitzen.

    Das DataBinding in XAML zu den Eigenschaften und das Aktualisierungskonzept in XAML/WPF sollte dann schon in Fleisch und Veganen-Fleischersatz übergegangen sein.

    Und von der mir verhassten Objektorientierung ganz zu schweigen... :(


    So das zum Thema Salz in die Suppe oder Wunde, je nach Tagesform... ;)

    Ich kann dir sagen, dass das Salt bei der Verschlüsselung voll wichtig ist.

    Das Konzept der Mengenlehre und der Primzahlen sind die Eckpfeiler der Verschlüsselung/Kryptografie.

    Die Mengen der Versuche einen Schlüssel zu knacken (Versucheanzahl) wird dem Schwierigkeitsgrad gegenüber gestellt.

    Es ist möglich, dass beim ersten Versuch ein Passwort erraten wird.
    Es ist wahrscheinlich, dass es nie erraten wird. (Das Ende des Universums tritt vor dem nächsten Versuch ein. :) )

    Und das Salt macht es noch unwahrscheinlicher, ein Passwort zu erraten. Es ist eine Zutat, die dem Passwort-Hacker nicht bekannt ist, und wenn doch, macht das nichts aus, ist ja nur eine Zutat und nicht das Passwort.

    Hash-Werte: Ein Hash ist eine Zahl, die aus den Werten und einer Rechenregel (Hash-Algorithmus) gebildet wird, um eine Eindeutigkeit herzustellen.

    Und die Passwörter werden dann mit dem Algorithmus zu Hashwerten, und diese werden dann verglichen mit der Eingabe des Passwortes in der UI.
    Also sollten beim Speichern nur die Hashwerte auf die Festplatte und nicht das Passwort.

    Ein bitte meinerseits, wenn du das erfolgreich Umgesetzt hast, kann ich das bitte haben?
    Bekommst von mir auch einen, nein, zwei Blöcke Bedrock aus Minceraft.

    Für eine vollständige Beschreibung des Problems sind viel Abhandlungen geschrieben worden... Halt ein Studienfach.

    Apropos, ich bin Autodidakt in Sachen VB, geht auch. Und lass dich nicht entmutigen, es werden aber harte Nüsse und Brocken und Monumente vor einem stehen, die scheinbar im Wege stehen.
    Also einfach weiter Programmieren...

    Viel Erfolg und happy Coding. :)

    c.u. Joshi