一言で言えば、Dotfuscator Community Edition と他の「プロフェッショナル」エディションとの主な違いは、Community Edition は名前空間、メソッド名、およびクラスのその他の「パブリック」アクセス可能な側面のみを実際に難読化して変更することです。関数自体を掘り下げて、関数内の「プライベート」コードを難読化することはありません。
また、Community Edition は、アプリケーション内の制御フローなどを難読化することも、複数のアセンブリのコードを 1 つのアセンブリに "結合" することもありません。これらは、「プロフェッショナル」の有料バージョンで利用できる機能です。
コミュニティ エディション (Visual Studio に付属する「無料」バージョン) と「プロフェッショナル」な有料エディションの最適な比較は、次の 2 つのリンクを参照してください。
プリエンプティブな Dotfuscator エディションの比較
MSDN の Dotfuscator Community Edition 3.0
MSDN のリンクは少し古くなっていますが、Dotfuscator のさまざまなエディションで利用できる実際の機能について、より適切に説明されています。
編集:
商用の難読化ツールには多額の費用がかかりますが、その費用に見合う価値があるのでしょうか? まあ、それは本当にあなただけが下すことができる判断の呼びかけです. 個人的には、あなたのシナリオでは価値がないと思います。1 つ目は、保護したいアプリケーションが 1 つだけであるため (「小規模で低価格のユーティリティを 1 つリリースする予定です」)、2 つ目は、アプリケーションが「クラック」されることをあまり気にしていない (「I.アプリケーションがクラックされることをあまり恐れていません。」)
難読化を行わずにコンパイルされた .NET アプリケーションが元のソース コードに簡単にリバース エンジニアリングされ、誰かがこれを利用してあなたのソフトウェアを盗み、自分のものとして販売する可能性があることを理解しています。ソフトウェアの著作権侵害が存在するという事実は残っており、おそらくそれを止めることはできません。
ソフトウェアの著作権侵害を阻止しようとすることは、ここ (スタック オーバーフロー) とインターネット全体の両方でうんざりして議論されてきました。
一般的なコンセンサスは、十分な時間/お金が与えられた場合、「攻撃者」が「彼がそうすることを防ぐための最善の努力にもかかわらず、とにかくあなたのソフトウェアをクラック/盗む.
これはよく起こりますか?
おそらく、あなたが思っているよりもはるかに少ないと思います。確かに、ソフトウェアはクラックされますが、実際に他人のソース コードを盗み、それを完全にブランド化し直して自分のものとして販売する人はあまり多くないと思います。起きていない、起きていないとは言いませんが、よくあることではないことは確かです。
要約すると、最善の策は、ユーティリティを可能な限り優れたものにすることに集中し、無料の Dotfuscator 難読化ツールを使用することです。明らかな詮索好きな目ですが、誰かがあなたの製品/コードをひどくクラック/盗もうとするなら、彼らはそうするだろうという事実に眠りを失うことはありません.