- 1. 概要
- 2. インストール
- 3. 起動
- 4. 操作
1. 概要
「Visual Studio 2022」で、「C#」で作成した「.dll」は。
「.dll」そのものを、誰かに渡したとしても、それをプロジェクト内にとりこんで。
「.dll」内のクラスやメソッドを呼び出していれば、呼び出し側のメソッド呼び出し部分を右クリックして、「定義へ移動」すると。
ソースウィンドウに、逆コンパイルしたものが、表示されるので、ソースが見え見えになってしまいます。
逆アセンブルは、あれこれ手を使えばできてしまいますが、上記のような簡単な手順でソースが見えてしまうのは、やな感じです。
簡単には、逆コンパイルさせないようにする方法があるようなので、やってみます。
本ページは、下記のサイトを参考にさせていただきました。
「Dotfuscator を使用して作成したアプリケーションを難読化する (Visaul Studio 2022 バージョン) - Visual Studio」
「.NETアプリ の逆コンパイル対策、その具体的な方法とは?(難読化の実例付)」
2. インストール
難読化するには、「Dotfuscator」というパッケージが必要なようで。
「Dotfuscator」は、「Visual Studio 2022」へインストールして使用します。
「Visual Studio Installer」を起動して。
「個別のコンポーネント」→「コードツール」で。
「Preemptive Protection - Dotfuscator」のチェックがはいっていれば、インストール済です。
チェックがはいっていなければ、チェックして、「変更」でインストールしなおします。
3. 起動
「Dotfuscator」は、単独のプログラムのようですが、「Visual Studio 2022」から起動します。
「Visual Studio 2022」を起動しておいて。
「ツール」→「Preemptive Protection - Dotfuscator Community」
「はい。使用許諾に同意します」へチェックをいれて。
「OK」
(下部のチェックボックスは、お好みで)
ここで、ユーザ登録してもかまいませんが、「キャンセル」でも進みます。
「OK」
この後、ずいぶん待たされます。
(起動しないと思って、何度もたたいたら、いっぱい起動しました)
4. 操作
これが、起動直後の状態です。
「入力」を選択して、「+」を押すと、ファイル選択ダイアログが表示されます。
ファイル選択ダイアログで、対象の「.dll」を選択します。
「.dll」を選択後、中央のウィンドウに表示されます。
表示されたものを、選択すると右のウィンドウで、プロパティを設定することができます。
プロパティを設定したら。
「ビルド」
これで、出力ディレクトリに、難読化された、「.dll」が作成されます。
この難読化をどう判断するかは、人それぞれです。
無意味なコードが、あちこちに入っていたりするのですが。
ロジック自体が変わっているわけではないし、外部へのシンボルとなる、「public」なクラス名やメソッド名は、そのままです。
「Proffesional」版もありますが、お高い・・・。
一応、購入サイトを紹介しておきます。
「.NET用の難読化ツール | Microsoft Visual Studioに無料版がバンドル!」
上記サイトで、「Proffesional」版の試用提供を受けることもできます。
|