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

 
今のところ、それが唯一の選択肢だと思う。
 
sergeev:
今のところ、それが唯一の選択肢だと思う。

トレーダーのスキルを証明する方法は他にありません。自分の取引をモニターすることだけが。それがこのサイトでできるのは素晴らしいことです。オニキスなどは必要ない。

ただ、今のところ、このトピックに関する情報があまりありません。例えば、どのような種類のアカウントがこのサービスに接続できるのか?より正確には、デモ口座も 接続できるのでしょうか?それとも本物の口座だけですか?もちろん、リアル口座の方が信頼できるでしょう。デモ口座もリアル口座も、長期間(例えば半年から)安定した結果が出れば、より信頼できます。もっと多くの質問があるかもしれません.

P.S.一般的に、トピックは他の何かについてなので、私は去ります。:)

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о счете - Документация по MQL5
 
Renat:

ところで、私たちは間もなく全ユーザー向けの大きな評価システムをリリースする予定です。レベル80のトレーダーを出せ!」という、非常に興味深い革新的なものになるでしょう。

少なくとも3つの評価:「プログラマーとしてのユーザー評価」、「トレーダーとしてのユーザー評価」、「フラッダーとしてのユーザー評価」。
 

コピープロテクトは非常に 難しい問題であり、それゆえに音楽・映画産業はDRMに取り組み、失敗を繰り返してきた。

もし彼らがあなたのアドバイスを使って製品を "保護 "することにした場合、その消費者が数時間のうちに保護を解除し、何分の一かの値段で転売したときに、彼らは多少驚くかもしれない。

マジメな話、base64エンコーディングは暗号化とは関係ない。 base64エンコーディングは、データエンコーディングを7ビットとみなすプロトコルを使って、8ビットデータを安全に伝送できるようにするために設計されたものだ。 base64エンコーディングを逆用することは些細なことだが可能で、そのために設計されている!

MQL5ソフトウェアを安全に配布する唯一の解決策は、ブローカーの限定的な委任状条項を利用するか、.ex5ファイルを含むMQL5のインスタンスをどこかのサーバーにインストールし、顧客が シンクライアントを使用してアクセスできるようにすることです(.ex5をダウンロードできないようにする)。 はい、私は15年以上情報セキュリティに携わってきました。

正直なところ、私はMetaquotesがこの記事を掲載したことに驚いている。

Documentation on MQL5: Standard Constants, Enumerations and Structures / Chart Constants / Types of Chart Events
  • www.mql5.com
Standard Constants, Enumerations and Structures / Chart Constants / Types of Chart Events - Documentation on MQL5
 

この記事は、この問題に対処するためのヒントを与えてくれる。実際には、この問題はmt5クライアントが解決すべきものです。クライアント・ソフトウェア内でエンクリプションを使用する多くのプラットフォームがあるので、コーダーではなくソフトウェアが問題を解決する。

 
molanisfx:

この記事は、この問題に対処するためのヒントを与えてくれる。実際には、この問題はmt5クライアントが解決すべきものです。クライアントソフトウェアの中でエンクリプションを使用する多くのプラットフォームがあるので、コーダーではなくソフトウェアが問題を解決します。

MetaQuotesクライアントソフトウェアがその機能を 実装することさえ難しい問題です。ソフトウェアが復号化キーを含むかダウンロードしなければならないので、そのキーを侵害することが可能であることを意味します。 改ざん防止ハードウェアデバイスが使用されている場合、.ex5が*改ざん防止ハードウェア上で*実行されない限り、実行するためにある時点で復号化されなければならないので、それはまだ脆弱です。 私はそのような攻撃を実装することができないかもしれませんが、私は全く問題なくそれを行うことができるかなりの数の人々を知っています。

エンドユーザーが実行可能な.ex5にアクセスできるという脅威モデルでは、安全な解決策は*ありません*。

これは、企業や機関がシン・クライアント・モデルを使用する一般的な問題、言い換えればコンテンツ保護である。

 

すべてのEX5-プログラムは強力なキーで暗号化されていることを知っておく必要があります。これが第一のポイントです。

そして2つ目は、Market - A Market of Expert Advisors for MetaTrader 5を お忘れなく。マーケットにあるすべての製品は、購入者のための追加キーによって暗号化されています。つまり、合法的なユーザー以外は、このようなEX5-プログラムを起動することはできません。

 
Rosh:

すべてのEX5-プログラムは強力なキーで暗号化されていることを知っておく必要があります。これが第一のポイントです。

そして2つ目は、Market - A Market of Expert Advisors for MetaTrader 5を お忘れなく。マーケットにあるすべての製品は、購入者のための追加キーによって暗号化されています。つまり、合法的なユーザー以外はそのようなEX5-プログラムを起動することはできません。

このような暗号化されたプログラムは、合法的なユーザー以外は起動することができません。

ここで問題なのは暗号化ではなく、鍵の扱い方と復号化プロセスだ。

ある攻撃者(古典的な言い方をすればマロリー)が、鍵を持っているEX5をコピーして配布したいと考えた場合、次のような方法が考えられる:

i. その鍵を使ってEX5を実行する;

ii. DLLをプロセスにアタッチするなどして、実行中のプロセスを監視し、EX5が復号された直後にその内容をダンプする;

iii. 平文になったEX5を再アセンブルする(面倒であれば、ソースに逆アセンブルすることもできる)。

もしあなたの最初のポイント保護が署名検証を含むのであれば、攻撃者がファイルを配布するために必要なことは、関連する公開鍵を置き換えた別のMQL実行ファイルを配布することです。 もしMQL5が証明書を検証するために暗号化APIを使用しているのであれば、バイナリからそれを取り除くことができます。これは無限に 続く。

これはすべて、鍵管理という悪夢を考え始める前の話だ。

この種のバイナリ解析は最近の私の能力から外れていますが、手間なく達成できる人を何人か知っています。 つまり、心配すべきは暗号化の強さではなく、無効なセキュリティモデルを持っていることなのです。 誰もMetaTraderがこの問題を解決してくれるとは思っていないので、それ自体は 特別な問題ではありません。この問題には、MQL5/EX5コードの所有者が、自分が管理する別のサーバー上でそれを実行し、バイヤーにアクセス/シグナルをライセンスするという、非常に使いやすいソリューションが他にもあります。

ですから、少なくとも改ざん防止ハードウェアがなければ、適切に実装することが非常に困難であるにもかかわらず、なぜ人々がこの機能を要求するのか理解に苦しみます。

 

"ハードウェアプロパティ(HDD シリアル番号または CPUID 情報)に関連する変数を追加することもできます。この場合、Expert Advisor を実行するには、ハードウェアバインディングを使用する追加のジェネレータを実行する必要があります。

この結果はジェネレータの入力パラメータとして機能し、生成されたパスワードは特定のハードウェアに対してのみ正しくなります。このため、Expert Advisorを実行するためにコンピュータの設定を変更した人やVPSを使用している人が制限されますが、これは2つまたは3つの有効なパスワードを与えることで解決できます。この方法はマーケット サービスで使用されています。"

また、"このメソッドは Market サービスで使用されています" とはどういう意味ですか?つまり、私がコンパイルした Expert Advisor ファイルを「Market」サービスで販売する場合、自動的にハードウェアへのバインディングが含まれるのでしょうか?それとも、ソースコードを提供し、Metaquotesの従業員がそこにハードウェアへのバインディングを追加で含める必要がありますか?

MQL4でハードウェアへのバインディングを実装することは可能ですか?(ほとんどのブローカーセンターはまだMT4で動作しています)。

 
JohnyPipa:

また、「このメソッドは"Market " サービスで使用されています」とはどういう意味ですか?つまり、「Market」サービスで販売するExpert Advisorのコンパイルファイルを投稿すれば、ハードウェアへのバインディングは自動的に含まれるのでしょうか?それとも、ソースコードを提供し、Metaquotesの従業員が追加でハードウェアへのバインディングを含める必要がありますか?
はい、マーケットでプログラムを購入すると、プログラムの各コピー(EX5)は自動的に再保護/再暗号化され、ユーザーのハードウェアにバインドされます。ソースの有無は問いません。


MQL4でハードウェアバインディングを実装することは可能ですか?(ほとんどのブローカーセンターはまだMT4で動作しています)。

残念ながらできません。