1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Sa: 17 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Entwicklung & Scripting
    4. Programmiersprachen
    5. C/C++

    [Tutorial] (C++) Einfache Login-Console by ChickenWeed

    • ChickenWeed
    • 3. März 2017 um 01:10
    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 01:10
      • #1

      Habe hier noch nie was mit C++ gesehen deswegen hier mal ein kleines Tutorial für einsteiger. ^^

      Zuerst erstellen wir eine Header file mit dem Namen "Informationen" und fügen folgenden Inhalt ein, auf den werden wir später zugreifen!

      C
      #include <string> //Brauchen wir um Strings zu nutzten! ^^
      
      using namespace std; //Damit wir nicht immer std:: schreiben müssen! (Nicht empfohlen bei großen codes)
      
      struct LoginLoader //Hier Speichern wir unsere Strings und bools
      {
          string Benutzername = "ChickenWeed"; //Euer Benutzername der später abgefragt werden soll
          string BenutzernameInput; //Hier Speichern wir unseren Benutzernamen Input!   PS: Denkt dran das C++ auf Groß- und Kleinschreibung achtet.
          string Passwort = "Test123"; //Unser Passwort, das später abgefragt werden soll
          string PasswortInput; //Hier Speichern wir unseren Passwort Input!
          bool Login = false; //Ein einfacher bool halt
      
      }Login; //Unser Name um struct zu callen
      Alles anzeigen

      So nun geht weiter mit der main.cpp

      C
      #include <iostream> //Um cout und cin zu benutzten
      #include <windows.h> //Um Sleep befehle zu benutzten
      #include <string> //Um Strings zu benutzten
      #include "Information.h" //Hier includen wir die Header file
      
      using namespace std;
      
      int main()
      {
          while (Login.Login == false) //Solange der Bool Login auf false ist wird diese Schleife ausgeführt
          {
                  cout << "Drück [ENTER] um deine Informationen einzugeben" << endl; //Brauch man nicht kann man aber haben
                  system("pause>nul"); //Damit du nicht danach ENTER ausführst sondern nur einmal!
                  if(GetAsyncKeyState(VK_RETURN)) //Hier wird ENTER abgefragt
                  {
                  Sleep(100); //Damit nicht instant der Input lädt
                  system("CLS"); //Um die Console zu clearen
                  cout << "ChickenWeeds Login Console" << endl << endl;
                  cout << "Benutzername: ";
                  cin >> Login.BenutzernameInput;
                  cout << "Passwort: ";
                  cin >> Login.PasswortInput;
      
                  if (Login.BenutzernameInput == Login.Benutzername && Login.PasswortInput == Login.Passwort)
                  {
                      Login.Login = true; //Stoppt die Schleife
                      //Hier wird dann euer Code ausgeführt z.B ESP hack? xD
                  }
                  else
                  {
                          cout << "\nFalscher Benutzername oder Passwort bitte in 3 Sekunden erneut versuchen!";
                          Sleep(3000);
                          system("CLS");
                  }
                  }
              system("PAUSE");
          }
      Alles anzeigen

      Und somit habt Ihr eine einfache Login-Console. Man kann es noch anders machen aber wollte auch mal die Header files und structs aufrufen lassen! ;)

      Falls Ihr noch irgendwelche Fragen habt oder euch noch was interessiert wozu ich ein Tutorial machen könnte, dann ab damit in die Kommentare! Nur die coolen kommentieren. <3

      Mfg Pius von GermanRPG oder auch bekannt als ChickenWeed :)

    • The C Stands for Cheese
      Gast
      • 3. März 2017 um 01:32
      • #2

      Habe zwar mit C++ nicht wirklich viel gearbeitet aber! Wenn ich solchen "Code" in einer Anwendung sehe geht mir einer ab! Damit Provoziert man doch nur das Böse! (?)

      Ist es möglich via Memory, Decompilen etc. an das Passwort und den Benutzernamen ran zu kommen? Sicherlich, oder?


      KRAKATOA!

      Gruß vom Pac!

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 01:43
      • #3

      Ja es ist nicht sicher aber durch die struct Einbindung etwas schwieriger! ^^ Wenn man es sicher haben will am besten die Datenbank callen die eine verschlüsselte Datei heimlich auf irgendeinen Random Ort auf deinen PC lädt, diese dann auslesen lässt und dann wieder löscht. Das wäre am aller sichersten, ist aber auch bisschen arbeit. Habe es aber so geschafft! :D

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 01:45
      • #4

      Man kann aber auch die Strings mit einem Code verschlüsseln und intern verschlüsseln.

    • Noelbank
      Anfänger
      Reaktionen
      10
      Trophäen
      9
      Beiträge
      75
      • 3. März 2017 um 13:45
      • #5

      Okay ich bin ein riesiger Anfänger wie mach ich das mit den Programmen?

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 13:47
      • #6

      Am besten Visual Studio 2015

    • Noelbank
      Anfänger
      Reaktionen
      10
      Trophäen
      9
      Beiträge
      75
      • 3. März 2017 um 14:01
      • #7

      Habe jetzt alles drin wie wird das zur Exe :D

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 19:30
      • #8

      Google :) Da steht instant alles

    • Finch
      Amateur
      Reaktionen
      177
      Trophäen
      11
      Beiträge
      160
      • 3. März 2017 um 20:24
      • #9

      Also alleine ein Hash über das Passwort würde schon helfen. Klar das gesamt Konstrukt ist unsicher und dein "sicherer" Weg von wegen DB Call und iwo lagern ist auch nicht überzeugend, aber das PW zu hashen und nur den Hash zu prüfen hilft bei einem sicheren Algorithmus (nicht Sha1/Md5) schon mal weiter.

      Evtl. wäre es besser gewesen ein anderes Thema für ein Einsteiger Tutorial zu wählen, da etwas wie Logins, Passwörter etc. nicht wirklich dafür geeignet ist und Anfänger auf die falsche Fährte leitet was Sicherheit angeht.

      Grundlegend gilt, keine statischen Werte mit Relevanz für die Sicherheit im SourceCode. Ein guter Tipp den ich immer wieder gebe, ist so zu entwickeln als wäre jede Zeile Code die ihr schreibt OpenSource und auf Github/Bitbucket. Das fördert zum einen das Bewusstsein für Sicherheit, ermöglicht aber auch den Code zukunftssicher und flexibel zu halten.

      Und für diesen Fall würde das bedeuten, Username und Passwort beim ersten starten zu generieren und sicher verschlüsselt abzulegen.

      Dann kann beim Start das eingegeben Passwort immer mit dem gespeicherten Hash verglichen werden und somit ist der Login gesichert.

      Soll die Anwendung mit kritischen Daten Arbeiten und diese Schützen, können diese dann mittels der Login Daten verschlüsselt gespeichert werden, so ist auch im Falle des Löschens der gesicherten Hashes noch alles sicher.

      Empfehlenswert beim Umgang mit Logins etc. ist eine sichere Crypto Bibliothek wie z.b. Crypto++ die für euch die Grundlagen im Hintergrund macht. Damit seid ihr schon auf dem richtigen Weg.

      Und an den Autor nochmal, Einsteiger Tutorials zeichnen sich dadurch aus einfach zu sein. Jedoch müssen sie auch Grundlagen bieten die einem zukünftigen Arbeiten nicht schaden. Ich finde es großartig, dass endlich wieder jemand C++ an den Mann bringen möchte, aber dann wäre es eher sinnvoll Grundlagen zu vermitteln. Hier sehen wir kein Tutorial, sondern ein Beispiel das zum kopieren einer unsicheren CodeBase verleitet. Wenn du wirklich ein C++ Tutorial bieten möchtest, dann wäre es klüger bei den wichtigen Dingen zu beginnen.

      Was viele nicht verstehen sind zum Beispiel Pointer. Solltest du weiterhin Lust haben diese großartige Sprache hier vorwärts zu bringen, helfe ich auch gerne beim erstellen von weiteren Tutorials.

      Und sorry, wenn das etwas sehr kritisch und direkt ist aber ich arbeite leidenschaftlich mit C++ (auch wenn es mehr und mehr Go wird) und versuche nur Neulinge nicht in die falsche Richtung zu schicken ;)

      Grüße,

      Finch

      Tech Lead - Google Cloud Partnership

      Developer // Designer // SysAdmin // Manager // Consultant

      One of the people here really employed in this great profession

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. März 2017 um 20:55
      • #10

      Ja verstehe ich musst es so sehen mir war langweilig dadurch ist es entstanden.. xD Pointer? Wir wollen hier doch nicht Richtung Spiel hacken gehen?! ;) Klar könnte auch ein ESP oder Aimbot Tutorial releasen, dafür würden mich aber alle hassen, weil ich damit ja die ehrlichen Spieler betrüge und das Game kaputt mache. Oder welche Verwendung für Pointer meinst du?

    • Finch
      Amateur
      Reaktionen
      177
      Trophäen
      11
      Beiträge
      160
      • 3. März 2017 um 21:11
      • #11

      Pointer haben nix mit Hacks zu tun...
      Pointer in C++ sind vielfältig wichtig. Zum Beispiel in einem von unseren Servern die eine API zur Manipulation einer Datenbank bieten, kommt alles über die Server Klasse rein. Die Ruft dann je nach Anfrage die DB Klasse auf:

      Code
      int result = db->queryUser(uid);

      Der Pfeil ist wie der Pointer aufgerufen wird.

      Tech Lead - Google Cloud Partnership

      Developer // Designer // SysAdmin // Manager // Consultant

      One of the people here really employed in this great profession

      2 Mal editiert, zuletzt von Finch (3. März 2017 um 21:38) aus folgendem Grund: Semikolon vergessen. Zu viel Golang.

    • ChickenWeed
      Kenner
      Reaktionen
      63
      Trophäen
      9
      Beiträge
      528
      Bilder
      7
      • 3. August 2017 um 20:00
      • #12

      Ohhhhhhh R.I.P wenn ich das jetzt so sehe haha xd

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von Native-Servers.com? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Benutzerkonto erstellen

    Benutzer online in diesem Thema

    • 1 Besucher

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™