Menu
Centro de firma de código - soporte para firmar aplicaciones
Centro de soporte al cliente de certificados de firma de código (certificados para firmar código y aplicaciones). Aquí encontrarás toda la información relevante sobre la firma de código y el uso de los certificados de firma de código.
Certificados de firma de código
Certificados para firmar código (firma de código) se utilizan para firmar aplicaciones creadas en diferentes plataformas de desarrollo. El objetivo de la firma de código no es solo la autenticación del editor, sino principalmente la protección de la autenticidad de la aplicación y su inmutabilidad. Si alguien modificara la aplicación (por ejemplo, añadiendo malware), la firma dejaría de ser válida. Por ello, la mayoría de los sistemas actuales ya sea exigen la firma de la aplicación (MacOS) o advierten enfáticamente antes de ejecutar una aplicación no firmada (Windows).
Certificado EV de firma de código
También ofrecemos un certificado con validación extendida para firmas de código. Sus ventajas y la guía para activarlo se encuentran en los siguientes párrafos.
Importancia del certificado EV de firma de código
Su importancia radica en una mejor protección del certificado y la clave privada. El certificado junto con la clave privada se guarda en un token y no se puede exportar. El uso del certificado está protegido con una contraseña y tras varios intentos incorrectos el token se borra. Es una excelente protección contra el uso indebido de tu certicado de firma de código.
Más información sobre el certificado de firma de código en nuestra oferta se puede encontrar en la página de producto DigiCert Code Signing EV.
Cómo obtener y activar un certificado EV de firma de código
Todo el proceso de obtención y activación del certificado EV de firma de código está descrito en el artículo Activación (habilitación) del certificado EV de firma de código.
Cómo firmar software con un certificado digital
Para firmar aplicaciones con firma de código necesitas dos cosas:
- Certificado de firma de código
- Aplicación para firmar
Obtienes el certificado de firma de código de SSLmarket y es fácil. La aplicación de firma la eliges según la plataforma en la que desarrollas. Estas herramientas de firma son populares y están ampliamente extendidas, y las describimos en nuestra ayuda y te podemos asesorar sobre ellas:
- Signtool del Windows SDK (ayuda)
- Jarsigner (ver artículo en el blog)
- Utilidad smctl de DigiCert - recomendada para KeyLocker (ayuda). Puede usar por ejemplo signtool y simplificar el firmado.
La mayoría de nuestros clientes desarrollan en el entorno MS Windows y utilizan el Windows SDK. La firma se realiza mediante la herramienta signtool.exe. La documentación de signtool se puede encontrar en la página SignTool.exe (Sign Tool) en el sitio web de Microsoft.
Firma mediante HSM en la nube
Un HSM en la nube sirve para el almacenamiento seguro del certificado de firma de código y el acceso remoto al mismo. A diferencia del certificado en un token, permite la automatización y la firma es muy rápida, ya que solo se envía a la nube el hash del archivo (el llamado hash signing).
Recomendamos encarecidamente la firma mediante hash-signing y la nube frente al token. Es seguro, rápido y económico.
HSM en la nube recomendados
- DigiCert KeyLocker
- DigiCert Software Trust Manager
- Azure Key Vault
- GCP Cloud KMS (Google)
- AWS CloudHSM
En los siguientes párrafos encontrarás las ventajas y desventajas de cada una de las soluciones.
DigiCert KeyLocker
La alternativa más económica al token es KeyLocker. Se trata de un servicio simple para un solo usuario, que permite firmar código de forma sencilla. DigiCert proporciona sus propias bibliotecas KSP y PKCS#11, que se instalan en el sistema y se firma el código exactamente como se acostumbra. Con su utilidad SMCTL, la firma es aún más simple y directa que con signtool. SMCTL es compatible con las herramientas más utilizadas para Code Signing y puede llamarlas. KeyLocker tiene un límite de 1000 firmas, por lo que es adecuado para firmas menos frecuentes. Sin embargo, el número de firmas puede ampliarse mediante pago.
DigiCert Software Trust Manager
Se trata de la solución cloud de gama alta de la plataforma DigiCert ONE, destinada al uso empresarial. Ofrece la gestión de un número ilimitado de certificados y usuarios y es infinitamente escalable. La integración con tu plataforma CI/CD la aseguran scripts y bibliotecas preparados. El acceso a STM y el número de firmas se licencian. Para más información sobre precio y modo de licenciamiento, no dudes en contactarnos. La documentación se encuentra en el sitio web de DigiCert.
HSM en la nube Azure y Google
Los dos grandes actores del cloud proporcionan un servicio HSM con acceso remoto seguro a través de sus propias bibliotecas, que funcionan como KSP en Windows. Su uso no es complicado y el precio de ambos es muy favorable (solo se paga por operaciones criptográficas). Recomendamos Azure y GCP para un gran volumen de firmas anuales, ya que los costes son bajos.
Encontrarás la guía para firmar código con Azure Key Vault en el artículo Firma de código con Azure Key Vault. Para GCP Cloud KMS, en el artículo Firma de código con Google Cloud KMS.
AWS CloudHSM
En Amazon también es posible firmar mediante la nube utilizando Signtool del Windows SDK, aunque el HSM aprovisionado se cobra por hora de funcionamiento. Además de los costes fijos, también se paga por operaciones (firmas). Si aún no utilizas AWS, recomendamos más bien Azure o GCP HSM. Más información sobre el uso con Signtool se encuentra en el artículo Use Microsoft SignTool with Client SDK 3 to sign files.
Comparación Azure Key Vault vs Google Cloud KMS vs AWS CloudHSM/KMS+HSM
Encontrarás una comparación de los tres HSM cloud en la siguiente tabla. Está centrada en los costes por operación de firma (hash signing), tarifas fijas, escalado, uso bajo, complejidad operativa y latencia/rendimiento.
| Factor | Azure Key Vault | Google Cloud KMS | AWS CloudHSM / KMS + HSM |
|---|---|---|---|
| Tarifas por operaciones (sign/verify) | Muy bajas (≈ $/10 000 operaciones). | Muy bajas (≈ $/10 000 operaciones). | No es el coste principal; las tarifas fijas de HSM son las principales. |
| Costes fijos | Posible tarifa mensual por clave HSM; por lo demás bajos. | Sin costes fijos significativos en el régimen básico. | Altos – alquiler horario de HSM (24/7) o Custom Key Store. |
| Escalado y capacidad | Lineal según las transacciones; limitado por throttling. | Lineal; atención a las cuotas (QPS/QPM). | Escalado añadiendo HSMs; también crece el coste fijo. |
| Coste en uso bajo | Ventajoso — se paga sobre todo por operaciones. | Ventajoso — se paga sobre todo por operaciones. | Desventajoso — el HSM se paga incluso sin carga. |
| Complejidad operativa | Baja — servicio gestionado. | Baja — servicio gestionado. | Más alta — gestión del clúster HSM y HA/DR. |
FAQ - preguntas frecuentes
No. La firma de código no se emite para un dominio, sino para una organización específica. El nombre de esta organización aparece en el nombre común (Common name).
El certificado DigiCert Code Signing puede firmar diferentes tipos de software y scripts para asegurar que provienen de una fuente confiable y no han sido modificados después de su emisión.
Qué se puede firmar:
- Archivos ejecutables: .exe, .dll, .ocx, .msi, .cab
- Controladores para Windows (WHLK/HLK)
- Aplicaciones Java: .jar
- Macros y scripts VBA en Microsoft Office
- Scripts de PowerShell: .ps1
- Aplicaciones y paquetes macOS (a través de Apple Developer ID)
- Aplicaciones Adobe AIR
- Aplicaciones y bibliotecas .NET
- Scripts e instaladores en diferentes entornos
Qué no se puede firmar:
- Código que requiere una firma electrónica cualificada de acuerdo con eIDAS
- Archivos que no están destinados a distribución
- Formatos y plataformas que no soportan firma digital
Sí, el código con marca de tiempo (timestamp) sigue siendo válido incluso después de que el certificado expire. Si utilizas un sello de tiempo durante el firmado, el sistema verificará que el código fue firmado durante la validez del certificado. Así, la firma permanece confiable. Sin el uso del sello de tiempo, es necesario volver a firmar el código con un nuevo certificado.
Consulta el artículo Instructions for timestamping VBA code en el sitio web de DigiCert.com
No, puedes firmar un número ilimitado de aplicaciones con el certificado. Si tienes un certificado de firma de código en un token, puedes firmar de forma ilimitada. El número de firmas se considera solo en los servicios en la nube:
- DigiCert KeyLocker - durante la validez del certificado, tienes 1000 firmas, puedes comprar más.
- Software Trust Manager - las firmas se licencian para la duración del contrato.
Firmar con un certificado de firma de código es simple y rápido. Utiliza lo que se llama firma basada en hash, donde primero se calcula un hash del archivo, que luego se envía a la nube para firmar. El archivo en sí no se transfiere a ningún lado, solo el hash firmado se devuelve al proceso de firma. Esto hace que todo el proceso sea seguro y eficiente.
La firma con hash usando la nube se puede utilizar con estos productos:
Contáctanos
Si no estás seguro con cualquier paso del pedido del certificado, emisión del certificado, instalación del certificado, o con cualquier otra consulta, no dudes en contactar a nuestro soporte al cliente, que te asesorará y ayudará. Nuestros expertos con la certificación Symantec Web Security Sales Expert Plus están disponibles todos los días hábiles durante el horario laboral.
También puedes contactarnos directamente desde tu cuenta de cliente enviando una solicitud desde el menú Solicitud autorizada.
ZONER, S.A.
Avenida de Europa 26, EDIFICIO ÁTICA 5, 2ª planta
28224 Pozuelo de Alarcón, Madrid
Nº de registro: 49437381
NIF/CIF: CZ49437381
¿Le resultó útil este artículo?
Gracias por su feedback en este artículo.
Lo sentimos que no haya encontrado lo necesario aquí.
Ayúdanos mejorar el artículo, por favor. Escríbenos lo que esperaba aquí y no encontró.