License-System bei meinem Programm einbauen? (mit FTP-Server und Daten)

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von kinobi.

    License-System bei meinem Programm einbauen? (mit FTP-Server und Daten)

    Heey,

    also ich wollte kurz fragen, ob soetwas mit Visual Basic möglich ist. PS: Bitte nur Antworten, wenn ihr wirklich meine Frage komplett und gründlich durchgelesen habt :) :thumbsup:

    Ich hab jetzt z.B. ein Programm, dass man aber Registrieren muss.

    Die Registrierung habe ich mir so vorgestellt:

    Das Programm liest die Hardware-ID aus, und erstellt für jede Hardware-ID (wenn man das Programm z.B. auf mehreren PC's benutzt) einen festgelegten Code.

    Der Nutzer schickt mir eine Nachricht per E-Mail oder sonst wie seinen Code (der Code ist also quasi sein Identity Code, wenn man es so sehen will) und ich lege für diesen Code

    auf meinem FTP-Server einen License-Key an. Seine License schicke ich ihm dann und er kann sich mit der Registrieren. Der Nutzer kann also nur von einem PC aus drauf

    zugreifen, da pro Hardware-ID = 1 License. Wenn er das Programm von einem anderen PC aus nutzen will,

    muss er nochmal eine neue License kaufen.

    Vielleicht etwas unverständlich erklärt deswegen nochmal anders ^^

    Nutzer ladet Programm runter -> Programm liest Hardware-ID aus und legt einen random Code an -> für diesen Code lege ich eine License fest -> Nutzer registriert das Programm für seinen PC mit der License.

    Hardware-ID 1 = Code 1 = License 1 <- OK!
    Hardware-ID 1 = Code 2 = License 1 <- ERROR!

    Und immer so weiter...

    Geht das? *Klassische Frage* Und wenn ja, wie?
    Kla ist soetwas möglich einfach mal google benutzen zb "VB Shareware"
    da gibt es schon ein paar vorlagen.

    muss er nochmal eine neue License kaufen.


    Benutzt du Visual Basic Express wenn ja darfst du deine Programme nicht
    verkaufen oder Lizenzen *glaub*.

    Ich würde keine Online-Aktivierung machen also das wenn er die Lizenz "gekauft" hat
    diese eingibt und dies per FTP abgefragt wird ob es übereinstimmt, ist viel zu unsicher.

    (Gedanke - möglich keine Ahnung)
    Du könntest in deinem Programm mehrere Serials einbauen oder nur einen dies irgendwie verschlüsseln
    zb MD5 und dies dann per Form2 entschlüsseln also so das die Serials von Form1 entschlüsselt werden
    und dann den eingegebenen Serial abfragt ob dieser gültig ist.
    (Gedanke - ende)
    @Techniker:
    In wirklichkeit werde ich aber eh nichts verkaufen, dient nur so zum "Spaß" weil mich das eben interessiert hat.

    Also den Code, um die Hardware-ID (Allgemein) auszulesen habe ich gerade schnell geschrieben..

    Und wegen der "License":

    Ich dachte mir folgendes, aber das wär ja noch leichter zu knacken oder? Dass ich einfach z.B. insgesamt 5 Licensen erstelle, und dann immer nur eine nach "Kauf" zusende.

    Also das es immer heißt

    VB.NET-Quellcode

    1. If Textbox1.Text = "License 1" or Textbox1.Text = "License 2" .....


    Um das zu knacken wär ja ne Sache von 5 Minuten (bei mir zumindest ^^) oder?
    Ich kenne diese Problematik und habe sie folgendermaßen gelöst.

    Genau wie Du lese ich bestimmte Hardware ID's aus und verschlüssele Sie per MD5. Diesen String lasse ich mir bei erstmaliger Verwendung schicken und trage ihn in eine MYSQL Datenbank ein welche auf meinem Server liegt.

    Beim Start des Programms werden diese ID's wieder ausgelesen und verschlüsselt. Dann wird eine Abfrage an die Datenbank gestartet ob der Schlüssel hinterlegt ist. Wenn dies der Fall ist startet das Programm, wenn nicht startet es eben nicht.

    Gruß
    Dirk