Ich bin gespannt, wie Sie Ihre Software vor Rissen, Hacking usw. schützen können.
Verwenden Sie eine Art Seriennummernprüfung? Hardware-Schlüssel?
Verwenden Sie Lösungen von Drittanbietern?
Wie lösen Sie Lizenzprobleme? (zB Verwaltung von Floating-Lizenzen)
EDIT: Ich spreche nicht von Open Source, sondern von rein kommerzieller Softwareverteilung ...
Antworten:
Es gibt viele, viele, viele Schutzmaßnahmen. Der Schlüssel ist:
Nichts ist unzerbrechlich, daher ist es wichtiger, diese Dinge einzuschätzen und einen guten Schutz zu wählen, als einfach auf den besten (schlechtesten) Schutz zu schlagen, den Sie sich leisten können.
Und Variationen der oben genannten.
quelle
Egal auf welchem Weg Sie sich befinden, berechnen Sie einen fairen Preis, vereinfachen Sie die Aktivierung, geben Sie kostenlose kleinere Updates und deaktivieren Sie niemals deren Software. Wenn Sie Ihre Benutzer mit Respekt behandeln, werden sie Sie dafür belohnen. Egal was du tust, manche Leute werden es am Ende raubkopieren.
quelle
Tu es nicht.
Piraten werden Piraten. Egal welche Lösung Sie finden, sie kann und wird geknackt werden.
Auf der anderen Seite sind Ihre tatsächlichen, zahlenden Kunden diejenigen, die durch den Mist belästigt werden.
quelle
Machen Sie es einfacher zu kaufen als zu stehlen. Wenn Sie einen Haufen Kopierschutz einsetzen, ist der Wert des Besitzes des echten Geschäfts nur ziemlich gering.
Verwenden Sie einen einfachen Aktivierungsschlüssel und versichern Sie den Kunden, dass sie jederzeit einen Aktivierungsschlüssel erhalten oder die Software erneut herunterladen können, falls sie jemals ihren verlieren.
Jeder Kopierschutz (abgesehen von Nur-Online-Komponenten wie Multiplayer-Spielen und Finanzsoftware, die eine Verbindung zu Ihrer Bank herstellt usw.), von dem Sie nur ausgehen können, wird aufgehoben. Sie möchten, dass das illegale Herunterladen Ihrer Software zumindest etwas schwieriger ist als der Kauf.
Ich habe ein PC-Spiel, das ich nie geöffnet habe, weil es so viel Kopierschutz-Junk gibt, dass es tatsächlich einfacher ist, die gefälschte Version herunterzuladen.
quelle
Software-Schutz ist das Geld nicht wert - wenn Ihre Software gefragt ist, wird sie besiegt, egal was passiert.
Das heißt, Hardware-Schutz kann gut funktionieren. Ein Beispiel dafür, wie es gut funktionieren kann, ist Folgendes: Suchen Sie eine (ziemlich) einfache, aber notwendige Komponente Ihrer Software und implementieren Sie sie in Verilog / VHDL. Generieren Sie ein öffentlich-privates Schlüsselpaar und erstellen Sie einen Webservice, der eine Challenge-Zeichenfolge verwendet und mit dem privaten Schlüssel verschlüsselt. Erstellen Sie dann einen USB-Dongle, der Ihren öffentlichen Schlüssel enthält und zufällige Herausforderungszeichenfolgen generiert. Ihre Software sollte den USB-Dongle nach einer Challenge-Zeichenfolge fragen und diese zur Verschlüsselung an den Server senden. Die Software sendet es dann an den Dongle. Der Dongle überprüft die verschlüsselte Challenge-Zeichenfolge mit dem öffentlichen Schlüssel und wechselt in den Modus "Aktiviert". Ihre Software ruft dann jederzeit den Dongle auf, wenn sie die in HDL geschriebene Operation ausführen muss.
Bearbeiten: Ich habe gerade festgestellt, dass einige der Überprüfungsmaterialien rückwärts von dem sind, was sie sein sollten, aber ich bin mir ziemlich sicher, dass die Idee aufkommt.
quelle
Das Microsoft-Softwarelizenzschema ist für ein kleines Unternehmen verrückt teuer. Die Serverkosten betragen ca. 12.000 US-Dollar, wenn Sie sie selbst einrichten möchten. Ich empfehle es nicht für schwache Nerven.
Wir haben gerade Intellilock in unser Produkt implementiert . Damit können Sie alle Entscheidungen darüber treffen, wie streng Ihre Lizenz sein soll, und es ist auch sehr kostengünstig. Darüber hinaus werden Verschleierung, Compiler-Prävention usw. durchgeführt.
Eine andere gute Lösung, die ich in kleinen und mittleren Unternehmen gesehen habe, ist SoloServer . Es ist viel mehr ein E-Commerce- und Lizenzkontrollsystem. Es ist sehr konfigurierbar, bis es vielleicht etwas zu komplex ist. Aber nach dem, was ich gehört habe, macht es einen sehr guten Job.
Ich habe in der Vergangenheit auch das Desaware-Lizenzsystem für dot net verwendet. Es ist ein ziemlich leichtes System im Vergleich zu den beiden oben genannten. Es ist ein sehr gutes Lizenzkontrollsystem in Bezug auf kryptografisch einwandfrei. Es handelt sich jedoch um eine API auf sehr niedriger Ebene, in der Sie fast alles implementieren müssen, was Ihre App tatsächlich verwendet.
quelle
Digitales "Rights" Management ist das größte Software-Schlangenölprodukt der Branche. Um eine Seite aus der klassischen Kryptographie auszuleihen, ist das typische Szenario, dass Alice eine Nachricht an Bob senden möchte, ohne dass Charlie sie lesen kann. DRM funktioniert nicht, weil Bob und Charlie in seiner Anwendung dieselbe Person sind!
Sie sollten besser die umgekehrte Frage stellen: "Wie bringe ich die Leute dazu, meine Software zu kaufen, anstatt sie zu stehlen?" Und das ist eine sehr breite Frage. Aber es beginnt im Allgemeinen mit Forschung. Sie finden heraus, wer die Art von Software kauft, die Sie verkaufen möchten, und erstellen dann Software, die diese Leute anspricht.
Der zusätzliche Vorteil besteht darin, Updates / Add-Ons nur auf legitime Kopien zu beschränken. Dies kann so einfach sein wie ein Bestellcode, der während der Kauftransaktion erhalten wurde.
Schauen Sie sich die Stardock-Software, Hersteller von WindowBlinds und Spiele wie Sins of a Solar Empire an. Letzteres hat kein DRM und hat einen beträchtlichen Gewinn aus einem Budget von 2 Mio. USD erzielt.
quelle
Es gibt verschiedene Methoden, z. B. die Verwendung der Prozessor-ID zum Generieren eines "Aktivierungsschlüssels".
Das Fazit ist, dass jemand, der es schlimm genug will, jeden Schutz, den Sie haben, rückentwickeln wird.
Die ausfallsichersten Methoden sind die Online-Überprüfung zur Laufzeit oder ein Hardware-Hash.
Viel Glück!
quelle
Mit etwas Zeit wird Ihre Software immer geknackt. Sie können nach geknackten Versionen einer bekannten Software suchen, um dies zu bestätigen. Es lohnt sich jedoch, Ihrer Software einen gewissen Schutz zu verleihen.
Denken Sie daran, dass unehrliche Leute niemals für Ihre Software bezahlen und immer eine geknackte Version finden / verwenden. Sehr ehrliche Menschen werden sich auch ohne Lizenzierungsschema immer an die Regeln halten, nur weil dies die Art von Person ist, die sie sind. Aber die Mehrheit der Menschen befindet sich zwischen diesen beiden Extremen.
Das Hinzufügen eines einfachen Schutzschemas ist eine gute Möglichkeit, diesen Großteil der Menschen in der Mitte auf ehrliche Weise zu handeln. Dies ist eine Möglichkeit, sie daran zu erinnern, dass die Software nicht kostenlos ist und sie für die entsprechende Anzahl von Lizenzen bezahlen sollten. Viele Menschen reagieren tatsächlich darauf. Unternehmen können sich besonders gut an die Regeln halten, da der Manager kein eigenes Geld ausgibt. Verbraucher halten sich seltener an die Regeln, weil es ihr eigenes Geld ist.
Die jüngsten Erfahrungen mit Veröffentlichungen wie Spore von Electronic Arts zeigen jedoch, dass Sie bei der Lizenzierung zu weit gehen können. Wenn Sie sogar legitimen Menschen das Gefühl geben, Verbrecher zu sein, weil sie ständig überprüft werden, beginnen sie zu rebellieren. Fügen Sie also einige einfache Lizenzen hinzu, um die Leute daran zu erinnern, wenn sie unehrlich sind, aber mehr als das wird den Umsatz wahrscheinlich nicht steigern.
quelle
Nur-Online-Spiele wie World of Warcraft (WoW) haben es geschafft, jeder muss sich jedes Mal mit dem Server verbinden und somit können Konten ständig überprüft werden. Keine andere Methode funktioniert für Bohnen.
quelle
Ist nicht genau die Antwort, nach der Sie suchen, aber es ist eine großartige Ressource zur Piraterie eines Spieleentwicklers, der seine Piraten aktiv gefragt hat, warum sie das tun. Und bezieht sich auf den ersten Teil der Antwort, die Sie wählen.
Lesen Sie es unter Mit Piraten sprechen .
quelle
Im Allgemeinen gibt es zwei Systeme, die oft verwechselt werden -
Verwenden Sie zur Lizenzierung ein kommerzielles Paket, FlexLM viele Unternehmen große Geldsummen in die Lizenzierung. Sie glauben, dass sie auch Sicherheit erhalten. Dies ist ein häufiger Fehler. Schlüsselgeneratoren für diese kommerziellen Pakete sind reichlich vorhanden.
Ich würde eine Lizenzierung nur empfehlen, wenn Sie an Unternehmen verkaufen, die aufgrund der Nutzung rechtmäßig zahlen. Andernfalls ist der Aufwand wahrscheinlich höher als der Wert.
Denken Sie daran, dass mit dem Erfolg Ihrer Produkte alle Lizenz- und Sicherheitsmaßnahmen letztendlich verletzt werden. Entscheiden Sie jetzt, ob sich die Mühe wirklich lohnt.
Wir haben vor einigen Jahren einen Reinraum-Klon von FlexLM implementiert. Außerdem mussten wir unsere Anwendungen gegen binäre Angriffe verbessern. Der lange Prozess muss bei jeder Veröffentlichung erneut überprüft werden. Es hängt auch wirklich davon ab, welche globalen Märkte Sie auch verkaufen oder wo Ihr Hauptkundenstamm ist, was Sie tun müssen.
Lesen Sie eine weitere meiner Antworten zum Sichern einer DLL .
quelle
Wie bereits erwähnt, ist der Schutz von Software niemals kinderleicht. Was Sie verwenden möchten, hängt weitgehend von Ihrer Zielgruppe ab. Ein Spiel zum Beispiel ist nicht etwas, das Sie für immer schützen können. Andererseits ist es aus einer Reihe von Gründen weitaus unwahrscheinlicher, dass eine Serversoftware im Internet verbreitet wird (Produktdurchdringung und Haftung fallen in den Sinn; ein großes Unternehmen möchte nicht für Bootleg-Software haftbar gemacht werden) Die Piraten kümmern sich nur um Dinge, die groß genug sind. Um ehrlich zu sein, ist es für ein hochkarätiges Spiel wahrscheinlich die beste Lösung, den Torrent selbst zu säen (heimlich!) Und ihn auf irgendeine Weise zu modifizieren (zum Beispiel, damit er nach zwei Wochen Spielzeit mit Nachrichten auftaucht, die Sie dazu auffordern Bitte unterstützen Sie die Entwickler durch den Kauf einer legitimen Kopie.
Wenn Sie Schutz einrichten, beachten Sie zwei Dinge. Erstens wird ein niedrigerer Preis den Kopierschutz ergänzen, indem die Menschen eher dazu neigen, den Kaufpreis zu zahlen. Zweitens darf der Schutz den Benutzern nicht im Wege stehen - ein aktuelles Beispiel finden Sie unter Spore.
quelle
DRM this, DRM that - Verlage, die DRM für ihre Projekte erzwingen, tun dies, weil es rentabel ist. Ihre Ökonomen schließen daraus Daten, die keiner von uns jemals sehen wird. Die Trolle "DRM ist böse" gehen etwas zu weit.
Bei einem Produkt mit geringer Sichtbarkeit wird durch eine einfache Internetaktivierung das gelegentliche Kopieren gestoppt. Jedes andere Kopieren ist für Ihr Endergebnis wahrscheinlich vernachlässigbar.
quelle
Eine illegale Verbreitung ist praktisch unmöglich zu verhindern. Fragen Sie einfach die RIAA. Digitale Inhalte können einfach kopiert werden. Analoge Inhalte können digitalisiert und dann kopiert werden.
Sie sollten sich darauf konzentrieren, die unbefugte Ausführung zu verhindern . Es ist nie möglich, die Ausführung von Code auf dem Computer eines anderen vollständig zu verhindern, aber Sie können bestimmte Schritte unternehmen, um die Messlatte so hoch zu legen, dass es einfacher wird, Ihre Software zu kaufen, als sie zu raubkopieren.
Lesen Sie den Artikel Entwickeln für Softwareschutz und Lizenzierung , in dem erläutert wird, wie Sie Ihre Anwendung unter Berücksichtigung der Lizenzierung am besten entwickeln.
Obligatorischer Haftungsausschluss & Plug: Das von mir mitbegründete Unternehmen produziert die OffByZero Cobalt-Softwarelizenzierungslösung für .NET .
quelle
Das Problem mit dieser Idee, die Piraten es einfach benutzen zu lassen, wird sie sowieso nicht kaufen und ihren Freunden zeigen, wer es kaufen könnte, ist zweifach.
Mit Software, die Dienste von Drittanbietern verwendet, verbrauchen die Raubkopien wertvolle Bandbreite / Ressourcen, die legitimen Benutzern eine schlechtere Erfahrung bieten, meinen SW populärer aussehen lassen als er ist, und die Dienste von Drittanbietern fordern mich auf, mehr für ihre Dienste zu zahlen, weil der verwendeten Bandbreite.
Viele Gelegenheitsspieler würden nicht davon träumen, den Sw selbst zu knacken, aber wenn es auf einer Website wie Piratebay einen leicht erkennbaren Riss gibt, werden sie ihn verwenden, wenn es keinen gäbe, könnten sie ihn kaufen.
Dieses Konzept, Raubkopien-Software nicht zu deaktivieren, wenn sie einmal entdeckt wurde, scheint ebenfalls verrückt zu sein. Ich verstehe nicht, warum ich jemanden weiterhin Software verwenden lassen sollte, die er nicht verwenden sollte. Ich denke, dies ist nur die Ansicht / Hoffnung der Piraten.
Es ist auch erwähnenswert, dass es eine Sache ist, ein Programm schwer zu knacken, aber Sie müssen auch verhindern, dass legitime Kopien geteilt werden. Andernfalls könnte jemand einfach eine Kopie kaufen und sie dann
über eine Torrent-Site mit Tausenden anderen teilen. Die Tatsache, dass ihr Name / ihre E-Mail-Adresse in die Lizenz eingebettet ist, wird nicht ausreichen, um alle davon abzubringen, und es braucht nur einen, um ein Problem zu lösen.
Die einzige Möglichkeit, dies zu verhindern, besteht darin, entweder:
Lassen Sie den Server die Lizenz jedes Mal beim Programmstart überprüfen und sperren und geben Sie die Lizenz beim Beenden des Programms frei. Wenn ein anderer Client mit derselben Lizenz beginnt, während der erste Client über eine Lizenz verfügt, wird diese abgelehnt. Auf diese Weise wird nicht verhindert, dass die Lizenz von mehr als einem Benutzer verwendet wird, sondern dass sie gleichzeitig von mehr als einem Benutzer verwendet wird - was gut genug ist. Es ermöglicht einem legitimen Benutzer auch, die Lizenz auf einen seiner Computer zu übertragen, was eine bessere Erfahrung bietet.
Beim ersten Client-Start sendet der Client die Lizenz an den Server und der Server überprüft sie, wodurch ein Flag in der Client-Software gesetzt wird. Weitere Anfragen von anderen Kunden mit derselben Lizenz werden abgelehnt. Das Problem bei diesem Ansatz ist, dass der ursprüngliche Client Probleme haben würde, wenn er die Software neu installiert oder einen anderen Computer verwenden möchte.
quelle
Selbst wenn Sie eine Art biometrische Fingerabdruckauthentifizierung verwenden würden, würde jemand einen Weg finden, diese zu knacken. Daran führt wirklich kein praktischer Weg vorbei. Anstatt zu versuchen, Ihre Software hackfest zu machen, sollten Sie überlegen, wie viel zusätzliche Einnahmen durch Hinzufügen eines zusätzlichen Kopierschutzes im Vergleich zu der Zeit und dem Geld, die für die Implementierung erforderlich sind, erzielt werden. Irgendwann wird es billiger, ein weniger strenges Kopierschutzsystem zu verwenden.
Es hängt davon ab, was genau Ihr Softwareprodukt ist. Eine Möglichkeit besteht jedoch darin, den "wertvollen" Teil des Programms aus der Software zu entfernen und unter Ihrer ausschließlichen Kontrolle zu halten. Sie würden eine bescheidene Gebühr für die Software erheben (hauptsächlich zur Deckung der Druck- und Vertriebskosten) und Ihre Einnahmen aus der externen Komponente generieren. Zum Beispiel ein Antivirenprogramm, das günstig verkauft (oder kostenlos mit anderen Produkten gebündelt) wird, aber Abonnements für den Aktualisierungsdienst für Virendefinitionen verkauft. Mit diesem Modell würde eine Raubkopie, die Ihren Update-Service abonniert, keinen großen finanziellen Verlust darstellen. Mit der zunehmenden Beliebtheit von Anwendungen "in der Cloud" wird diese Methode immer einfacher zu implementieren. Hosten Sie die Anwendung in Ihrer Cloud und berechnen Sie den Benutzern den Cloud-Zugriff. Das tut es nicht
quelle
Wenn Sie daran interessiert sind, Software zu schützen, die Sie an Verbraucher verkaufen möchten, würde ich eine Vielzahl von Bibliotheken zur Generierung von Lizenzschlüsseln empfehlen (Google-Suche zur Generierung von Lizenzschlüsseln). Normalerweise muss der Benutzer Ihnen eine Art Startwert wie seine E-Mail-Adresse oder seinen Namen geben und er erhält den Registrierungscode zurück.
Mehrere Unternehmen werden Ihre Software entweder hosten und vertreiben oder eine vollständige Installations- / Kaufanwendung bereitstellen, in die Sie sich integrieren können, und dies automatisch tun, wahrscheinlich ohne zusätzliche Kosten für Sie.
Ich habe Software an Verbraucher verkauft und finde, dass dies das richtige Gleichgewicht zwischen Kosten / Benutzerfreundlichkeit / Schutz ist.
quelle
Die einfache und beste Lösung besteht darin, sie im Voraus aufzuladen. Legen Sie einen Preis fest, der für Sie und sie funktioniert.
Wenn Sie zahlende Kunden bitten, zu beweisen, dass sie Kunden bezahlen, nachdem sie bereits bezahlt haben, sind sie nur sauer. Das Implementieren des Codes, damit Ihre Software nicht ausgeführt wird, verschwendet Ihre Zeit und Ihr Geld und führt zu Fehlern und Belästigungen für legitime Kunden. Sie sollten diese Zeit besser damit verbringen, ein besseres Produkt herzustellen.
Viele Spiele / etc "schützen" die erste Version und lassen dann den Schutz im ersten Patch aufgrund von Kompatibilitätsproblemen mit echten Kunden fallen. Es ist keine unvernünftige Strategie, wenn Sie auf einem Mindestmaß an Schutz bestehen.
quelle
Fast jeder Kopierschutz ist sowohl unwirksam als auch ein Alptraum für die Benutzerfreundlichkeit. Einige davon, wie das Anbringen von Root-Kits auf den Maschinen Ihrer Kunden, werden geradezu unethisch
quelle
Machen Sie einen Teil Ihres Produkts zu einer Online-Komponente, die eine Verbindung und Authentifizierung erfordert. Hier sind einige Beispiele:
Dieses Paradigma geht jedoch nur so weit und kann einige Verbraucher abschrecken.
quelle
Ich stimme vielen Postern zu, dass kein softwarebasiertes Kopierschutzschema einen erfahrenen Softwarepiraten abschreckt. Für kommerzielle .NET-basierte Software ist Microsoft Software License Protection (SLP) eine sehr kostengünstige Lösung. Es unterstützt zeitlich begrenzte und Floating-Lizenzen. Der Preis beginnt bei 10 USD / Monat + 5 USD pro Aktivierung und die Schutzkomponenten scheinen wie angegeben zu funktionieren. Es ist jedoch ein ziemlich neues Angebot, also Vorsicht beim Käufer.
quelle
Ich schlage einen einfachen Aktivierungsschlüssel vor (auch wenn Sie wissen, dass er defekt sein kann), Sie möchten wirklich nicht, dass Ihre Software Ihren Benutzern in die Quere kommt, oder sie werden ihn einfach wegschieben.
Stellen Sie sicher, dass sie die Software erneut herunterladen können. Ich schlage eine Webseite vor, auf der sie Ihre Software erst nach Bezahlung protokollieren und herunterladen können (und ja, sie sollten in der Lage sein, so oft sie möchten, direkt und ohne eine einzige Frage herunterzuladen darüber, warum von Ihrer Seite).
Wenn Sie vor allem Ihre bezahlten Benutzer anspornen, gibt es nichts irritierenderes, als beschuldigt zu werden, ein Krimineller zu sein, wenn Sie ein legitimer Benutzer sind (DVDs Anti-Piraterie-Warnungen an jedermann).
Sie können einen Dienst hinzufügen, der den Schlüssel online mit einem Server vergleicht. Wenn zwei verschiedene IP-Adressen denselben Schlüssel verwenden, schlagen Sie einen Vorschlag zum Kauf einer weiteren Lizenz vor.
Aber bitte inaktivieren Sie es nicht, es könnte ein glücklicher Benutzer sein, der Ihre Software einem Freund zeigt !!!!
quelle
Wenn Sie ein Softwareentwickler sind, besteht eine der möglichen Lösungen darin, Metadaten direkt in Ihr Produkt einzubetten. Suchen Sie nach einer Instanz Destruction Security Tool von theredsunrise.
quelle
Wir lizenzieren unsere kommerzielle Software mit unserem eigenen Lizenzierungssystem - was wir verkaufen (Lizenzverwaltungstools). Wir verkaufen in der Regel Abonnementlizenzen, können aber auf Wunsch auch je nach Nutzung verkaufen. Bisher war es für uns sicher: www.agilis-sw.com
quelle