厳密名ツール(Strong Name Utility)の使い方

アセンブリに署名するためのキーを生成するには、sn.exe(厳密名ツール)を使用します。

私の環境では、C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin以下にsn.exeが 配置されていました。

公開キーと秘密キーのペアを作成

アセンブリに署名するために必要なファイルを作成します。

sn.exe -k bnote_key.snk

sn.exeに「-k」オプションとキーが保存されるファイル名を指定します。sn.exeを実行すると 指定したファイルに公開キーと秘密キーの両方が書き込まれます。

署名をアセンブリに適用するには、[プロジェクト] メニューの [プロパティ] をクリックし [署名] タブをクリックします。[アセンブリの署名] チェックボックスをチェックし、 sn.exeで作成したファイルを指定します。

プロジェクトのプロパティ

公開キーをファイルに取り出す

秘密キーと公開キーの両方が無くても開発に支障が無いように、公開キーのみで 作業を行う方法があります。これを「遅延署名」と言います。

遅延署名には、公開キーが必要となるためsn.exeを使って公開キーをファイルにします。

sn.exe -p bnote_key.snk public_bnote.key

sn.exeに「-p」オプションを指定することで公開キーのみをファイルに出力します。

公開キーと公開キートークンを表示する

「-p」オプションで出力されたファイルから公開キーと公開キー トークンを表示します。

sn.exe -tp public_bnote.key