Schutz der Urheberschaft von MQL-Code in MT5. - Seite 6

 

Bitte beschreiben Sie zunächst ausführlich Ihren Mechanismus mit Schlüsseln und alle Mechanismen der Käufer-Verkäufer-Beziehungen. Es wird sich als eine überkomplizierte Sache herausstellen, die niemand unterstützen will. Ganz zu schweigen von der Tatsache, dass die Schlüssel überall im Internet zu finden sein werden. Ich bin sicher, dass niemand von Ihnen das gesamte System im Detail durchdacht hat, sondern nur oberflächliche Annahmen getroffen hat.

Wir haben ein sehr einfaches, automatisches und ziemlich zuverlässiges System für den Kauf/Verkauf von MQL5-Programmen mit Schutz entwickelt:

  1. der Verkäufer bietet seinen Code zum Verkauf an und gibt den Preis an
  2. Der Käufer lädt die neu gepackte Demo herunter und testet sie im Tester, kann diesen Code aber nicht physisch im Terminal verwenden
  3. Der Käufer erwirbt das Programm, das an seine Hardware angepasst ist und nur auf seinem Computer läuft (ein paar Klicks genügen zum Kauf)
  4. Verkäufer prüft Verkaufsberichte und berechnet den Gewinn
  5. Wir machen alle Berechnungen und Zahlungen
Der Verkäufer braucht sich also nicht darum zu kümmern, denn die gesamte Sicherheitsarbeit wird automatisch erledigt. Der Käufer erhält das Programm mit wenigen Klicks und muss sich nicht um die Erstellung, Übertragung und Schlüsselvergabe kümmern. Wenn die Lizenz ungültig ist, kann er ein zuvor erworbenes Programm bis zu 3 Mal auf neuer Hardware reaktivieren.
Документация по MQL5: Программы MQL5
Документация по MQL5: Программы MQL5
  • www.mql5.com
Программы MQL5 - Документация по MQL5
 
Renat:

Bitte beschreiben Sie zunächst ausführlich Ihren Mechanismus mit Schlüsseln und alle Mechanismen der Käufer-Verkäufer-Beziehungen. Es wird sich als eine überkomplizierte Sache herausstellen, die niemand unterstützen will. Ganz zu schweigen von der Tatsache, dass die Schlüssel überall im Internet herumliegen werden. Ich bin sicher, dass niemand von Ihnen das gesamte System im Detail durchdacht hat, sondern nur oberflächliche Annahmen getroffen hat.

Wir haben ein sehr einfaches, automatisches und ziemlich zuverlässiges System für den Kauf/Verkauf von MQL5-Programmen mit Schutz entwickelt:

  1. der Verkäufer bietet seinen Code zum Verkauf an und gibt den Preis an
  2. Der Käufer lädt die neu gepackte Demo herunter und testet sie im Tester, kann diesen Code aber nicht physisch im Terminal verwenden
  3. Der Käufer kauft das Programm neu verpackt für seine Hardware, und es läuft nur auf seinem Computer (ein paar Klicks, um es zu kaufen)
  4. der Verkäufer beobachtet die Verkaufsberichte und berechnet den Gewinn
  5. Wir machen alle Berechnungen und Zahlungen
Der Verkäufer braucht sich also nicht darum zu kümmern, denn die gesamte Sicherheitsarbeit wird automatisch erledigt. Der Käufer erhält das Programm mit wenigen Klicks und muss sich nicht um die Erstellung, Übertragung und Schlüsselvergabe kümmern. Wenn die Lizenz ausfällt, kann er ein zuvor erworbenes Programm auf der neuen Hardware bis zu 3 Mal reaktivieren.

lassen Sie uns das Thema vertiefen.

Schließlich ist die Sache ernst.

Je mehr Details Sie uns mitteilen, desto sicherer können wir sein.

 
api:


Was der eine aufgebaut hat, kann der andere zerstören.

Streng genommen gibt es keinen absoluten Schutz und er wird auch nie umgesetzt werden.

Deshalb schrieb ich: "Im Allgemeinen bin ich ziemlich skeptisch, was den Schutz vor Dekompilierung durch EA/Indikatoren angeht. Ich denke, das ist wahrscheinlich ein unerreichbarer Traum".

Wenn man sich in die Wildnis begibt, gibt es natürlich ASM, Code...

Aber bei den derzeitigen Mengen werden sich nur wenige Leute hinsetzen und die Logik analysieren, von ASM nach C++ übersetzen oder zumindest einen Algorithmus erstellen.

z.B. die Möglichkeit, Microsoft Office in den Quellcode zu überführen!

nur wenn Sie mit der Version 2007 beginnen, wenn die Version 2057 herauskommt (nach Jahr) könnte fertig sein

vor allem, wenn es nur eine Person gibt, die das macht!


In der Regel ist es einfacher, einen eigenen Algorithmus zu schreiben.


 
Renat:

Wir haben bereits eine Reihe von Schutzmaßnahmen speziell für erfahrene Entwickler. Wir werden sie später bekannt geben.


Ihre Idee ist gut, und sie kann umgesetzt werden.


Jeder ist eingeladen, sein Feedback zu den gewünschten Sicherheitsmethoden abzugeben.



Auf der einen Seite ist der Code z.B. auf einem Server versteckt, der einige Daten ausgibt und einige Daten als Eingabe erhält.

Sie bekommen den Code nicht in die Hand, sondern nur die Ergebnisse.

 
vicondi:

"Verkaufsberater..." - für diejenigen, die nicht wissen, wie man MT für den beabsichtigten Zweck - den Handel - nutzt.

"Und hier sind alle möglichen Tools, die dem Händler das Leben erleichtern..." sollte im Terminal Standard sein.

Es ist unmöglich, ALLES zu lösen! Es ist unrealistisch, ALLES zu lösen, was im Terminal nützlich sein kann!

 
Renat:

3. Der Kunde kauft die Software, die für seine Hardware neu verpackt wird und nur auf seinem Computer läuft (ein paar Klicks genügen, um sie zu kaufen).

Wenn die Lizenz ungültig wird, kann er/sie das zuvor erworbene Programm auf der neuen Hardware bis zu 3 Mal reaktivieren.

Die Erfahrung mit der Bindung an Hardware hat gezeigt, dass dieser Ansatz unwirksam ist. Vor allem, wenn die Anzahl der Reaktivierungen begrenzt ist. In der Praxis zeigt sich, dass dies die Freiheit der Nutzer, ihre Hardware aufzurüsten, zu aktualisieren oder zu verändern, drastisch einschränkt. Und dies hat in der heutigen, sich schnell verändernden Welt der Computertechnologie negative Auswirkungen auf die Entwickler von bezahlter Software (erhöht die Anzahl der Fehler im Zusammenhang mit der rechtlichen Aktivierung, erhöht die Anzahl der Anrufe beim Support, erhöht die Kosten, sowohl finanziell als auch moralisch für das Produkt). Im Allgemeinen wissen diejenigen, die bereits eine solche Bindung an die Hardware vorgenommen haben, wie viel Ärger dies mit sich bringt...

Optional kann im kompilierten Code ein geschützter, gesperrter Bereich eingerichtet werden, auf den nur mit einem vertrauenswürdigen Zertifikat des Code-Entwicklers zugegriffen werden kann, das an ein bestimmtes Konto, einen DC und/oder etwas anderes gebunden ist. In diesem Fall ist MQ nicht mehr verpflichtet, Maßnahmen zum Schutz des MQL-Codes zu ergreifen. Dies wird der Entwickler selbst sein, der etwas in MQL schreibt. MQ ist jetzt nur noch mit der Überprüfung der Zertifikate und der Weiterleitung des Zugriffs auf den geschlossenen Teil des MQL-Codes beschäftigt. Liegt ein Zertifikat vor, so ist der gesamte Code oder ein Teil davon nicht verfügbar, liegt kein Zertifikat vor, so befindet sich der gesamte Code im offenen Bereich. Nun, in den MQL-Compiler müssen wir einen Mechanismus einbetten, der den Code mit einem Entwicklerzertifikat abschließt. Wie man so schön sagt "einfach und geschmackvoll"... :) Dies ist derzeit eine der zuverlässigsten und kostengünstigsten Methoden des Softwareschutzes, die ich kenne. Wo können Sie Zertifikate erhalten? Ja, die gleiche VerySign oder ähnliche Dienstleistungen (wo immer ist bequemer oder profitabel), professionell in diesem Handwerk beschäftigt.

 
ir0407:

Die Erfahrung mit Hardware-Tethering hat gezeigt, dass dieser Ansatz ineffektiv ist. Vor allem, wenn die Anzahl der Reaktivierungen begrenzt ist. In der Praxis zeigt sich, dass dies die Freiheit des Nutzers, seine Hardware aufzurüsten, zu aktualisieren oder zu verändern, drastisch einschränkt. Und dies hat in der heutigen, sich schnell verändernden Welt der Computertechnologie negative Auswirkungen auf die Entwickler kostenpflichtiger Software (erhöht die Anzahl der Fehler im Zusammenhang mit der rechtlichen Aktivierung, erhöht die Anzahl der Anrufe beim Support, erhöht die Kosten, sowohl die finanzielle als auch die moralische Unterstützung für das Produkt). Alles in allem wissen diejenigen, die bereits eine solche Bindung an die Hardware vorgenommen haben, wie viel Ärger dies mit sich bringt...

Optional kann im kompilierten Code ein geschützter, gesperrter Bereich eingerichtet werden, auf den nur mit einem vertrauenswürdigen Zertifikat des Code-Entwicklers zugegriffen werden kann, das an ein bestimmtes Konto, einen DC und/oder etwas anderes gebunden ist. In diesem Fall ist MQ nicht mehr verpflichtet, Maßnahmen zum Schutz des MQL-Codes zu ergreifen. Dies wird der Entwickler selbst sein, der etwas in MQL schreibt. MQ ist jetzt nur noch mit der Überprüfung der Zertifikate und der Weiterleitung des Zugriffs auf den geschlossenen Teil des MQL-Codes beschäftigt. Liegt ein Zertifikat vor, so ist der gesamte Code oder ein Teil davon nicht verfügbar, liegt kein Zertifikat vor, so befindet sich der gesamte Code im offenen Bereich. Nun, in den MQL-Compiler müssen wir einen Mechanismus einbetten, der den Code mit einem Entwicklerzertifikat abschließt. Wie man so schön sagt "einfach und geschmackvoll"... :) Dies ist derzeit eine der zuverlässigsten und kostengünstigsten Methoden des Softwareschutzes, die ich kenne. Wo können Sie Zertifikate erhalten? Ja, Sie können sie von demselben VerySign oder ähnlichen Diensten (je nachdem, was bequemer oder profitabler ist) erhalten, die sich professionell mit diesem Handwerk beschäftigen.

1. Die Bindung an Hardware führt zu einigen Unannehmlichkeiten. Aber im Moment ist es (wenn es gut genug organisiert ist) eine recht effektive und zuverlässige Art des Schutzes.

Die Frage ist nur, woran man es binden kann. Ich schlage außerdem vor, die Anzahl der "Installationen" von 3 auf 10 (mindestens) zu erhöhen.

2. Ich bin mir sicher, dass genau das Gegenteil der Fall ist, alle Schutzmaßnahmen müssen von MQ durchgeführt werden. Vielleicht sollte es auch einen Link zum Handelskonto und eine zeitliche Begrenzung für die Nutzung geben (aber das ist eine zusätzliche Option, wie vom Entwickler gewünscht).

 
Als ob es andere Möglichkeiten des Schutzes gäbe?
 
Renat:
Als ob es andere Möglichkeiten des Schutzes gäbe?

Wenn wir es aus der Sicht eines Programmierers betrachten, der für Händler in MQL schreibt

mql5 - wird wahrscheinlich länger dauern - vielleicht sehr lange - aber es ist keine Tatsache, dass sie keinen Decompiler herstellen.

mql4 - leider gibt es keinen Code-Schutz - nur einige Methoden bieten eine kleine Sicherheitsmarge


In einigen Fällen ist es möglich, sich nicht an das Eisen zu binden,

Zum Beispiel die Erstellung einer Website über die Art der Funktion auf der Website - der Code appelliert an die Website -, die eine fertige Lösung gibt, aber nicht jeder wird diese Lösung verwenden wollen.

Es besteht eine Abhängigkeit von bestimmter Hardware und Software, in der Regel von jemand anderem, in der Regel von der Person, die das Produkt verkauft hat.

----

eine weitere Option

Im Rahmen von MT4/MT5 MQL4/MQL5 + DLL kann die Bindung nicht an die eiserne und an die Kontonummer (n) erfolgen, für echtes Geld und/oder vollen Namen, alternativ mittleren Namen

Dieser Weg ist der einfachste in Bezug auf den Schutz (nur für diese spezielle Anwendung) - er ist mobil und erfordert keine Verbindung zur Hardware.

Und die Jungs mit Fauspatron (in Form von MT4 Decompiler) fallen weg.

Die einzigen, die übrig bleiben, sind ernsthaftere Leute, die ASM kennen und auf Debugger-Ebene, verschiedene Logger, Decompiler und andere fortgeschrittene Verfahren aufschlüsseln können,

und es gibt weniger von ihnen und ihre Dienstleistungen sind teurer.

 
Renat:

Erläutern Sie bitte zunächst ausführlich Ihren Mechanismus der Schlüssel und den gesamten Mechanismus der Käufer-Verkäufer-Beziehungen. ...

zum Beispiel


Käufer: findet Informationen im Internet, schreibt und will kaufen

Verkäufer: beschreibt den Zahlungsmechanismus - wenn Sie Ihre Daten nicht veröffentlichen möchten, bitten Sie um eine Personalisierung

Käufer: bezahlt und sendet die Personalisierungsdaten, Kontonummer oder Name, die ein Schlüssel sind.

Verkäufer: versendet die mit Ihren persönlichen Daten verknüpften Waren.


Im Idealfall ist es das!

Ich habe solche Fälle, und nicht wenige