Protezione della paternità del codice MQL in MT5.

 

Il problema della protezione dei programmi MQL è stato sollevato molte volte sul forum.

Perché gli sviluppatori non includono la verifica (decrittazione o qualcos'altro) negli strumenti del linguaggio, utilizzando il certificato utente rilasciato dall'autore dell'applicazione.

Per esempio, espandendo la lista deicertificati#PropertySecurity <......>.


Il codice MQL con questa proprietà potrebbe essere tradotto in una forma utilizzabile solo da un certificato rilasciato dal proprietario del codice sorgente.
 

Abbiamo già una serie di protezioni specifiche per gli sviluppatori esperti. Li annunceremo un po' più tardi.


La tua idea è buona e può essere implementata.


Fateci sapere se volete avere voce in capitolo sul modo in cui vorreste essere protetti.

 
Renat :

Abbiamo già una serie di protezioni specifiche per gli sviluppatori esperti. Li annunceremo un po' più tardi.


La tua idea è buona e può essere implementata.


Fateci sapere come vorreste implementarlo.



Grazie!

Penso che se si creasse un meccanismo per creare un tale certificato sulla base di un incrocio tra un info-certificato di un editore e un certificato di un utente, ci sarebbero meno domande sulla protezione dei prodotti commerciali.

 

Il problema principale è la possibilità teorica di decompilazione. Se questo problema viene risolto, allora tutti i complessi metodi di sicurezza non hanno bisogno di essere implementati. Solo gli strumenti incorporati nel MQL saranno sufficienti.

Sfortunatamente, F4 è stato decrittato e il decompilatore è liberamente in giro sul web. La stessa cosa può succedere alla quinta, se gli sviluppatori non hanno implementato una protezione adeguata. Intendo la protezione del terminale dal debug e dalla decompilazione. Inoltre, ho visto da qualche parte che il codice MQL5 è compilato in codice CPU nativo. Non so: è davvero così o no, ma se lo è, è un grave buco nella protezione dalla decompilazione.

In generale, sono abbastanza scettico sulla protezione dalla decompilazione EA/indicatore. Penso che sia probabilmente un sogno irraggiungibile.

 

La protezione del debug non è necessaria se il codice dello script è criptato con una chiave (forte) rilasciata all'acquirente specifico dello script. Gli algoritmi di PGP, per esempio, sono open-source.

Un'altra cosa è che un compratore senza scrupoli può pubblicare la sua chiave. Un database online centralizzato degli script commerciali e dei loro acquirenti, accessibile tramite un servizio web speciale o un server MT, potrebbe probabilmente aiutare a prevenire queste cose, ma c'è molto a cui pensare.

 
marketeer :

Non avete bisogno di protezione per il debug se il codice dello script sarà criptato con una chiave (forte) scritta all'acquirente specifico dello script. Gli algoritmi dello stesso PGP, per esempio, sono open source.

Un'altra cosa è che un compratore senza scrupoli può pubblicare la sua chiave. Un database online centralizzato degli script commerciali e dei loro acquirenti, accessibile tramite un servizio web speciale o un server MT, potrebbe probabilmente aiutare a prevenire queste cose, ma c'è molto a cui pensare.



Evidentemente non hai letto il post sugli "incroci". Un compratore senza scrupoli sarà costretto a dare anche il suo conto. e in una sola mano. ;)

Stiamo parlando di file EX5, dopo tutto.

 
marketeer :

La protezione del debug non è necessaria se il codice dello script è criptato con una chiave (forte) rilasciata all'acquirente specifico dello script. Gli algoritmi di PGP, per esempio, sono open-source.

Un'altra cosa è che un compratore senza scrupoli può pubblicare la sua chiave. Un database online centralizzato degli script commerciali e dei loro acquirenti, accessibile tramite un servizio web speciale o un server MT, probabilmente aiuterà a prevenire questo genere di cose, ma è qualcosa a cui pensare.

Lei ha chiaramente scritto senza pensare.

Il decompilatore per il quadruplo è stato scritto come risultato dell'analisi, debugging e decompilazione del terminale MT4. E se solo i veri professionisti della programmazione possono far fronte a questo compito, allora come usare il decompilatore è chiaro a qualsiasi principiante. Nessuna crittografia darà risultati affidabili proprio perché un "cliente disonesto" può usare le chiavi che ha quando decompila il file EX5.

Per esempio, se hai acquistato il diritto di utilizzare un Expert Advisor per un mese, hai scaricato un decompilatore di utility da Internet, lo hai lanciato e hai indicato la chiave che hai... e hai ottenuto il codice sorgente dell'Expert Advisor. Gli hai tolto tutta la protezione e lo usi a vita, in più lo vendi dal tuo sito web.

La protezione della decompilazione del terminale renderà almeno difficile scrivere un'utilità per decompilare i file EX5.

 
api :

Hai chiaramente scritto senza pensare.


Il paradosso di Russell, però.

;)

E' esilarante).

 

Qual è il paradosso di Russell qui?

 
api :

Qual è il paradosso di Russell qui?


La protezione contro la decompilazione del terminale in un ambiente Windows è anche impossibile secondo la vostra logica.

 
Sorento :


Anche decompilare la protezione in un ambiente Windows è impossibile, seguendo la vostra logica.



Ciò che è costruito da uno può essere rotto da un altro.

In senso stretto, la protezione assoluta non esiste e non sarà mai attuata.

Ecco perché ho scritto "In generale, sono molto scettico sulla protezione contro la decompilazione di EAs/indicatori. Penso che sia probabilmente un sogno irraggiungibile".