2009-03-31 5 views
7

Was ist der beste Ansatz für die Lizenzierung von benutzerdefinierten .NET-Komponenten oder -Anwendungen für den Verkauf?Was ist der beste Ansatz zum Schützen von benutzerdefinierten .NET-Komponenten mit Lizenz?

  • Closed Source
  • 2 Lizenzierungsmodus:
    • Test eingeschränkte Funktionen Lizenz (kostenlos)
    • Vollwertiger
+0

Wie die licens_er_ oder die licens_ee_? –

+0

Sie verkaufen die Komponenten, nehme ich es? Stört es Sie, wenn der Prozess überall verbreitet wird? Möchten Sie etwas mehr verhindern, als durch das Urheberrecht bereits verhindert ist? Irgendwas Spezifisches oder Ungerade darüber, wie sie benutzt werden? –

Antwort

0

Es gibt eine Menge von hier Detail fehlt.

Lizenzieren Sie von jemandem oder versuchen Sie, eine Lizenz zu erstellen?

Open Source, geschlossene Quelle, Verkauf? Wenn Sie verkaufen, liefern Sie Quelle?

Wie ist die endgültige Verwendung der Komponente/Anwendung? Hosten Sie es (wie eine Multi-Tenant-Site) oder ist es mehr COTS?

Was machen Ihre Konkurrenten mit ihrem Verkaufsmodell? Scheint es, für sie zu arbeiten? z.B. Klingt das vernünftig? < - emulieren Sie das.

Wenn Sie diese Fragen beantworten, finden Sie die Lizenz, die Ihren Anforderungen entspricht.

0

GPL. Oder es als Public Domain deklarieren. Oder ein 24-seitiges EULA, das die Fähigkeit von Benutzern einschränkt, sich während der Verwendung der Komponente zu rasieren. Oder etwas ähnliches.

Warum erzählst du uns nicht, was du versuchst zu tun, was die beabsichtigten Verwendungen sind und was du gerne hättest?

6

Verwenden Sie für ein "Closed Source" -Szenario die Verwendung von Verschleierung. Ich habe SmartAssembly verwendet und bin sehr zufrieden mit den Ergebnissen.

Wie für Lizenzierungsmodi. Sie sprechen über .net-Komponenten, sodass die Zielgruppe Entwickler sind. Ich denke nicht, dass sie sich mit freien begrenzten Versuchen befassen werden. Wenn Sie etwas Wertvolles an die Entwickler-Community verkaufen wollen, machen Sie sich bereit, eine "Full-Featured" -Version auf Rapidshare oder Torrents zu sehen.

Ich würde empfehlen, sich auf Support und häufige Updates/Verbesserungen statt Schutz zu konzentrieren. In den meisten Fällen kauft "Geschäft" Unterstützung statt Binärdateien.

Wenn Sie einige Werkzeugtitel benötigen, warum googeln Sie nicht einfach dafür? ".net Lizenzierung" Abfrage wird Ihnen Töne von Links geben.

Hoffe, dass hilft.

0

Wenn Sie Ihre Software testen, die auf Vollversionen (dh Baugruppen mit allen Funktionen) aktualisiert werden kann, gibt es nicht viele Möglichkeiten, um zu verhindern, dass jemand am Ende hackt. (Mit .net ist es sogar einfacher als mit nativen Assemblies).

Signing & Verschleierung ist der einzige Weg zu verhindern, dass es in einer sehr lesbaren Form reverse engineered ist, aber nur mit etwas wie Reflektor wird im Grunde geben Sie das komplette.

Eine der einfachsten Möglichkeiten, um das Aussehen der Lizenzierung zu halten ist:

  • Verwendung öffentlicher/privater Schlüssel Verschlüsselung Lizenzinformationen (Ablaufdatum, aktivierte Funktionen, usw.) speichern in eine Datei
  • Fügen Sie den öffentlichen Schlüssel in die Assembly ein
  • entschlüsseln Sie die verschlüsselten Informationen beim Start Ihrer Anwendung, um zu überprüfen, ob jemand eine Lizenz zur Verwendung Ihrer Anwendung besitzt.
  • erzeugen Lizenzen bei Bedarf mit Ihrem privaten Schlüssel und diese Dateien verteilen (oder Schlüssel, wenn die Daten der klein genug sind)

Als Alternative Sie die Lizenzinformationen in Klartext mit einem Hash-Code enthalten können (dies ist Der Lizenzschlüssel, der Algorithmus sollte auch den öffentlichen/privaten Schlüssel unterstützen) im Klartext mit der Anwendung und nur prüfen, ob die Lizenzinformationen mit dem Hash-Code übereinstimmen.