Esta documentación está archivada y no tiene mantenimiento.

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.

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.

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
Mostrar: