Como puedo firmar un control ActiveX con un certificado de firma de código y ser un editor verificada?

StackOverflow https://stackoverflow.com/questions/2814233

Pregunta

Estoy tratando de firmar un control ActiveX con un certificado de firma de código emitido por Thawte. Yo era capaz de firmar con éxito el control utilizando signtool.exe.

Cuando miro a las propiedades del archivo, que dice "El certificado de la firma no se puede verificar."

Cuando veo el certificado que dice "Windows no tiene suficiente información para verificar el certificado."

En la ficha ruta de certificación, que dice "El emisor de este certificado no se puede encontrar."

En Internet Explorer, es reconocido como el certificado firmado, pero el usuario recibe advertencias de que el editor no se verifica.

He intentado crear un archivo PFX único que contiene mi certificado junto con la raíz y los certificados intermedios que a mi cadena de certificado de desarrollador Thawte, y luego volver a firmar el control mediante ese archivo PFX. No dados.

¿Alguna sugerencia?

¿Fue útil?

Solución

La pregunta en realidad contiene los procedure-- correctas hacen la firma mediante un archivo PFX que contiene el certificado raíz, certificado intermedio, certificado de desarrollador, y la clave privada. Asimismo, el uso de un servidor de marca de tiempo. Mi problema era que no tenía el certificado raíz equivocada incluido en mi PFX, por lo que el certificado utilizado para firmar no podía volver a la raíz de la cadena.

Por petición, aquí está la información sobre cómo crear el archivo PFX. El cert2spc y Pvk2pfx que utilizo a continuación también están en el SDK de la plataforma.

cert2spc certpath1.cer certpath2.cer certpath3.cer codesign.spc

Cuando la lista de archivos .cer incluye la raíz, intermedio y certificados de firma de código, y codesign.spc es el archivo de salida. A continuación:

pvk2pfx -pvk privkey.pvk -spc codesign.spc

Running Pvk2pfx de esta manera se inicia un asistente que solicita la contraseña para la clave privada, y la ubicación del archivo de salida, y la frase de contraseña para el archivo de salida.

Por último, signtool hace la firma código real:

signtool sign /f my_certificates.pfx /p my_passphrase /t http://timestamp.verisign.com/scripts/timstamp.dll my_activex_control.ocx

En retrospectiva, podría haber ahorrado tiempo mediante el uso de signcode.exe también conocido como el asistente de firma de código (que creo que es parte del SDK de .NET), que utiliza .spc y archivos .pvk directamente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top