Outil Secutil Tool (Secutil.exe)

Mise à jour : novembre 2007

L'outil Secutil Tool extrait d'un assembly des informations sur le nom fort ou la clé publique d'un certificat X.509 et convertit ces données dans un format pouvant être incorporé au code.

secutil [-array | -hex] [-cmode | -vbmode]
{-strongname | -x509certificate} filename 

Paramètres

Argument

Description

filename

Fichier d'assembly contenant une clé publique de nom fort ou un certificat X.509.

Option

Description

-a[rray]

En cas d'utilisation avec l'option -strongname, retourne des informations sur le nom fort comprenant la clé publique sous la forme d'un tableau d'octets, ainsi que le nom et la version de l'assembly spécifié. En cas d'utilisation avec l'option –x509certificate, retourne la clé publique du certificat X.509 sous la forme d'un tableau d'octets dans l'assembly spécifié. Si vous ne spécifiez ni l'option -array ni l'option -hex, la valeur par défaut est alors -array.

-c[mode]

Retourne des informations sur le nom fort ou la clé publique du certificat X.509 dans l'assembly spécifié. Si vous ne spécifiez ni l'option -cmode ni l'option -vbmode, la valeur par défaut est alors -cmode.

--h[elp]

Affiche la syntaxe et les options de commande de l'outil.

-hex

En cas d'utilisation avec l'option -strongname, retourne des informations sur le nom fort comprenant la clé publique sous la forme d'une chaîne codée dans un format hexadécimal, ainsi que le nom et la version de l'assembly spécifié. En cas d'utilisation avec l'option –x509certificate, retourne la clé publique du certificat X.509 sous la forme d'une chaîne codée dans un format hexadécimal dans l'assembly spécifié.

-s[trongname]

Extrait la clé publique de nom fort, le nom et le numéro de version de l'assembly spécifié. Par défaut, la clé publique est retournée dans un format de tableau approprié à une utilisation dans une définition de tableau d'octets en C# ou C++. Pour plus d'informations, consultez les options -array et –cmode.

Les références à des fichiers autres que des assemblys portant des noms forts retournent une erreur.   

-v[bmode]

Retourne des informations sur le nom fort ou la clé publique du certificat X.509 sous la forme d'un tableau exploitable en Visual Basic.

-x[509certificate]

Extrait la clé publique du certificat X.509 dans l'assembly spécifié. Par défaut, la clé publique est retournée dans un format de tableau approprié à une utilisation dans une définition de tableau d'octets en C# ou C++. Pour plus d'informations, consultez les options -array et –cmode.

Seuls les fichiers ayant été signés à l'aide d'Authenticode comportent un certificat d'éditeur Authenticode X.509. Les références à d'autres types de fichiers retournent une erreur.

-?

Affiche la syntaxe et les options de commande de l'outil.

Notes

Si vous ne spécifiez pas d'options de ligne de commande, alors Secutil.exe affiche la syntaxe de commande et les options de l'outil.

Le système de sécurité .NET Framework propose des mécanismes permettant de limiter les actions du code en fonction de la preuve qui y est associée. Deux types de preuves, les noms forts et les éditeurs Authenticode, reposent sur des clés de chiffrement et la technologie des signatures numériques.

Pour pouvoir utiliser ces formes de preuves au cours de vérifications d'autorisations d'identité impératives, vous devez référencer une séquence de données binaires plutôt longue : une valeur de clé publique dans le cas d'un nom fort et un certificat X.509 dans le cas d'éditeurs Authenticode. Exécutez Secutil.exe en spécifiant le nom du fichier d'assembly contenant la preuve que vous souhaitez vérifier. Vous pouvez coller la sortie de l'outil dans le code sous la forme d'une définition de constante. Vous pouvez ensuite utiliser cette valeur de constante pour construire l'autorisation d'identité correcte à vérifier. Pour obtenir des informations sur le mode de construction de ces autorisations, consultez System.Security.Permissions.PublisherIdentityPermission, classe et System.Security.Permissions.StrongNameIdentityPermission, classe.

Exemples

La commande suivante extrait des informations sur le nom fort de myFile et retourne la clé publique dans le format de tableau d'octets par défaut.

secutil -strongname myFile

La sortie de la commande précédente est la suivante :

Microsoft (R) .NET Framework SecUtil 1.0.2310.0
Copyright (c) Microsoft Corp 1999-2000. All rights reserved.

Public Key = 
{ 0, 36, 0, 0, 4, 128, 0, 0, 148, 0, 0, 0, 6, 2, 0, 0, 0, 36, 0, 0, 82,
83, 65, 49, 0, 4, 0, 0, 1, 0, 1, 0, 125, 153, 220, 107, 82, 7, 120, 98,
141, 142, 191, 216, 4, 190, 9, 125, 149, 0, 18, 169, 111, 81, 149, 179,
79, 192, 204, 91, 207, 61, 87, 213, 54, 9, 203, 70, 249, 71, 6, 181, 33,
153, 60, 69, 190, 178, 223, 99, 236, 47, 217, 110, 16, 228, 107, 180, 72,
189, 147, 126, 155, 81, 88, 89, 125, 126, 30, 149, 207, 139, 216, 132,
46, 171, 8, 95, 249, 114, 196, 80, 183, 159, 173, 75, 73, 113, 195, 29,
41, 6, 49, 150, 195, 168, 228, 235, 156, 42, 215, 132, 177, 108, 211, 78,
86, 170, 16, 0, 66, 93, 100, 139, 9, 78, 60, 3, 242, 12, 35, 13, 154, 39,
50, 183, 95, 253, 208, 172 }
Name =
myFile
Version =
1.2.3.4
Success

La commande suivante extrait la clé publique du certificat X.509 dans myHelloFile et le retourne sous la forme d'une chaîne codée dans un format hexadécimal.

secutil -hex -x509certificate myHelloFile 

La sortie de la commande précédente est la suivante :

Microsoft (R) .NET Framework SecUtil 1.0.2310.0
Copyright (c) Microsoft Corp 1999-2000. All rights reserved.

X509 Certificate =
0x308201833082012DA0030201020210B9360877C4B169244F7435304C270D4300D06092A8
64886F70D01010405003016311430120603550403130B526F6F74204167656E6379301E170
D3030313131353030333033385A170D3339313233313233353935395A30223120301E06035
5040313174A6F6527732D536F674776172652D456D706F7269756D305C300D06092A864886
F70D0101010500034B003048024100B7C23E337868D7971CEBB435B68736A6F694AFD50443
147FE18AF26029B2A8FAB3DC014D72195CA64844E26648878B32BABFE06126D1B63233C2D7
A88A38EC170203010001A34B304930470603551D010440303E801012E4092D061D1D4F008D
6121DC166463A1183016311430120603550403130B526F6F74204167656E6379821006376C
00AA00648A11CFB8D4AA5C35F4300D06092A864886F70D01010405000341005690921281BE
823AC4EC33D09ED8A2D04AE052B6022AB6DEEC67E3A6F203051AEDB8C54F3E7280D3983DC3
07560EA934966871ED5D4C9D304AC2553FD24BF3EE
Success

Voir aussi

Concepts

Preuve

Référence

Outils du .NET Framework

System.Security.Permissions.PublisherIdentityPermission

System.Security.Permissions.StrongNameIdentityPermission

Invite de commandes du Kit de développement SDK