Eine Verbindung zur einer MySQL Datenbank sicher herstellen?



  • Ich verstehe eure bedenken ja und stimme euch auch zu. Ich würde ja auch auf C# bleiben, allerdings finde ich keinen anständigen Obfuscator der .NET 6/7 kann.
    Klar kann ich meine Anwendung: Auf Deutsch gesagt Strohdumm Programmieren, damit es keine Angriffsziele gibt und das alles natürlich über den MiddleWare lösen, aber mich stört es einfach, das man den kompletten Sourcecode über dotpeek ohne Probleme eins zu eins raus kopieren kann.

    Wie schon oben beschrieben habe, gibt es derzeit keine Möglichkeit die mir bekannt ist: Free einen Obfuscator für .NET 6 zu nutzen um zu mindestens meinen Code etwas zu verschleiern.

    Natürlich würde ich unter C++ auch keinen direkten Weg verwenden, sondern dort auch über den MiddleWare eine Möglichkeit nutzen, um
    einen Angreifer in den Wahnsinn zu treiben, allerdings bietet C++ zu mindestens soviel "Schutz" das nicht jede voll Nase mein Code eins zu Eins klauen kann.

    Ich habe mich ja sogar schon mit der WinAPI angefreundet ☺



  • Nur ist die WinApi halt kacke 😂 . Klar, jeder Client kann den Clientcode dann lesen, aber was den Server und deine Datenbank betrifft bleibt alles vor neugierigen Augen geschützt. Und Clientcode klauen bringt halt nicht viel wenn man den Servercode nicht hat.



  • Ja das Stimmt, WinAPI ist schon echt scheiße aber es gibt ja auch wxWidgets, man könnte zwar mit beiden Arbeiten, aber naja. Kann man eigentlich sein Code selbst auch Verschleiern? ohne ein Obfuscator zu verwenden?



  • Ich weiss nicht wieviele leute dir noch erzaehlen muessen, dass security through obscurity einfach nunmal NICHT funktioniert...?
    Willst du das einfach nicht verstehen, oder tust du es wirklich nicht?

    Du willst client-specific krams aus deiner db haben. Jetzt gehst du zu deiner API, gibst der die credentials die den user authentifizieren. Deine API fragt die db nach dem krams, und schickt es zurueck. Das ganze machst du selbstverstaendlich mit TLS, was jede lib aus diesem jahrhundert unterstuetzt.

    und schon ist der ganze bums fertig.
    bonuspunkte wenn du den client->api auth prozess mit JWT realisierst.



  • @Cardiac sagte in Eine Verbindung zur einer MySQL Datenbank sicher herstellen?:

    security through obscurity

    Lieber Cardiac, es wäre vielleicht etwas Netter, auch meine Beiträge zu Lesen statt mich hier unfreundlich anzufahren.
    Wenn du meine Beiträge gelesen hättest, dann würdest du direkt verstehen, das mir es nicht um die Sicherheit beim Verschleiern geht,
    das habe sehr häufig geschrieben.



  • Sei es drum, C# kommt für mich erstmal nicht infrage. Ich werde so schnell auch nicht aufgeben,
    ich werde jetzt mal versuchen die Tipps hier umzusetzen und zu Testen. Nur so kann ich lernen.

    Das einzige was mich wirklich nervt an C++ ist die WinAPI, aber da finde ich eine Lösung. QT kann ich nicht wirklich verwenden, da die Lizenz blöd ist und wxWidgets weiß ich ehrlich gesagt noch nicht, ob ich das verwenden soll.



  • @Lucius sagte in [Eine Verbindung zur einer MySQL Datenbank sicher herstellen?]

    Das einzige was mich wirklich nervt an C++ ist die WinAPI, aber da finde ich eine Lösung. QT kann ich nicht wirklich verwenden, da die Lizenz blöd ist und wxWidgets weiß ich ehrlich gesagt noch nicht, ob ich das verwenden soll.

    C++ kann aber nix für die WinAPI. Und was ist an der Lizenz von QT falsch?



  • Das stimmt, C++ kann wirklich nichts für die WinAPI. Nur stört mich an C++ das diese Sprache keine eigene GUI mitbringt die besser anpassbarer ist.

    Naja, wie ich das verstanden habe, ist QT nur für Open Source User Kostenlos, die Preise sind meiner Meinung nach Unverschämt, nicht weil es im Jahr Summe X kosten würde, sondern, das man Monatlich eine Hohe Summe bezahlen soll.



  • @Lucius sagte in Eine Verbindung zur einer MySQL Datenbank sicher herstellen?:

    Das stimmt, C++ kann wirklich nichts für die WinAPI. Nur stört mich an C++ das diese Sprache keine eigene GUI mitbringt die besser anpassbarer ist.

    Naja, wie ich das verstanden habe, ist QT nur für Open Source User Kostenlos, die Preise sind meiner Meinung nach Unverschämt, nicht weil es im Jahr Summe X kosten würde, sondern, das man Monatlich eine Hohe Summe bezahlen soll.

    Ja, irgendwie muss ne Firma auch Geld verdienen, oder? Was spricht denn gegen Open Source?

    Und das C++ keine GUI mitbringt seh ich als großen Vorteil, da die Standard APIs immer sehr komplex und kompliziert gestaltet werden.



  • Es spricht nichts dagegen, allerdings nur Gezwungen zu sein, Open Source zu Programmieren, damit ich ein Framework nutzen darf, finde ich halt doof.
    Inwiefern ein Vorteil wegen den Standard APIs?



  • Wenn du relativ zügig eine GUI erstellen möchtest, kannst du dir auch mal Nana anschauen (s.a. Screenshots) - es nutzt modernes C++.



  • @Th69 Danke für den Tipp, das werde ich auf jeden fall gleich mal machen.

    PS. Wie nutze ich Nana?



  • @Lucius sagte in Eine Verbindung zur einer MySQL Datenbank sicher herstellen?:

    @Th69 Danke für den Tipp, das werde ich auf jeden fall gleich mal machen.

    PS. Wie nutze ich Nana?

    Wie andere zuvor schon geschrieben haben. Du musst die Doku lesen!



  • @Lucius sagte in Eine Verbindung zur einer MySQL Datenbank sicher herstellen?:

    Es spricht nichts dagegen, allerdings nur Gezwungen zu sein, Open Source zu Programmieren, damit ich ein Framework nutzen darf, finde ich halt doof.

    Kannst du doof finden. Ich finde es gut, dass OS Projekte nicht zahlen müssen. Aber gut es gibt noch andere Libs.

    Inwiefern ein Vorteil wegen den Standard APIs?

    Es wird im Standard (meiner Meinung nach) gerne mal over engineered. Im Moment darf ich mich zum Bleistift wieder mit vector<bool> rumschlagen. Wer zur Hölle braucht das und warum muss das in den Standard.



  • Du kannst Qt auch kommerziell nutzen ohne deinen Code zu veröffentlichen und ohne dafür zu bezahlen.



  • Danke an euch beiden.



  • @Lucius hier, les mal meinen ersten Beitrag. Da steht alles: https://www.c-plusplus.net/forum/topic/350970/qt-kommerziell-nutzen
    Hinzu kommt glaube noch, dass du Qt inklusive Copyright irgendwo nennen musst. Vielleicht in einem "About" Fenster oder so



  • @Zhavok Ja das habe ich auch überall gelesen. Das Problem für mich ist die Abhängigkeit, QT nutzt ja auch die WinAPI wenn ich mich nicht täusche? Dann frage ich mich doch, ob das nicht besser wäre die WinAPI richtig zu verstehen, damit man selbst seine Form ohne QT aufbauen kann.

    Am Anfang ist das natürlich Arbeit, aber wenn man einmal eine Form richtig angepasst hat und diese als Vorlage nimmt, spart man auch sehr viel Zeit, zwar nicht so viel wie in QT, aber man hat die Abhängigkeit / Lizenzen nicht mehr.

    Klar unter Linux oder Mac müsste man das ganze auch machen, aber ich selbst werde erstmal nur in Windows proggen.



  • Willst du erst viel lernen (und ausprobieren) müssen oder möchtest du in kurzer Zeit eine Applikation entwickeln?



  • Qt ist Multiplatform, hat ne super Doku, allerhand Features für allemöglichen Probleme und ich persönlich finde das Design der Lib ganz gut. Du kannst sogar damit mobile Anwendungen basteln. Auf die WinAPI zu setzen kann ich dir absolut nicht empfehlen. Du kannst dadurch effektiv nichts besser als wenn du ne Lib verwendest. Klar, du machst dich damit abhängig von der Qt, aber wenn du irgendwann deine Software auf Linux oder MacOS veröffentlichten willst kannst du auch direkt von vorn anfangen. Und wenn du Qt nicht magst dann nimm was anderes. ImGui soll auch ganz gut sein.


Anmelden zum Antworten