Hola,
Bueno. Una cosa más. Antes mencioné que Windows 10 muestra cierto diálogo si el usuario descarga un archivo ejecutable Propuse como posible solución comprimir dicho ejecutable en un zip y dejar que sea esto lo que se descargue. En efecto, esta solución parece funcionar. De alguna forma, Windows 10 "marca" los ejecutables descargados, pero, no así los archivos zip. Cuando el usuario descomprime y ejecuta el archivo ejecutable contenido en el zip, Windows muestra un diálogo de advertencia, pero, este incluye ya el nombre del certificado del ejecutable. No así el mensaje de advertencia cuando se descarga un archivo ejecutable, que, obliga además al usuario a pulsar un botón "Más información" para poner ejecutar el programa. |
Gracias por compartir ese detalle.
Una anotación por el tema de la firma de tiempo. Si usas signtool.exe para la firma mira la opción para indicar una marca de tiempo al programa. Solo hay que añadir un parámetro a (o similar): "C:\Archivos de programa\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" /t http://timestamp.verisign.com/scripts/timstamp.dll Por cierto, lo he probado en Windows XP y se verifica correctamente. |
#:-)#
Muchísimas gracias, David. Les has ahorrado cientos de horas de trabajo a buena parte de la comunidad de programadores (incluyendo a personal de la empresa donde laboro). :) |
Hola,
Cita:
Cita:
|
¿A qué se refieren con la marca de tiempo del programa?
// Saludos |
Hola,
Cita:
|
¡Perfecto! Ya entendí :)
// Gracias |
Muchas gracias.
Tengo que leer todo con calma, ya que es algo que también deseo hacer. ^\||/:) |
Hola,
¡No hay de qué! Si tenéis cualquier duda no dejéis de postearla por aquí: entre todos veremos de ayudar. :) |
Yo sí tengo una pregunta: ¿la señorita que te llamó de California, te habló en inglés o español? :) :p
// Saludos |
Hola,
Je je je... Me habló en inglés, a lo que yo, obviamente, y, haciendo gala de mi superior intelecto, respondí: ¡Sí! ¿Dígame? Y luego, balbuceando, lo segundo que le dije de algo así como "I am, I am David", digo, lo segundo que le dije fue "Sorry, my english is very poor, hope you can understand...". A lo que ella respondió con un "No problem, it's fine" (léase "it's fine" como "vale, no pasa nada") y, en fin, terminamos la conversación como mejor pudimos. :D |
Ayuda para generar el fichero PFX
Hola David,
Ante todo muchas gracias por esta explicación. Como mi inglés es muy malo, a ver si me puedes aclarar algunas cosillas. He pedido el certificado y ya lo tengo de clase 2, me he bajado un archivo de startssl desde mi panel de control, el nombre del fichero es: sub.class2.code.ca.pem, ahora genero una clave privada como comentas y se crean dos ficheros .CSR Y .KEY luego en el panel de control de startssl pulso la opción de Create PKCS#12 (PFX), meto el contenido del fichero CSR y abajo el del fichero .pem pero me da error: Error Creating PKCS#12 (PFX) The private key and certificate modulus don't match. Make sure to enter the corresponding private key for this certificate. He probado con el fichero .Key también y nada de nada, como puedo generar el fichero PFX?. Muchas gracias. |
Hola miado,
No soy un experto y tampoco recuerdo muy ahora mismo los pasos que seguí exactamente, pero, vamos a si podemos ayudarte. No estoy seguro de si estás descargando el archivo correcto desde StartSSL, puesto que el que yo descargué tiene este nombre: "StartSSL_Personal_Certificate.p12". Ese es el certificado que me conecta a StartSSL y con el que puedo acceder al panel de control En el "Certificates Wizard", asegúrate de que seleccionas la opción "Object code signing certificate" y luego sigue los pasos. En este punto ya necesitarás el archivo CSR (Certificate Signing Request) creado con OpenSSL para Windows. Creo que completando los pasos del "Wizard" obtendrás directamente el archivo PFX, es decir, este archivo se descargará al terminar el "Wizard". Sigue esos pasos y cuenta qué tal va. P.D. No recuerdo ni tengo guardado ningún archivo "sub.class2.code.ca.pem", de modo que por eso pienso que igual no has empezado con el "Wizard" adecuado... a no ser que... tal vez ese archivo ".pem" contiene una clave privada: pero no recuerdo ahora mismo si hay que usarla en el proceso del "Wizard" o no... lamento de veras no tener más memoria para ayudarte mejor. |
Solucionado
Pues nada, al final como bien indicabas, me he metido en el "Wizard" del citado panel de control y he seleccionado "Object code signing certificate" como también comentas, me ha pedido la key que he puesto la que había generado con fichero.key y la password, seguidamente me ha salido un mensaje que pasaba a validación, al cabo de un par de horas he recibido un correo que estaba autorizado y verificado con un link a mi panel de control, tenía que pulsar en la opción del panel de control Retrieve Certificate, al pulsar ahí me ha salido un texto que es el certificado encriptado lo he guardado en un txt y luego seguidamente he acudido a la opción del panel de control Create PKCS#12 (PFX) he puesto como key el texto del fichero.key y en certificado este último texto que he recibido, seguidamente la password del fichero.key y me ha dejado bajar un fichero .p12, a este fichero .p12 le he cambiado la extensión a pfx y con un programa que me bajé llamado ksign.exe le metes el ejecutable o los ejecutables que quieras y el fichero pfx y le das al botón y listo!!!! ya está.
Me queda una última duda, no se vosotros como lo haceis. Yo hago el instalador con inno setup, que te genera el .exe y dentro del instalador está el fichero exe de Delphi, yo he metido el certificado en los dos, es decir en el instalador y en el ejecutable Delphi que luego va dentro. Es necesario realizarlo así? Muchísimas gracias por toda esta información ya que llevaba mucho tiempo intentado firmar una aplicación. |
Hola,
Cita:
Cita:
Sin embargo, es posible configurar Inno Setup para que firme el instalador, y, de hecho es recomendable, no sólo porque nos ahorra el segundo archivo BAT, pero, también porque, haciéndolo de este modo, Inno Setup se encargará de firmar el instalador y también el ejecutable del desinstalador. Cita:
|
y al final igual
Nada, después de firmar los ejecutables e instalador correctamente, veo que el navegador Chrome al bajar alguno de mi web indica que es un fichero que no se descarga habitualmente y lo marca como peligroso, cuando está analizado y verificado que no contiene virus ni nada por el estilo y una vez que puedes marcar la opción de guardar al ejecutarlo en Windows 10 lo bloquea igualmente y tienes que pulsar en "mas información" para poder ejecutarlo, esto ya es algo preocupante pues muchos clientes no ven esa opción.
Lo hábeis solucionado alguno de alguna manera? Qué se puede hacer ante esto? |
Hola,
Yo creo que nuestro trabajo termina en firmar nuestros programas. Por ejemplo, yo no he notado lo que mencionas porque no uso el navegador Chrome. No creo que podamos tener en cuenta cada uno de los posibles programas y de sus posibles configuraciones. A mí, personalmente, me preocupaban los mensajes de advertencia del propio Windows, y, estos ya no aparecen una vez firmado un programa. Mejor dicho (y esto sirve para mi argumento) los mensajes de advertencia siguen apareciendo, pero, ya no incluyen iconos "warning" sino "information". Esto quiere decir que otros programas como navegadores o antivirus, dependiendo de su configuración además, podrán informar al usuario sobre los peligros de poner en marcha un programa ejecutable. Sin abusar, creo que esto no está mal, puesto que, en efecto, entraña cierto peligro. Pero espero que el usuario que sepa lo que ha descargado, y, que vea que el programa está firmado por quien se supone que tiene que estarlo. A partir de ahí el usuario debe poder elegir qué hacer. Pero nosotros ya hemos hecho lo que podíamos para facilitárselo. P.D. Voy a abrir Chrome y ver qué pasa cuando descargue uno de mis programas. A ver qué pasa. |
Hola,
Después de probar con Google Chrome, tengo que decir que a mí no me sucede lo que al compañero, aunque, pareciera que Google no sólo descarga el archivo, sino que lo envía a sus servidores y comprueba no sé qué antes de dejarte hacerte con el control de dicho archivo. En fin, una posible solución pudiera ser no ofrecer archivos executables a los usuarios. En mi caso lo que he descargado es un archivo Zip, que, a su vez contiene el archivo ejecutable del programa en cuestión. Creo que esto puede ser una posible solución al problema que plantea miado. |
Cita:
|
Hola,
Cita:
Dicho eso, volvemos al principio: ¿qué pasa si el compresor/descompresor de archivos Zip que usa el usuario le avisa de que el archivo Zip contiene un ejecutable y que esto pude causar daños a su equipo y bla, bla, bla? Sobre esto poco podemos hacer nosotros. |
Cita:
|
Antes de nada gracias a dec por ampliar su experiencia. Es una estupenda guía para obtener el certificado con StartSSL.
Finalmente he decidido evitarles los sustos que le da a los usuarios firmar con el certificado de la FNMT. He realizado el procedimiento con www.startssl.com. Añado alguna información que puede ser de utilidad a otro que se lance con ellos. Tienen una opción de verificación postal alternativa a la telefónica. Yo tenía un pequeño lío con las direcciones y al final este método me ha resuelto el problema y me ha evitado balbucear mi pésimo inglés. Como curiosidad, la verificación postal se realiza desde Israel, creo que la empresa también es de Israel. Son muy accesibles, no son máquinas insensible. Son personas las que te atienden y se nota que están por ayudar. Yo he cruzado numerosos correos con ellos, rozando a veces el límite cansino, y son rápidos y razonables. Respecto a la validez de los certificados: Cita:
Ahora a seguir con la fase de crear los certificados, si encuentro algo nuevo que aportar en el procedimiento, lo añado luego. |
Hola,
Cita:
Cita:
Cita:
Cita:
Cita:
|
Hola a todos,
¡Esto es un no parar! Recibo un mensaje sobre la última actualización de Inno Setup indicando que ya viene preparado para la "doble firma" y con el enlace a un artículo donde se dice que Microsoft ya no soportará más el algoritmo SHA1. Así que ahora tenemos que usar SHA2 o hacer lo mismo que Inno Setup hace, firmándose tanto con SHA1 como con SHA2. El caso es que ayer quise conseguir un nuevo certificado en StartSSL que viniese ya con SHA2. Primero tuve que revocar el certificado anterior y esto ha tardado un día en llevarse a cabo, aunque sin ningún otro coste. Pero resulta que, aunque seguí los pasos que se indican en este artículo y traté de usar SHA2 en OpenSSL, el asunto no ha funcionado. Mi certificado sigue siendo SHA1, o sea, que he hecho un pan como unas tortas, como suele decirse. Así que me he puesto en contacto con StartSSL (les he enviado un formulario y parece ser que contactarán conmigo) preguntándoles cómo puedo crear un certificado que incorpore SHA2 en lugar de SHA1. Y ya veremos a ver qué me responden... |
Tengo una duda, nose si es estúpida pero la tengo... Después si tienes que hacer unos cambios en tu software tendrías que refirmarlo supongo, entonces lo que hay que hacer si se tiene un certificado es implementar como un sistema de "plugins" y dejar la aplicación firmada como un "loader del software" por si así tienes que cambiar algo sea posible por ejemplo por DLL's, nose si me explico.
|
Hola,
No sé si lo entendí bien Reasen, pero, si hacemos algún cambio en un archivo EXE o DLL, necesariamente habremos de firmarlo de nuevo. Si no me equivoco, no es posible hacer un cambio sin "romper" la firma, puesto que esta garantiza de algún modo también eso mismo: que el archivo no ha sido modificado después de firmarse. Lo que yo hago es usar algunos archivos BAT que me firmen los ejecutables que crea Delphi, y, tengo Inno Setup configurado de forma que firme los instaladores (ejecutables) de mis programas. P.D. Todavía no me han respondido desde StartSSL, no sé si volver a enviar el formulario o probar con el soporte "7/24" de su página web. |
Vale, ya me solucionaste algunas dudas y bueno lo del soporte "7/24" te recomendaría hablar con alguien de esa web si se trata de un chat en tiempo real, sino pues será bastante lioso enviar otro "informe" sin resolver el anterior.
|
Cita:
|
Cita:
Yo por mas pruebas que hago no lo consigo. En el momento que sale uno de Delphi........ que complicado es todo. Gracias. |
Hola,
Lamentablemente, esta gente de StartSSL no respondió mi petición de ayuda. Y, en el "chat de soporte", tampoco consiguieron solucionarme el problema. De hecho revoqué mi anterior certificado y me dieron otro nuevo, pero, se sigue usando el algoritmo SHA1 y no SHA2. La verdad es que ahora mismo no tengo tiempo en absoluto (estoy muy liado con cierta enfermedad aquí en casa) y por tanto no puedo ocuparme de este asunto como me gustaría. |
Bueno creo que he encontrado dos soluciones posibles.
No es necesario solicitar ni renovar si no me equivoco el certificado, con esta linea se firma el ejecutable con SHA256 1ª solución: signtool.exe sign /f "c:\fichero.pfx" /p paswword /fd sha256 /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 /as /v "c:\fichero.exe" Unicamente hay que cambiar el fichero.pfx por el tuyo, el password por el que tengas y el fichero.exe que deseas firmar. 2ª Solucion: Yo antes firmaba con una herramienta (un ejecutable) gratuita que te da ksoftware. No se si está permitido poner link, si no se permite eliminalo por favor. Como es gratuita lo pongo, entráis en esa página y mas abajo en una pestaña de cuatro que hay dice "Download Ksign (New!)" en color verde y ya unicamente es bajarla donde dice "Free Download" en color verde y viene en Español y todo es muy sencilla de manejar y ahora la han actualizado a SHA256. Link de descarga: http://codesigning.ksoftware.net/ Bueno ya me comentareis compañeros. |
Hola miado,
Muchas gracias. Parece que has dado con la tecla, puesto que acabo de probarlo y funciona perfectamente. Muchas gracias de nuevo: a mí me has quitado un trabajo de encima y seguramente también a otros. :) P.D. He probado con "signtool", puesto que el proceso lo tengo automatizado con dicha herramienta. |
Buenas,
Me han mandado un mensaje automático para renovar el certificado, he entrado en la página y parece ser que hay problemas para renovarlo de momento, os ha pasado también a alguno con esta empresa StartSSL?. Saludos Delphinianos.:) |
Hola a todos,
Cita:
No sé si te valdrá de algo esta información. Yo también tendré que intentar "comprar" un nuevo certificado en su momento, cuando el que uso ahora ya no sea válido. |
Muchas gracias David.
Si de momento seguiré utilizandolo así, si os enterais de algún sitio que sea barato para el próximo año, por favor, decidlo. He visto que en LatinSSL son a unos 88 dolares, pero no se el proceso que hay que realizar. De todas formas voy a seguir así de momento y ya el año que viene veremos a ver como está. Gracias y saludos a todos. |
Cita:
|
Hola, antes de nada muchas gracias a todos por documentar el proceso :)
Hace una semana me he animado y estoy intentando firmar también mi programa utilizando un certificado clase 2 code signing de StartSSL. Después de pedirte sacarte la foto con el DNI y mandarle alguna factura para comprobar que efectivamente, eres quien dices, te validan. En mi caso no pudieron llamarme por teléfono ya que la dirección de la factura telefónica no corresponde con la de mi DNI. La solución que me dieron fue hacer una "recarga" en su pagina de 0.50$ mediante PayPal para dar el visto bueno. El caso es que finalmente me han dado mi .CRT de certificado. Aquí viene mi problemilla que me trae loco. La gente del soporte tecnico de StartSSL muy bien, la verdad, pero sigo teniendo un problema a la hora de firmar mi setup.exe... Creo una llave privada .key, y un .CSR con su StartSSL Tool.exe, exporto el .PFX que pide Signtool.exe o la propia tool para firmar y firmo. El proceso lo hace correctamente, si veo las propiedades del archivo en Firmas Digitales veo que esta firmado. Peeeero... y aquí viene mi problema, al ejecutar el Setup.exe Windows 10 me sigue avisando de que el Editor es desconocido. Es decir no aparece mi nombre como firmante. Ayer estuve con el servicio 24h en chat 1 hora, utilice MMC para importar los dos certificados intermedios y el final de confianza que te envian, supuestamente así al volver a generar el PFX se solucionaría pero nada. Me remitieron a un correo electronico "más técnico", al que escribiré, pero quería comentarlo por aquí también por si alguno ha tenido el mismo problema. Veo que hablais sobre SHA2 en vez de SHA1... lo he intentado pero con el mismo resultado. Mi programa queda firmado tal como se ve en sus "propiedades" de archivo pero al ejecutarlo: Editor desconocido igualmente :( Alguien sabe algo? Muchas gracias. |
Hola,
Lamento no poder ayudarte demasiado, lago, porque, si tuviese que seguir de nuevo los pasos, creo tendría que aprenderlo todo de cero... y es que hace ya más de dos años o más que preparé el asunto, nunca lo había hecho antes, y, nunca lo he vuelto a hacer. Lo que me parece raro es que dices que el ejecutable aparece firmado... ¿qué otra cosa puede conseguirse además de eso? Quiero decir, ¿no debería ser esto suficiente? ¿Tal vez han cambiado las cosas, y, por algún motivo, los certificados de StartSSL ya no pasan algún tipo de filtro de Windows y de ahí el mensaje de autor "desconocido"? Pero, si esto último fuese así, no podrían vender los certificados tal cual los venden... porque no servirían de nada... En fin, ya ves que no te ayudé nada. Como digo me extraña que si el archivo aparece firmado Windows se queje, por decirlo así... ¿ves algo raro en la pestaña "Detalles" del archivo? ¿Aparece tu nombre ahí? |
Hola Dec, no te preocupes es normal, con el tostón que viene siendo mejor olvidarlo ;)
Estoy dandole mil vueltas y me parece que hay algo que hago mal... el exe aparece firmado, pero acabo de comprobar cuando pulso en Detalles de la firma que dice algo como "se proceso correctamamente una cadena de certificados pero temina en un certificado de raiz no compatible con el proveedor de confianza"... Reinstalare los certificados que me enviaron en el MMC y si sigue les enviare la captura a ver... pero entiendo que estará aquí el problema. Gracias igualmente Dec, postearé en cuanto consiga arreglarlo "espero" ;) |
Viva!, listo... la gente de StartSSL solo me envio un par de certificados intermedios y uno para la raiz de MMC. Me baje todos los que tienen en la pagina, los importé, volví a generar el PFX y aire.
Firmado! hurrah! ;) |
La franja horaria es GMT +2. Ahora son las 14:08:47. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi