5

ASP.NET ページで使用される C# コードを暗号化する必要があります。したがって、コンパイルして DLL ファイルを作成するときは、DLL ファイルを暗号化する必要があります。DLLファイルを暗号化する方法を教えてください...

4

2 に答える 2

8

できることの 1 つは、暗号化された .dll を別の .dll に埋め込み、実行時に復号化してロードすることです。

  • まず、保護するすべてのコードを含む .dll をコンパイルします。
  • 次に、適切と思われる方法で .dll を暗号化します。
  • 次に、暗号化された .dll がリソースとして埋め込まれた 2 つ目の .dll を作成します。
  • その 2 番目の外側の .dll が実行時にキーを要求するようにします。
  • 外側の .dll は、暗号化された .dll をキーで復号化します。
  • 外側の .dll は、 System.AppDomain.CurrentDomain静的メソッドを呼び出し、 Loadメソッドを使用して復号化された .dll をロードできます。
  • 外側の .dll は、ASP.NET と復号化された .dll の間で何らかの相互運用を行う必要がある場合があります。

この方法には制限があります。実行するには、起動時に毎回インスタンスにキーを提供する必要があります。これを傍受する方法があります。また、キーが提供されると、復号化された .dll がメモリ内に存在し、復号化されます。これにはいくつかの読み方があります。

この方法は、ハード ディスク ドライブを盗む可能性のある人物からコードを保護する場合にのみ役立ちます。これは、コードを実行するマシンを制御する人にとって絶対的な障壁ではありません。

于 2011-02-24T06:10:53.167 に答える
0

「暗号化」の意味がよくわかりませんが、コードを難読化したい場合は、Dotfuscator、Smart Assembly などのツールがいくつかあります...

于 2011-02-23T15:29:25.080 に答える