Herramienta Firma de archivos (Signcode.exe)
Esta herramienta firma un archivo ejecutable portable (PE), un archivo .dll o .exe, con una firma digital Authenticode. Es posible firmar un ensamblado o un archivo individual contenido en un ensamblado de varios archivos. Si va a distribuir un ensamblado, debería firmar el ensamblado en lugar de los archivos individuales. La ejecución de Signcode.exe sin especificar opciones inicia un asistente que ayuda a desarrollar el proceso de firma.
La herramienta Firma de archivos sólo se distribuye con las versiones 1.0 y 1.1 de .NET Framework SDK. En las versiones posteriores de .NET Framework SDK, utilice la utilidad Herramienta Firma (SignTool.exe).
signcode [options] filename | assemblyname
Parámetros
Argumento | Descripción |
---|---|
filename |
Nombre del archivo PE (ejecutable portable) que se va a firmar. |
assemblyname |
Nombre del ensamblado que se va a firmar. Este archivo debe contener un manifiesto del ensamblado. |
Opción | Descripción |
---|---|
-$ authority |
Especifica la autoridad de firma del certificado, que debe ser individual o commercial. De forma predeterminada, Signcode.exe utiliza el permiso de mayor nivel del certificado. |
-a algorithm |
Especifica el algoritmo hash para la firma, que debe ser md5 (valor predeterminado) o sha1. |
-c file |
Especifica el archivo que contiene el certificado de edición de software codificado. |
-cn name |
Especifica el nombre común del certificado. |
‑i info |
Especifica un lugar para obtener más información sobre contenido (normalmente una dirección URL). |
-j dllName |
Especifica el nombre de una DLL que devuelve una matriz de atributos autenticados para firmar archivos. Se pueden especificar varias DLL repitiendo la opción -j. |
-jp param |
Especifica un parámetro que se va a pasar para la DLL precedente. Por ejemplo: -j dll1 -jp dll1Param. La herramienta sólo permite un parámetro por DLL. |
-k keyname |
Especifica el nombre del contenedor de claves. |
-ky keytype |
Especifica el tipo de clave, que debe ser signature, exchange o un número entero (como 4). |
-n name |
Especifica un nombre de texto que representa el contenido del archivo que se firma. |
-p provider |
Especifica el nombre del proveedor de servicios criptográficos del sistema. |
-r location |
Especifica la ubicación del almacén de certificados en el Registro, que debe ser currentuser (valor predeterminado) o localmachine. |
-s store |
Especifica el almacén de certificados que contiene el certificado de firma. El valor predeterminado es mi (my) almacén. |
-sha1 thumbprint |
Especifica el argumento thumbprint, que es el algoritmo hash sha1 del certificado de firma que se incluye en el almacén de certificados. |
-sp policy |
Establece la directiva de almacén de certificados, que debe ser spcStore (valor predeterminado) o chain. Si se especifica chain, todos los certificados de la cadena de comprobación, incluidos los certificados con firma automática, se agregan a la firma. Si se especifica spcStore, los certificados de confianza con firma automática no se incluyen con los certificados de la cadena que se agregan a la firma. |
-spc file |
Especifica el archivo SPC que contiene certificados de edición de software. |
-t URL |
Indica que el servidor de marca de hora establecerá la marca de hora del archivo en la dirección http especificada. |
-tr number |
Especifica el número máximo de evaluaciones de marca de hora hasta que el resultado sea satisfactorio; el valor predeterminado es 1. |
-tw number |
Especifica el intervalo (en segundos) entre cada evaluación de marca de hora. El valor predeterminado es 0. |
-v pvkFile |
Especifica el nombre del archivo de claves privadas (.pvk) que contiene la clave privada. |
-x |
Establece la marca de hora del archivo pero no lo firma. |
-y type |
Especifica el tipo de proveedor de servicios criptográficos que se utiliza. Un proveedor criptográfico contiene implementaciones de estándares y algoritmos criptográficos. Para obtener una lista de los tipos de proveedor predeterminados, vea "Proveedores de servicios criptográficos de Microsoft" en el SDK de la plataforma. |
-? |
Muestra la sintaxis de comandos y opciones para la herramienta. |
Comentarios
Para firmar con un archivo SPC (certificado de compañía de software), se deben especificar las opciones -spc y -v si la clave privada está en un archivo PVK. Si la clave privada está en un contenedor de claves del Registro, se deben especificar las opciones -spc y -k. Si se desea firmar el archivo con un archivo SPC, éste debe crearse utilizando la herramienta Creación de certificados y la herramienta Prueba de certificados de compañía de software.
Ejemplos
El comando siguiente firma el archivo XYZ.exe
utilizando el certificado de compañía de software XYZ.spc
y la clave privada del contenedor de claves del Registro XYZ
.
signcode /spc XYZ.spc /k XYZ XYZ.exe
El comando siguiente firma el ensamblado myAssembly
con el certificado de myCertificate.spc
y la clave privada de myKey.pvk
.
signcode /spc myCertificate.spc /v myKey.pvk myAssembly
Vea también
Referencia
Herramientas de .NET Framework
Herramienta Creación de certificados (Makecert.exe)
Herramienta de prueba de certificados de compañía de software (Cert2spc.exe)
Símbolo del sistema de SDK