Frage an dll, licensing, c++ – Sichern Sie eine DLL-Datei mit einer Lizenzdatei [geschlossen]

12

Was ist der beste Weg, um die Verwendung / das Laden einer DLL mit einer Lizenzdatei zu sichern?

Deine Antwort

3   die antwort
2

wie Ihr Lizenzalgorithmus funktioniert. Ich würde vorschlagen, dass Sie sich mit etwas wie a beschäftigenDiffie-Hellman-Schlüsselaustausch (oder auchRSA), um eine Art öffentlichen / privaten Schlüssel zu generieren, der anhand einiger Informationen an Ihre Benutzer weitergegeben werden kann.

(Abhängig von der Anwendung kenne ich einen Fall, in dem ich den Lizenzcode für einen Vertrag für ein Unternehmen geschrieben habeMAC-Adresseund einige andere Daten haben sie gehasht und den Hash verschlüsselt und ihnen den "Schlüsselwert" gegeben, wenn die Registrierungsnummer korrekt war. Dadurch wird sichergestellt, dass die Schlüsseldatei nicht auf einen anderen Computer verschoben (oder übertragen) werden kann, wodurch die Software gestohlen wird.

Wenn Sie tiefer graben und Hackern aus dem Weg gehen möchten, ist das ein ganz anderes Thema ...

5

Überprüfen Sie die DLL. Verwendung einerkryptografische Hash-Funktionkönnen Sie dies in der Lizenzdatei oder in der DLL speichern. Dies bietet eine Überprüfungsmethode, um festzustellen, ob meine ursprüngliche DLL-Datei nicht gehackt ist oder ob es sich um die Lizenzdatei für diese DLL handelt. Ein paar einfache Byte-Austauschtechniken können Ihre Hash-Funktion schnell aus dem Takt bringen (und sind daher nicht einfach zu reproduzieren).

Speichern Sie Ihren Hash nicht als String, sondern teilen Sie ihn an verschiedenen Stellen in unsignierte Shorts auf.

Wie Larry sagte, ist eine MAC-Adresse ziemlich verbreitet. Es gibt viele Beispiele, wie man das umsetztDas Code-Projekt, aber sei dir bewusst, dass es heutzutage einfach ist, etwas vorzutäuschen.

Mein Vorschlag sollte Verwendung findenprivate Öffentlichkeit Schlüssel zur Lizenzgenerierung.

Kurz gesagt, Angriffsmodi sind binär (ändern Sie die Anweisungen Ihrer DLL-Datei), schützen Sie sich also davor, oder generieren Sie Schlüssel, damit jeder Lizenzbenutzer, Computer und sogar die Installation spezifisch wird.

4

en, wenn sie nicht gefunden wird.

Lesen Sie nach, was Sie in DllMain dürfen, es ist nicht viel! MSalters

Verwandte Fragen