7

Microsoft Visual C ++コンパイラが作成するexeファイルを暗号化する必要がありますか?いくつかのライブラリで作成されたゲームがあり、すべてのリソースが暗号化されていますが、exeに侵入してコードを変更する人が心配ですが、それは可能ですか?

4

3 に答える 3

4

クラックできないソフトウェアを作る方法はありません。それがユーザーのマシン上にある場合、ユーザーは理論的にはそれを完全に制御できます。

あなたができることは、人々がクラックするのを難しくすることです. あなたが探しているのは「実行可能な圧縮」と呼ばれます。Armadillo はこのようなことを行います。UPX も同様です。

PE 形式のパッカーの包括的なリストは、ここにあります。

圧縮されたリソースを暗号化するには、暗号化をサポートするアーカイブ形式でLZMA SDKを使用できます。ただし、その暗号化キーを隠そうとする場所に注意してください。彼らが言うように、「逃げることはできますが、隠すことはできません」:)

DRM の醜い世界へようこそ。

于 2013-03-21T06:37:07.687 に答える
3

どの手法を使用する場合でも、実行可能ファイルとリソースの両方をエンド ユーザーに配布し、それが価値がある場合は、最終的クラックされ、何もできなくなります。復号化プロセスを難しくするだけかもしれませんが、セキュリティを強化しても正当なユーザーに影響を与えるだけであり、ソフトウェアの改善に費やすことができる時間を無駄にします.

Apple プログラマーは確かにあなたや私よりも優れていますが、最終的にはすべての iPhone がジェイルブレイクされました。

于 2013-03-21T07:45:32.837 に答える
0

あまり意味がありません。プログラムを実行するには、メモリ内で復号化する必要があるため、復号化されたコードはメモリ内にあり、そこからダンプできます。

ただし、実行可能ファイルに署名することはできます (詳細については、この記事を参照してください)。実行可能ファイルが署名されると、整合性が保護されます。その最大の利点は、これが Windows を含むほとんどのオペレーティング システムでサポートされていることです。実行可能ファイルが変更された場合、オペレーティング システムは改ざんを検出し、それを起動しません (または、少なくともユーザーに警告します)。

于 2013-03-21T06:38:54.043 に答える