The project of U-WA-
http://uwa.potetihouse.com/

Image NanDoKu


戻る

・説明

VB.NET C#.NET 用の難読化ソフトです。
世にあるものと同じように、コンパイル済みのプログラムを逆コンパイルし、ソース中の名称を変更した後、再度コンパイルを行います。
世に出回っている「難読化」ツールでは無料のものが余りなく、また無料でも「個人の使用に限り」や「商用では使用できません」といった文面がありフリーウエアやシェアウエアに利用してよいか迷うことがありました。
そこで、このプログラムはフリー、シェア作者に難読化ツールを手軽に使ってもらうために作成しました。

・特徴

  • GUIが日本語で表示。
  • コマンドラインでの実行も可能なので、ビルドイベントに組み込み可能。
  • フリーウエア

・最新バージョン情報

バージョン
種別
作成日
動作確認環境
 
 
4.1.1
フリーウェア
2015/12/04
WindowsXp/Vista/7
Microsoft .NET Framework 4.0 SDKまたは
Microsoft Visual Studio 2010 がインストール済み

・ダウンロード

インストーラー無し ImageNanDoKu_4.1.1.zip 207KB HP

・難読化指定属性について

Version 3.1.0 より.NET Framework 標準の難読化指定属性に対応しました
各属性の対応状況は以下の様になります
ObfuscateAssemblyAttribute属性
プロパティ
既定値
機能
対応状況
AssemblyIsPrivate
省略できません
アセンブリがプライベートでのみ使用されることを示します
正常に処理されます
StripAfterObfuscation
True
難読化処理後にこの属性を削除します
正常に処理されます
ObfuscationAttribute属性
プロパティ
既定値
機能
対応状況
Exclude
True
難読化の対象としないことを示します
正常に処理されます
ApplyToMembers
True
属性がメンバー全体に適用されることを示します
正常に処理されます
StripAfterObfuscation
True
難読化処理後にこの属性を削除します
正常に処理されます
Feature
All
処理オプションの値
処理されません

・変換サンプル

難読化実行時のサンプルソースです
難読化実行前
難読化実行後(1)
難読化実行後(2)
難読化実行後(3)

逆コンパイルは Reflector for .NETを使用しました
http://www.aisto.com/roeder/dotnet/

・更新履歴

2015/12/04
Version 4.1.1
修正
・VBのカスタムイベントを使用すると難読化に失敗していたのを修正
・ジェネリック使用時で制約に型を指定すると難読化に失敗していたのを修正
2014/08/01
Version 4.1.0
修正
・コンパイラ選択で.Net Framework 3.0/3.5がファイル選択ボタンから変更できなかったのを修正
改善
64bit OSで32bitアプリケーションを難読化するために、32bit版を追加配布
2012/09/04
Version 4.0.1
修正
・クラスとインターフェイス名をジェネリック型制約に指定して継承するコードが難読化出来ない問題を修正
・混合モードアセンブリが読み出せない問題を修正
2011/03/02
Version 4.0.0
追加
.NET Framework 3.0アプリケーションに対応
.NET Framework 3.5アプリケーションに対応
.NET Framework 4.0アプリケーションに対応
2009/11/12
Version 3.2.6
修正
・クラスをジェネリック型制約に指定したインターフェイスをを継承するコードが難読化出来ない問題を修正 
2009/06/25
Version 3.2.5
修正
・難読化の設定変更直後に難読化を行うと、一部の設定が実行に反映されない問題を修正
2009/05/07
Version 3.2.4
修正
・ジェネリッククラスのジェネリック型制約のclassを指定するとジェネリック名が難読化されない問題を修正 
2009/04/06
Version 3.2.3
改善
・名前空間内のクラスが多くなると、解析に非常に時間が掛かっていたのを改善
・情報が多いツリー表示展開に時間が掛かっていたのを改善
2009/02/24
Version 3.2.2
修正
・「アセンブリ外にパブリックなメンバには難読化を行わない」に設定してもPublicクラス内のProtectedのイベントとプロパティが難読化される問題を修正
2008/12/10
Version 3.2.1
修正
・クラスがジェネリック型のインターフェイスを継承していると難読化に失敗していたのを修正
2008/12/08
Version 3.2.0
追加
・難読化後のアセンブリへ再署名を行う機能を追加
2008/12/02
Version 3.1.3
修正
・データラベルがあるフィールドが存在すると難読化に失敗していたのを修正
2008/11/26
Version 3.1.2
修正
・ジェネリックメソッドに2つ以上の制約があると難読化に失敗していたのを修正
2008/11/06
Version 3.1.1
修正
・名前空間の無いクラスが存在すると難読化に失敗していたのを修正
2007/07/18
Version 3.1.0
追加
・難読化指定用の属性 ObfuscationAttribute、ObfuscateAssemblyAttribute に対応
修正
・オーバーライドされたメソッド間で引数とローカル変数で同じ名称を使用していると難読化に失敗することがあったのを修正
2007/06/29
Version 3.0.8
修正
・難読化実行前に「ilasm.exe」「ildasm.exe」の存在を確認するように修正
・コピーしたライブラリを再利用する際にファイルを厳密に比較するように修正
改善
・NanDoKuプログラムへのドロップによる起動に対応
・オブジェクトツリーへのドロップで自動読出しに対応
2007/01/05
Version 3.0.7
修正
・インタフェースの明示的な実装内でイテレータを使用すると難読化に失敗していたのを修正
2006/11/10
Version 3.0.6
修正
・無関係のメソッドがメソッドがオーバーライド関係と誤認識することがあったのを修正
2006/11/07
Version 3.0.5
修正
・.NET Framework1.1アセンブリで名前空間がメンバーを1つだけ持つクラスで構成されていると、コードの解析に失敗していたのを修正
2006/10/23
Version 3.0.4
修正
・ジェネリックメソッドで制約条件があると難読化に失敗していたのを修正
・ジェネリックパラメータを個別に難読化禁止にしたとき保存時にエラーが出ていたのを修正
2006/06/02
Version 3.0.3
修正
・VC++.Netで作成したアセンブリの難読化に失敗していたのを修正
2006/05/03
Version 3.0.2
修正
・プロジェクトに埋め込まれたリソースがあると難読化に失敗するのを修正
2006/04/24
Version 3.0.1
修正
・「アセンブリ外に公開されるメンバーには難読化を行わない」に設定しても protected internal が難読化されていたのを修正
2006/03/20
Version 3.0.0
追加
.NET Framework 2.0アプリケーションに対応
・再コンパイル時のコンパイラの出力を表示するようにした
・単独処理でコンパイル、逆コンパイルを行う機能を追加
修正
・リソースを持つクラスのクラス名、名前空間を個別に名称変更禁止にするとコンパイルが失敗していたのを修正
・文字列にILが出力するオブジェクト名と類似したものがあると文字列が変換されていたのを修正
・名前空間の名称と同一の変数があると正常に難読化できなかったのを修正
・オブジェクト一覧でプロパティ、イベントに関する表示の修正
・変更不可能なメソッド名と同じ名称でオーバーロードしたメソッドを作成したときに実行時エラーが発生していたのを修正
改善
・逆コンパイルのソース解析を変更して名称変更の精度と効率を向上
2005/07/20
Version 2.0.0
追加
・個々のオブジェクト単位での名称変更の禁止機能を追加
・DLLアセンブリに対しての難読化機能を追加
・個々の項目に対して難読化の禁止を追加
・属性に対して一括で難読化の禁止を追加
修正
・変換前に変換後の名称を表示できるように修正
改善
・継承されたメソッドに対しての難読化が実行できなかったのを可能にした
・ソースファイル内の名前の置き換え精度の向上
フリーウェア化
2005/05/07
Version 1.1.1
修正
・参照設定でDLLを使用していると解析に失敗していたのを修正
2004/09/22
Version 1.1.0
追加
・名前候補をランダムに適用する機能を追加
修正
・名前空間の名称が名前空間を含むクラス名の先頭部分と同じ時リソースファイルの名前変換に失敗していたのを修正
・クラス以外のリソースファイルは名前空間の名称を変更しないように修正
2004/07/27
Version 1.0.0
情報
・公開

・掲載記録

翔泳社 の「月刊DBマガジン」2008年 5月号
 「DB関連フリーソフト」に掲載されました
翔泳社 の「月刊DBマガジン」2006年12月号
 「DB関連フリーソフト」に掲載されました


トップページへ移動
The project of U-WA-
http://uwa.potetihouse.com/