記事"MQL5 コードの保護:パスワード保護、キージェネレータ、時間制限、リモートライセンス、高度 EA ライセンスキー暗号化技術"についてのディスカッション - ページ 5

 

また、"Licence server not connected." ?

ところで、https://www.mql5.com/en/forum/432897。

RemoteProtectedEABase6で簡単に検索できます。

Communicating with an api/custom server using a HTTP request inside of .mq5 indicator code - I'm trying to find out what I was doing with A. Mq5 indicator and Winlet DLL?
Communicating with an api/custom server using a HTTP request inside of .mq5 indicator code - I'm trying to find out what I was doing with A. Mq5 indicator and Winlet DLL?
  • 2022.09.19
  • www.mql5.com
Indicator code: python flask server code: so i was toying with the idea of just using winlet or using something like curl in a c++. In essence a service and a script behave basically the same, but to keep a service alive and running you have to use a loop
 
Carl Schreiber #:

また、"Licence server not connected." ?

ところで、https://www.mql5.com/en/forum/432897。

RemoteProtectedEABase6で簡単に検索できます。

ライセンスサーバーに接続されていません。" ?

それは私に何を教えてくれますか?接続されていない...この質問の意味がわからない。

リンク先の記事はいいのですが、私には役に立ちません。

私はWinInet.dllを使っています。

私の知っている限りでは、どこでエラーになるのか思いつきません。

 

過去にソケットを使おうとしたこともあったが、サーバーが何かを取得するまでブロックしてしまうので止めた......。

共有メモリーを使った解決策もありましたが、これもうまくいきませんでした。

私はRAMディスクを使い、Windowsの関数(kernel32.dll)を使って単純にファイルを書き込んだり、読んだり、削除したりしました。

 
Carl Schreiber #:

過去にソケットを使おうともしたのですが、サーバーが何かを受け取るまでブロックしてしまうのでやめました。

まずすべてのデータを送信し、それから接続があるかどうかを確認するというのが正しい理解でしょうか?

 

さて、クライアント・サーバー・モデルに よれば、サーバーが最初に起動し、(多数の)クライアントからの質問を待つからである。

サーバーのプログラムでは、クライアントから何かが来るまで何も起こらない(ブロックされる)。

CodeBaseでトレード・コピー機を検索...
 
Carl Schreiber #:

さて、クライアント・サーバー・モデルに よれば、サーバーが最初に起動し、(多数の)クライアントからの質問を待つからである。

サーバーのプログラムでは、クライアントから何かが来るまで何も起こらない(ブロックされる)。

ああ論理的だ。まずすべてを送信し、それからサーバーが応答する。サーバーから応答があれば、コネクションが確立され、私はその応答を問い合わせ、それに応じて対応することができる。応答がなければ、"ライセンス・サーバーに接続されていません。"
 

ディープルはこう語る: https://www.deepl.com/translator#en/de/License%20server%20not%20connected

問題はその理由だ。走っているのか?保護されているのか?...

 

ex.5ファイルをデコンパイルしないようにするには、EAに項目7をどのように記述 すればよいでしょうか?

これを避けるためのコード例はありますか?

詳しく教えてください。

 
この記事をありがとう。

結局、この議論は「製品がクラックされる前に、どれだけ時間を稼ぐことができるか」ということだ。クラックする価値がなくなるほど、クラックするのに高くつくようにするのが狙いだ。

実装可能な方法としては、コードの難読化がある。例えば、double Signalはdouble AB1234になり、double IndicatorValueはCD1234になる。これで問題が解決するわけではないが、コードを逆コンパイルする人にとっては頭痛の種になるだろう。ライセンス・チェックがどこで行われ、それを変更する可能性があるのかを見つけるのが本当に難しくなる。

もう1つの解決策は、すべてを内部で処理し、すべてのインジケータ、すべてのエキスパートアドバイザーはオーナーサーバーでのみ計算されるようにすることです。ユーザーは、ライセンス、バーデータ、サーバー時間などを サーバーに送信します。サーバーはインジケーターの値やEAのアクションで応答します。これだけで、実装にはかなりの費用と時間がかかるが、ほとんどの問題は解決する。

好奇心を刺激し、お役に立てれば幸いです。
 
Winged Trading #:



。そのため、実行ファイルはすでにかなり「不透明」であり、識別子の名前を変更することによる難読化は、ここに追加の保護レイヤーを追加することにはならない。