Strumento Nome Sicuro (Sn.exe)

Lo strumento da riga di comando Nome sicuro (Sn.exe) può essere utilizzato per vari scopi quando si gestiscono componenti condivisi. È possibile innanzitutto utilizzare questa utilità per generare una nuova coppia di chiavi pubblica-privata e registrarla in un file:

sn -k <outfile>

È inoltre possibile utilizzare questa utilità per estrarre una chiave pubblica da una coppia di chiavi in un file ed esportarla in un file distinto:

sn -p <infile> <outfile>   

Per estrarre token di chiavi dai file, sono disponibili due ulteriori opzioni (-t e –T). Con il sistema di protezione di .NET Framework, per garantire una maggiore efficienza, vengono memorizzati negli assembly i token delle chiavi anziché le chiavi complete. Un token di chiave è formato dagli ultimi 8 byte (o 64 bit) della chiave.

Lo strumento Nome sicuro può infine essere utilizzato per verificare la coerenza della firma dei nomi sicuri di un assembly:

sn -v[f] <assembly>

È pertanto possibile utilizzare questo strumento per verificare che un determinato assembly sia stato firmato utilizzando un particolare file di chiavi. Utilizzando i file specificati nell'argomento Un componente condiviso, è necessario innanzitutto estrarre la chiave pubblica da OrgKey.snk:

sn -p orgKey.snk pub.snk

È quindi possibile verificare se è stata utilizzata la stessa copia di chiavi per firmare entrambi i componenti, ottenendo gli stessi token di chiavi dall'esecuzione dei seguenti due comandi:

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