Share via


厳密名ツール (Sn.exe)

厳密名コマンド ライン ツール (Sn.exe) は、共有コンポーネントを操作する場合に、いくつかの目的のために使用できます。まず、このユーティリティを使用して、新しい公開キーと秘密キーのペアを作成し、そのペアをファイルに書き込むことができます。

sn -k <outfile>

また、このユーティリティを使用してファイル内のキー ペアから公開キーを抽出し、個別のファイルにエクスポートすることもできます。

sn -p <infile> <outfile>   

その他のオプションとして -t–T があり、これらを使用して、ファイルからキー トークンを抽出できます。.NET Framework のセキュリティ システムでは、効率化を高めるために、完全なキーを格納するのではなく、キー トークンをアセンブリに格納します。キー トークンは、キーの最後の 8 バイト (64 ビット) で構成されています。

最後に、厳密名ツールを使用して、厳密な名前による署名が一致しているかどうかを確認することで、アセンブリを検証できます。

sn -v[f] <assembly>

このように、このユーティリティを使用すると、特定のアセンブリが特定のキー ファイルを使用して署名されたかどうかを確認できます。「(4) 共有コンポーネント」のトピックに示したファイルを使用する場合は、まず、OrgKey.snk から公開キーを抽出する必要があります。

sn -p orgKey.snk pub.snk

そして、次のコマンドの両方から同じキー トークンを取得することで、同じキー ペアによって両方のコンポーネントが署名されたかどうかを検証できます。

sn -t pub.snk
sn -T reverser.dll