Zitat von
chaosben:
Per
DLL-Injection erhalte ich Zugriff auf den Prozess und lese den generierten Schlüssel aus. Dieser wird gespeichet und zusammen mit einem Runtime-Patch (wieder per
DLL-Injection) immer "als Konstante" zurückgegeben. ->
Imho: geknackt.
Soweit ich weiss, ist das bei .NET - Programmen nicht möglich. Oder gibts da Gegenbeweise?
Zitat von
Luckie:
Ein weiteres Problem ist die unbedingt nötige Internetverbindung. Habe ich keine, kann ich das Programm nicht nutzen.
Das ist kalkuliertes Risiko. Alternativ kann man sich eine schriftliche Aktivierung vorstellen, bei der der Kunde seinen Lizenzkey und seinen Public Key ausdruckt und einschickt und ihm das für ihn verschlüsselte Assembly auf CD zugeschickt wird.
Zitat von
markusj:
Risiko: Ein Key kann doppelt von dir Ausgegeben werden, keine eindeutige Zuordnung Key-Kunde ... Besser wäre ein "Used"-Flag, welches gesetzt wird.
Das ändert m.M.n. nichts an der Sicherheit des Systems. Durch das löschen bin ich mir zu 100% sicher, dass die nächste Aktivierungsanfrage keinen Datensatz mehr finden wird und demnach auch keine Aktivierung zulässt.