ニュートン メニュー

株式会社ニュートン

マイクロソフトパートナー

YouTube公式チャンネル

体験版ダウンロード

製品案内

ライセンスパック

ライセンスについて

カスタマイズ受付

製品購入ガイド

オンラインショップ
直販ショップ !
ニュートンストアで購入
コンポーネントソース
コンポーネントソースで購入

優待販売・
 キャンペーン情報

ユーザサービス
〔サポートページ〕

サポート体制

お知らせ
・ニュースリリース
・懐かCM
・イベント出展
・製品関連記事

会社概要

個人情報保護方針

お問い合わせ先

ニュートンホーム 製品案内
アプリケーション難読化開発ツール
Spices.NET 5J
 

.NETアプリケーション難読化ツール

Spices.NET 5J
【 スパイシーズ ドットネット 5J】

この製品は、2012年9月2日で販売を終了いたしました。
後継製品(Spices.NET JP)の情報はこちらです。


.NET Framework 1.0・1.1・2.0・3.0・3.5・4.0
VB.NET/C#/IL/Managed C++/J#
.NET Compact Framework
Delphi.NET
Visual Studio 2003/2005/2008/2010
対応


chmファイルを開けない場合〕
 

Spices.NET は、権威ある2005年MSD2DのPeople’s Choice賞のCode Tools 部門を受賞しました。

MSD2D の年間 People's Choice 賞(.NET開発者向けの最大オンライン コミュニティ ソース)は、この業界のオスカーと見なされた製品に贈られ、この業界で最も権威ある賞です。

【Q&Aページより抜粋】

Q. 難読化とは何ですか?

A. プログラムコードを解析や解読ができないようにする技術です。逆アセンブルや逆コンパイルされてもそのコードを無意味なものにし、簡単に理解できないように変更します。

Q. どうして難読化が必要なのでしょうか?

A. 難読化をしないと次のような脅威にさらされます。
.NET のプログラムは簡単に理解できる構造をした中間言語(IL)で作成されているので、簡単にリバースエンジニアリングをされてしまいます。
たとえば、ILDASM(逆アセンブラ) や Reflector for .NET(逆コンパイラ) といったツールを使用して、オリジナルに近いソースコードを作成されてしまいます。
ILDASM(逆アセンブラ)/ILASM(アセンブラ)を使用して、ライセンス認証やその他の情報を削除したコードに改ざんすることもできます。また、パスワードなどの「秘密」情報を見つけ出すためにコードを解析することもできてしまいます。

.NET のアセンブリにはクラスやメソッドの名前など色々な情報があります。このためリバースエンジニアリングが簡単に行われアセンブリのソースコードの保護ができません。そこで、「Spices.NET」を使用することにより、ソースコードを確実に保護することができます。

ソースコードを保護することによりたとえば、次のようなリスクを回避できます。
逆コンパイルによるアクティベーション回避や不正ライセンスでの運用
逆コンパイルによるデータベース接続情報の流出
逆コンパイルによるソースコードの不正流用
逆コンパイルによるアルゴリズムの盗用
逆コンパイルによるセキュリティホールの露呈

.NETアプリケーションの逆コンパイルは、無償の逆コンパイラなどを利用していとも簡単に実行できます。逆コンパイルにより、単にコードの内容を知られるだけにとどまらず、パスワードなどのログイン情報やレジストリ名などの文字列も明らかになります。これらを放置するとその危険性がシステム全体におよび、お客様のソフトウェアビジネスに大きな損害を与えかねません。
 
Visual Studioに付属している「Dotfuscator Community Edition」を使った難読化では不十分です、ご存知でしたか?

以下に簡単な検証例を示します。

ビルドツール: Visual Studio 2005 C#
逆コンパイルツール: Reflector NET 5.1 (無償版)

●非難読化の場合
これはVisual Studio でビルドしただけのものです。一般的な開発手順です。ご覧のように、メソッド、関数名、文字列等がそのまま暴露されています。


●Dotfuscator Community Edition (Visual Studio 付属版)を使った難読化
これはVisual Studio でビルドした後に付属の「Dotfuscator Community Edition」で難読化したものです。
Visual Studio に付属の「Dotfuscator Community Edition」ではメソッド、関数名等は難読化されますが、大事な文字列が暴露されています。


●Spices.Net (弊社製品)を使った難読化
ご覧のように当製品を使用すれば、メソッド、関数名等はもちろん大事な文字列も難読化されています。これで、プログラムの安全性は非常に高くなります。


もちろん、文字列は難読化されていても実行時には正しく処理されます。


    *** 上記の比較に用いたコード例 ***
下記のコードは、実際的でない部分がありますが難読化の効果が確認できるようにしたもので、今回のテストに使用しました。

private void button1_Click(object sender, EventArgs e)
{
   string strREG_1 = "";
   string strREG_2 = "";
   string strREG_3 = "";

   SetRegString(ref strREG_1, ref strREG_2, ref strREG_3);

   System.Data.SqlClient.SqlConnection cn =
                              new System.Data.SqlClient.SqlConnection();

   cn.ConnectionString = "Persist Security Info=True;" + "Database=MyDatabase;"
                          + "Server=MyServer;" + "User=MyUser;"
                          + "Password=MyPassword";

   try
   {
      cn.Open();
      MessageBox.Show(cn.ConnectionString, "接続しました。");
      cn.Close();
   }
   catch (Exception ex)
   {
      MessageBox.Show(cn.ConnectionString, "接続文字列");
   }
}

private void SetRegString(ref string strREG_1, ref string strREG_2, ref string strREG_3)
{
   strREG_1 = "CLSID\\{EF80D273-C8B4-439a-920E-EFEB10FEC387}\\secret";
   strREG_2 = "Information";
   strREG_3 = "Importance";
}


※Win32Dll について
下記のコードで実行されるような、Win32のDLLの文字列引数も、もちろん難読化されます。

internal class Win32
{
   [DllImport("Win32test.dll")]
   internal static extern IntPtr
                         Win32DLL_Func([MarshalAs(UnmanagedType.LPStr)]string str);
}

Win32.Win32DLL_Func("Win32のDLLの文字列引数も難読化されます。");



また本製品には、 アセンブリを逆コンパイルして指定したソースコード(VB.NET、C#、IL、Managed C++、J#またはDelphi.NET)に変換する機能もございます。 たとえば、Visual Basicプログラマーが、C#で作成したアセンブリをVB.NETのソースコードとして変換し使用することが可能です。

またこの他にプロジェクトの構造を解析する機能もございますので、本製品を使用することにより最適な設計を施したプロジェクトの作成も可能です。

他社製品との比較表

ここでは、弊社製品「Spices.NET 5J」と、他社製品「DotFuscator Professional Edition」を「Spices.NET 5」の開発元で機能比較した結果と日本語版の価格を掲載しています。

比較項目

Spices.NET 5J

DotFuscator Professional Edition 4.3
価格(税別)

9万4000円〜

85万円〜

アセンブリの表示ツール Assembly browser
(メタデータレベルアセンブリメンバの参照)
・Assembly Investigator
(低レベル
– PE構造、メタデータテーブルでアセンブリを参照する)
・Informer
コンテキストの従属情報(アセンブリブラウザで選択した情報)を取得する
なし
メンバの検索 メンバの検索がどこでも可能(名前での検索、トークンでの検索)。
この機能は例外スタックトレースの解析を迅速に行えます。
なし
プロジェクトとソリューション Spices.ProjectSpices.Solution。
たとえばLight, Pro, Enterprise といった、1つの製品のさまざまなパッケージを難読化するためのSpicesProjectsのコレクション。開発環境で使用可能な形式、カスタムビルドタスクをスクリプトで開きます。
Spices.Projectと似ていますが柔軟性が無く、一般的な形式です。
Decompiler Spices.DecompilerVisual DecompilerSpices.Modelerの機能を使用します)。
アセンブリを逆コンパイルしてC#、VB.NET、IL、J#、C++またはDelphiのソースコードを生成することができます。
なし
ダイアグラムの作成 Spices.Modeler(さまざまな種類のダイアグラムを作成する機能) なし
プラグインシステム Spices.NETには簡単に新しいプラグインを利用できるプラグインシステムがあります。 なし
プラグインの統合、プラグイン同士の相互サービス Spices.NET環境へのプラグインの統合、プラグイン同士の相互サービス。 なし
Dotfuscatorはプラグインシステムではありません。
Visual Studioとの統合 「Spices.VSIP.Obfuscator」で Visual StudioVS2010/VS2008/VS2005/VS2003 のIDEとの統合をサポートしていますまた複数のMSBuildのタスクを提供します。

※2010/06/30 公開のバージョン 5.8.0.9より VS2010 の IDE に統合できます。Visual Studio .NET 2003でご利用の場合は、旧バージョン(5.4.6.0以下)をご利用ください。

同様な機能がありますが、Visual Studio .NET 2003のIDE統合はサポートしていません。
ユーザインターフェイス リッチなGUI シンプルなGUI
アセンブリのロード、コンパイル、リンク 難読化の後にアセンブリをロードしたりコンパイルするための独自のエンジンがあります。Linuxもしくは.NETの他のOSのポートに簡単に移植できます。 (アセンブリを処理する)ILDASMや(アセンブリをコンパイルしてリンクする)ALinkユーティリティに依存。
文字列の暗号化 文字列を暗号化するためのアルゴリズムがあります。このアルゴリズムは独自のもので、より安全で、暗号化は3つのモードがあり、とても柔軟です。(絶対とは言い切れませんが、)文字列の暗号化はデコンパイラから認識されません。プロテクトした文字列の安全レベルを強化するためにAnonymizer機能を使用することによって文字列の暗号化の安全性を強化することができます。 文字列の暗号化はありますが、柔軟性は無く、メタデータ内の暗号化された文字列を簡単に検索されてしまいます。
Anonymizer Anonymizer機能(特許申請中)。
Spices.Anonymizerは、ILコードをスクランブルするので、ILコードを逆コンパイルや逆アセンブルしてできたコードは全く再利用することができなくなります。
似たようなものはありません。
アンチタンパリングシステム アンチタンパリングシステムを実装しています。(特許申請中)。
厳密名付きのアプリケーションの作成した場合、デジタル署名によってアセンブリを改ざんから防止できますが、それでも元のデジタル署名を削除して別のもので再署名することができます。しかし、この技術を使用すれば改ざんされたアプリケーションを使用できなくすることができます。
似たような機能があるように思われますが、この根本的な問題解決には至らないようです。
Optimizer メタデータやアセンブリのパフォーマンスの最適化をおこないます。 同様な機能があります。
難読化設定の検証 難読化を行う前の難読化設定の検証ができます。 なし
アセンブリの検証 作成されたアセンブリの検証ができます。 なし
スクリプト環境での使用 スクリプト環境で使用するためのエンジン(プロジェクトの作成、プロパティの指定、タスクの実行、出力)があります。
たとえば、Console Editionは、スクリプト(JSおよびVBS)やコマンド(CMD およびBAT)ファイル から実行できます。
なし
MSBuildの統合 MSBuildの統合には難読化のタスクだけでなく複数のタスクが用意されています。 難読化のタスクのみ
マルチタスク Multitasking – Spices.NETで複数のタスクを実行でき、実行(停止、終了、再開タスク)プロセスを制御できます。 なし
アセンブリの解析 難読化の後にアセンブリの解析(参照、検索)が行えます。 なし
ローカライズ ローカライズ機能により各国言語別に文字列を設定して難読化が出来ます。 なし
概要
Spices.Obfuscator

プログラムを難読化することによって、「Reflector for .NET」などの逆コンパイルツールから、作成したアセンブリのソースコードを守ります。以下に主な機能を列挙します。

機能 内容
マルチタスク タスクを別々のスレッドで実行したり、実行するタスクの優先度を指定できます。TaskListで実行をモニターしながら次のタスクにとりかかることができます。
ローカライズ Spices.ObfuscatorにはSpices.Localizerというモジュールが含まれています。これはアプリケーションをローカライズするために、Localizerで作成したnrlocファイルを使用 します。
難読化処理でアプリケーションをローカライズするためには、Spices.Projectビルドの難読化オプションでnrlocファイルとローカライズ言語を指定 します。
自動化 Spices.Obfuscatorは、難読化処理を自動化することができます。Spices.ObfuscatorのConsole Editionは、スクリプト(JSおよびVBS)やコマンド(CMD およびBAT)ファイル から実行できます。またスクリプトからSpices.ProjectオブジェクトやSpices.Solutionオブジェクトを使用することができます。 製品には、Spices.ObfuscatorのGUI、Spices.Obfuscatorのコンソール エディション、自動化のサポートモジュールが含まれています。
Obfuscation Events
(難読化イベント)
ObfuscationEventsは、難読化処理の流れの中に必要なファイルのビルドの準備、展開や記述など他の命令を含めることができます。
ObfuscationEventsは、Spices.ProjectとSpices.Solutionの両方でサポートされています。
Code Flow Obfuscation
(コードフローの難読化)
Spices.Obfuscatorは、特許出願中のSpices.Anonymizerを使用しています。これは、逆コンパイルや逆アセンブルした後でILコードを完全に再利用できなくなるように暗号化する機能です。
アセンブリの検証 Spices.Obfuscatorは、PE、メタデータ、ILについての生成したアセンブリを検証します。
アセンブリの最適化 Spices.Optimizerはメタデータやアセンブリのパフォーマンスの最適化をおこないます。
VS2003 と VS2005との統合 Spices.Netは、Visual Studio 2003 と MS Visual Studio 2005 に統合して使用できます。
MSBuild プラットフォームとの統合 Spices.Obfuscatorは、MSBuildと統合して使用できます。MSBuildは、新しい拡張可能なXMLベースのビルド エンジンです。
難読化されなかったメソッド名の変更 新機能のSpices.Anonymizerは、難読化されなかったメソッドを別の名前に置き換えます。
外部参照の偽装 Spices.Anonymizerは、参照された型やメソッド、フィールドへの呼び出しを偽装します。
Spices.Solution Spices.ProjectのオブジェクトをSpices.Netにロードする新しいオブジェクトです。プログラムはいろいろな構成やパッケージで提供されている場合がありますが、Spices.Solutionは、 これらの構成やパッケージをひとつのソリューションとして作成し、一度に難読化します。
Spices.Obfuscatorの難読化 もちろん、Spices.Net自身、Spices.Obfuscatorで難読化されています。
.Net フレームワークのサポート Spices.Obfuscatorは、.Net フレームワーク(1.0、1.1、2.0、3.0、3.5、4.0、Compact Framework)をサポートします。
全アセンブリ型および言語のサポート Spices.Obfuscatorは、C#、VB.Net、Delphi.Net、managed C++によるアセンブリをサポートします。
強力な増分難読化 Spices.Obfuscatorは、強力な増分難読化(インクリメンタルな難読化)をサポートします。アセンブリの構造体が変わっても、メンバ名はそのままです。
AntiILDASM機能 Anti ILDASM機能は、プロテクトされたアセンブリをロードする際に、ILDASMや他のほとんどの逆コンパイラをクラッシュします。Spices.Obfuscatorは、 保護されたアセンブリをSpices.Decompilerによる逆コンパイルから守るためにNotDecompile属性を組み込んでいます。
文字列の暗号化 Spices.Obfuscatorは、文字列を隠蔽して暗号化し、この情報の取り出しや逆アセンブルが非常に困難な見えない小さなヒープとしてILコードに埋め込みます。

サポートしているモードは次の3つです。

  • Hide (暗号化せずに文字列を隠します)
  • Encrypt (内部の暗号化実装を使用して文字列を暗号化します)
  • 3DES (TripleDES アルゴリズムを使用して文字列を暗号化します)

Spices.Anonymizerは、可読化を防ぐために文字列の呼び出しを偽装します。

タンパープルーフのアセンブリの作成
(改ざんを防止するアセンブリの作成)
この技術は、文字列とバイナリーリソース(ユーザー文字列とコードで使用するバイナリー配列)を暗号化するもので、特許を取得しています。これは覗き見や変更からアセンブリを保護します。
相互難読化 Spices.Obfuscatorは、相互難読化(難読化されたアセンブリのメンバは、参照されているアセンブリも難読化されます)をサポートしています。これは全アセンブリを1つに結合するより 良い方法ですが、保護の程度は同じです。
Spices.Obfuscatorは、フレンドアセンブリを自動的にサポートします。
カスタマイズ可能な難読化オプション Spices.Project (.iloprj)に含まれる各アセンブリには、難読化を制御するいろいろなオプションがあります。
難読化ルール 難読化オプションは、アセンブリメンバの型を含めたり除外したりするルール(ObfuscationOptions.Members)を指定します。
また、Obfuscation.Membersには事前に決められた構成ルールもあります。
属性ベースの難読化 Spices.Obfuscatorは、属性をベースにする難読化をサポートします。
ソースコード(C#、 VB.Net、 Delphi)にObfuscate、NotObfuscate、DontEncryptStrings、SpecialNamespace、SpecialName、NotObfuscateMembersなどの難読化の属性 を設定します。
厳密名のサポート Spices.Obfuscatorは厳密名のアセンブリをサポートしており、厳密名のキーファイルが定義された場合、難読化の後でアセンブリを再署名します。
名前付けの規約 Spices.Project (.iloprj)に含まれるアセンブリにはそれぞれ個別の難読化オプションがあるので、次の9つの名前付け規約から1つを選ぶことができます:Numbers、Alphabetical、AlphaNumeric、 NonDisplayable、CustomAndNonDisplayable、AlphaNumericAndCustom、 AlphaNumericAndNonDisplayableAndCustom、AlphaNumericAndNonDisplayable、 CustomDictionary。
NonDisplayableを使用する場合、ILDASMまたは他のアセンブリ ブラウザは、正確にアセンブリ名を表示しません。
オーバーロードの名前変更 Spices.Obfuscatorは、独自のShrinkNames機能を使用して名前の長さを短縮します。これは、メタデータの文字列ストリームのサイズを大幅に減らし、より小さいアセンブリを作成することができるDoublePackString機能を改良したものです。
除外と置換 Spices.Obfuscatorは、一般的な表現でアセンブリメンバを手動で難読化したり除外することができます。
アセンブリの圧縮と最適化 Spices.Obfuscatorは、メタデータのサイズを(45%まで)減らし、アセンブリのサイズを最適化してアセンブリの性能を向上させます。
デバッグのサポート Spices.Obfuscatorは、デバッグ可能なアセンブリを作成します。
デバッグ情報の除外 Spices.Obfuscatorは、難読化されたアセンブリからデバッグ情報を除外することができます。
スタック トレースの解読をサポート Spices.Obfuscatorは、スタック トレースの解読ツールを提供しています。
ソフトウェア ウォーターマーク(透かし) Spices.Obfuscatorには、ソフトウェアのウォーターマーク(透かし)機能があります。ソフトウェアのウォーターマークをNineRays.Obfuscator.SoftwareWatermark属性の難読化されたアセンブリに埋め込 むことができます。ソフトウェアは、この属性を簡単に認識することができ、この属性のWatermarkプロパティからソフトウェアのウォーターマークを取り出すことができます。
コンソール インターフェイス Spices.Obfuscatorには、NAntやVisual StudioのBuildイベントなどバッチ/自動ビルドで使用可能な独立したコンソール機能があります。Spices.Obfuscatorのコンソール 機能には、Spices.Obfuscatorの全ての機能があります。
独自のアセンブリ ビルダ Spices.Obfuscatorは、オリジナルのアセンブリと互換性のあるアセンブリを生成する独自のアセンブリ ビルダを使用します。
ilasm-ildasmのラウンド トリップは必要ありません。アセンブリ ビルダがすべての作業を処理します。
独自のメタデータ アクセス エンジン Spices.Obfuscatorは、C#、managed C++、Vb.Net、J#,、C# Builder、Delphi.Netで生成された.Netアセンブリ とモジュール(.Net 1.0、1.1、2.0、Compact Framework.Net)で動作可能な、独自のメタデータ アクセス エンジンを使用しているので、アセンブリの構造に悪影響を及ぼすことはありません。
IDEの統合 Spices.VSIP.Net (Visual Studio Integration Package)バージョンでは、Spices.Obfuscatorは、Visual StudioのIDEから使用が可能です。

【難読化されていないアセンブリを逆コンパイルした例】

※この例は、検証用の逆コンパイラとしてRed Gate Software社の「Reflector for .NET(英語版のみ)」無料版を使用しています。

ここでは、 難読化されていないためソースがそのまま表示されています。

【難読化されたアセンブリを逆コンパイルした例】

※この例は、検証用の逆コンパイラとしてRed Gate Software社の「Reflector for .NET(英語版のみ)」無料版を使用しています。

ここでは、難読化されことで文字列やプロシージャ名などが無意味な情報に変わっています。

Spices.Decompiler

アセンブリを逆コンパイルしてC#、VB.NET、IL、J#、C++またはDelphiのソースコードを生成することができます。

生成されるコードは、強調構文、インデント、折りたたみ表示(アウトライン表示)、アクティブヒントなどをサポートしています。

アセンブリやプロジェクトの構造をあらわすコードフローダイアグラムを構築することにより、その階層構造を解析し設計上のバグなどのエラーの発見に役立ちます。

機能 内容
複数言語での逆コンパイル/逆アセンブル Spices.Decompiler は、MSIL、C#、VB.Net、Delphi.Net、J#、マネージドC++ の言語でコードを生成します。
整形、最適化されたコード Spices.Decompiler は、強調構文、インデント、折りたたみ表示(アウトライン表示)、アクティブヒントをサポートした、整形されたコードを生成します。
独自のメタデータアクセスエンジン Spices.Decompiler は、不正なMSILでクラッシュしない独自のメタデータアクセスエンジンを使用します。
Visual Decompiler Visual Decompiler は、Spices.Net の重要な機能の1つです。コードフローダイアグラムを構築することにより、実行コードが解析できます。
.Net 2.0 のサポート Spices.Decompiler は、.Net 2.0 をサポートします。
逆コンパイル/逆アセンブルの範囲 逆コンパイルの範囲をアセンブリブラウザで選択できます
逆コンパイルするメンバの複数選択 逆コンパイルするメンバを複数選択できます。
アセンブリ全体の逆コンパイル 全てのアセンブリを逆コンパイルし、リソース情報とアセンブリ情報の取得ができます。
最適化/リファクタリング Spices.Decompiler は、最適化されていない(生の)コードや最適化された(リファクタリングされた)コードを作成できます。
アクティブ ヒント メンバに関する詳細情報をマウスのカーソルの位置にアセンブリブラウザで表示することができます。
コードのアウトライン表示/折りたたみ表示 コードのアウトライン表示/折りたたみ表示が全言語でサポートされています。
すべての修飾子のサポート Spices.Decompiler は、すべての修飾子をサポートしています。
全キーワードのサポート Spices.Decompiler は、すべてのキーワードをサポートしています。
複雑な入れ子構文 Spices.Decompiler は、反復文(for、while、foreach)、条件文(if、else if、 if-else if-else)、スイッチ文など、複雑な構文を認識します。
変数の配置 Spices.Decompiler は、変数を使用範囲内に配置します。
変数名の取り出し Spices.Decompiler は、(可能な場合).PDBファイルから変数名を取り出します。
COM/Interop/アンマネージド コード Spices.Decompiler は、COM/Interop/アンマネージド コードを逆コンパイルします。
危険なコード、ポインター Spices.Decompiler は、ポインタとともに危険なコードを示します。
カスタム属性 Spices.Decompiler は、カスタム属性に関する全情報を取り出します。
メソッドのオーバーロード、インターフェイス実装、オーバーライドの認識 Spices.Decompiler は、メソッドのオーバーロード、インターフェイス実装、オーバーライドを認識します。
属性のサポート Spices.Decompiler は、属性をサポートします。
IDEの統合 Spices.Decompilerは、Spices.VSIP.Net (Visual Studio Integration Package)の一部として Spices.Net と Visual Studio に完全統合されています。

【コードフローダイアグラム】

Spices.Documenter
Spices.Documenter は、コードに関連するドキュメントの作成および管理を行います。 プロジェクトのコードのドキュメンテーションを作成し、XML (/doc) 形式にエクスポートすることもできます。
機能 内容
GUIの利点 Spices.Documenterで提供されるGUIは、コードのドキュメンテーションの閲覧やナビゲート、ブックマークへのトピックの表示/追加が行えます。

コード コンプリート機能は、ドキュメントを入力すると文章の前後にドキュメント タグを追加するのでドキュメントの編集に役立ちます。

Spices.Documenterで提供されているさまざまなサービスにより、入力、書式、他のトピックへのリンク付け、などが行えます。

ソースコード外でのドキュメンテーションの管理 Spices.Documenterは、ソースコード外でのコードのドキュメンテーションの管理ができます。
データのインポート、結合、取り出し Spices.Documenterは、既存のxmldocをインポートして、アセンブリのメタデータからアセンブリメンバの記述を取り出すことができます。また、ドキュメンテーションを結合したり更新することもできます。
1つのファイルに全ドキュメントを入れる Spices.Documenterは、ドキュメンテーションの管理を簡素化するために複数のアセンブリに関する全ドキュメンテーションを1つのファイルに保存します。
互換性の利点 Spices.Documenterの.nrdoc形式は、xmldocと互換性があります。インクルードタグを使用して、これらの形式のさまざまなファイルから、ドキュメンテーションの一部を結合することができます。

Spices.DocumenterはNDocの指定タグを使用できます。また、ドキュメンテーションをXmlDoc (/doc)と別のNDocの互換形式にエクスポートできます。

トピックの管理 Spices.Documenterは、プロセスから特定のトピックを除外することができます。
ドキュメンテーションの同期 Spices.Documenterは、ドキュメンテーションと該当するアセンブリの最新版を同期するサービスを提供します。新規/変更トピックは、トピックの処理がし易いようにTODOとして表示されます。

Spices.Informer
アセンブリメンバに関する情報を取得し、アセンブリの解析に便利な機能を提供します。

トークンの情報、実装および継承されたインターフェイスなど、プロジェクトに関するさまざまな情報やプロジェクトのアセンブリメンバの使用状況などを把握することができます。この機能はプロジェクトの最適化を行うもので、全く使用されていないメンバを発見してプロジェクトから削除することができます。
実装や継承されたインターフェイスの階層構造を表示したり、プロジェクトを最適化することができます。

機能 内容
使用利用状況の取得 プロジェクトメンバの使用状況や、アセンブリメンバの使用に関する詳細な情報の表示ができます。また使用されていないメンバの表示もできます。これにより、プロジェクトの最適化が行えます。
メンバの完全な詳細の表示 アセンブリメンバの詳細な情報が表示できます。情報の閲覧や検証ができます。
トークン情報の表示 すべてのアセンブリのトークンに関する情報を持っています。トークンを選択するだけで、その全詳細が表示されます。
実装の表示 カレントのプロジェクトに実装されているすべてのインターフェイスの階層構造を表示します。
継承の表示 カレントのプロジェクトに継承されているすべてのインターフェイスの階層構造を表示します。

【継承されているインターフェイスの表示】

Spices.Modeler

要素の関係を示すプロジェクトのダイアグラムを構築することができます。これにより、プロジェクトの階層構造を解析し、設計上の欠陥が発見しやすくなります。また、デバッグやトレースに使用することもできます。

機能 内容
プロジェクトの可視化 プロジェクトの関係を視覚的なダイアグラムで構築します。色々な種類のモデル(アセンブリの従属性、関係、実装、継承など)を構築するために、あらかじめ定義されたさまざまなモデルテンプレートを選択できます。
ライブ モデル モデルの要素の処理(展開、ズームイン/アウト、移動、サイズ変更、レイアウトの変更、書式設定)を行うことができます。
完全な再利用性 ダイアグラムを変更して必要に応じて調整したら、テンプレートとして保存して他のプロジェクトで使用することができます。XML形式で保存してあるダイアグラムのロード。
完全な移植性

 

ダイアグラムを一般的なイメージ(ラスタまたはベクタ)やXML形式にエクスポートできるので、ユーザーズガイドやプレゼンテーションなどの作成に使用できます。モデルを好きな用紙サイズに印刷して、レポート、ドキュメンテーション、再配布に含めることができます。
拡張ナビゲーション オブジェクトがどこに属しているかを容易に認識できるように、オブジェクトや関連する階層構造のリンクを強調表示します。これをもとにダイアグラムのナビゲートを行ってください。

Spices.Investigator
ヘッダー、メタデータ、メタストリームなど低レベルのアセンブリ情報が取得でき、バイナリでアセンブリ データを表示することができます。
プロジェクトのバイナリコードを簡単に検証できます。これは、プロジェクトを逆アセンブルする場合や、効果的なコンパイルを確認する場合に役立ちます。


Spices.VSIP.NET, Spices.VSIP.Obfuscator
Spices.VSIP.NET SuiteとSpices.VSIP. Obfuscator は Visual Studio のツールメニューに組み込んで使用できます。(VSIP:Visual Studio Integration Package)

Obfuscatorの種類
Spices.VSIP.NET SuiteとSpices.VSIP. ObfuscatorはVisual Studio のツールメニューに組み込んで使用できます。
 

機能

Spices
.VSIP.Obfuscator
Spices
.Obfuscator
Spices
.Obfuscator Console
コンソールモードでの使用(コマンド ライン)
Spices.NET(スタンドアロン)  
Visual Studio への組み込み
VS2010/VS2008/VS2005/VS2003 対応
※VS2003は旧バージョン「5.4.6.0以下」 で対応
   
MSBuildの統合    
Spices.Anonymizer
Spices.Optimizer
文字列の暗号化
単一アセンブリの難読化
自動化    
Spices.Projectのサポート
Spices.Solutionのサポート
難読化のイベント
製品構成と価格(1PCライセンス)
  Edition 内容 標準価格
単体
製品
Spices.Obfuscator 5J
【スパイシーズ オブファスケータ】
・Spices.Obfuscator
(アプリケーションツールで起動)

・Spices.Obfuscator Console Edition
(コンソールウィンドウでの使用)
166,000円
(税込 174,300円)
Spices.VSIP.Obfuscator 5J
【スパイシーズ VSIP オブファスケータ】
・Spices.VSIP.Obfuscator
(Visual StudioのIDEに組み込み)

・Spices.Obfuscator
(アプリケーションツールで起動)

・Spices.Obfuscator Console Edition
(コンソールウィンドウでの使用)
214,000円
(税込 224,700円)
Spices.Obfuscator Console 5J
【スパイシーズ オブファスケータ コンソール】
・Spices.Obfuscator Console Edition
(コンソールウィンドウでの使用)
94,000円
(税込 98,700円)
Spices.Decompiler 5J
【スパイシーズ デコンパイラ】
・Spices.Decompiler
・Spices.Modeler
・Spices.Informer
・Spices.Investigator
・Spices.Documenter
166,000円
(税込 174,300円)
スイート

製品

Spices.NET Suite 5J
【スパイシーズ ドットネット スイート】
■Spices.Obfuscator 5J
■Spices.Decompiler 5J
286,000円
(税込 300,300円)
Spices.VSIP.NET Suite 5J
【スパイシーズ VSIP ドットネット スイート】
(Visual StudioのIDEに組み込み)
Spices.VSIP.Obfuscator 5J
Spices.Decompiler 5J
334,000円
(税込 350,700円)

「1PCライセンス」は1台のPCにインストールしてご利用いただくライセンスです。開発者単位のライセンスではありません。たとえば、1人の開発者が2台のPCにインストールする場合は2PC分のライセンスが必要です。
なお、1台のサーバにインストールして各クライアントから使用する場合は各クライアントにもライセンスが必要です。

複数ライセンスパックはございませんので、1PCライセンスを必要数分お求めください。
動作環境
.NET Framework 1.0・1.1・2.0・3.0・3.5・4.0/VB.NET/C#/IL/Managed C++/J#/.NET Compact Framework/Delphi.NET/Visual Studio 2003/Visual Studio 2005/Visual Studio 2008/Visual Studio 2010

VC++で作成された64ビットアプリケーション(CLR)の難読化には対応しておりません。
製品内容

パッケージ版
セットアップCD-ROM/ユーザ登録カードなど
(マニュアルなどのドキュメントはCD-ROMに含まれます)
▼パッケージイメージ
サイズ:W136×D15×H191mm(CDトールケース)

ダウンロード版
セットアップモジュール、ドキュメントデータなど

開発元:ロシア Nine Rays社
日本語版開発&国内独占販売元:株式会社ニュートン

※表記中の社名、製品名などは一般に各社の商標または、登録商標です。
※本仕様、及び価格などは予告なしに変更する場合があります。

Copyright (C) NEWTONE Corporation. All rights reserved.