- ¿Qué es un proceso de Firma de Código?
- ¿Qué es el proceso de sellado de tiempo?
- ¿Qué es la Autoridad de Sellado de Tiempo (TSA)?
- ¿Cómo realiza la autoridad de sellado de tiempo el proceso de sellado de tiempo?
- ¿Quién puede utilizar el sellado de tiempo?
- ¿Por qué utilizar la plataforma segura CodeSign de EC?
- PKI administrada / CodeSign Secure de Encryption Consulting
- Conclusión
En esta pizarra de debate, ¿qué es una marca de tiempo confiable y qué es la Autoridad de Sellado de Tiempo (TSA)? ¿Qué protocolos sigue la Autoridad de Sellado de Tiempo (TSA)? ¿Cuáles son los pasos del proceso de sellado de tiempo realizado por la Autoridad de Sellado de Tiempo? ¿Por qué es fundamental este concepto en el proceso de firma de código? ¿Qué es CodeSign Secure de Encryption Consulting? Profundicemos en el tema para comprender las respuestas a estas preguntas:
La firma de código es un tipo de firma digital que se utiliza para brindar seguridad y autenticación a la propiedad intelectual en forma de código o programa informático. El proceso de firma de código utiliza varios módulos para completarse y así garantizar la seguridad e integridad técnica del código o programa. El sellado de tiempo es un aspecto clave de la arquitectura del proceso de firma de código.
Primero, comprendamos qué es exactamente el proceso de firma de código y qué componentes intervienen en su arquitectura. Esto nos llevará al concepto de sellado de tiempo confiable y a la Autoridad de Sellado de Tiempo (TSA). Es importante destacar que el proceso de sellado de tiempo se puede aplicar a documentos firmados mediante firmas digitales o electrónicas.
¿Qué es un proceso de Firma de Código?
Recientemente, muchas empresas tecnológicas han sido blanco de hackers que buscan manipular y corromper el código fuente. Estos ataques afectan gravemente la reputación de la marca y ocasionan enormes pérdidas a las empresas afectadas. Para abordar esta situación, se puede utilizar la técnica de firma de código para salvaguardar la integridad del código y garantizar la autenticidad del autor al usuario final mediante firmas digitales.
La firma de código proporciona una distribución segura y confiable de software, lo que previene la manipulación, la corrupción y la falsificación. La firma de código mejora la confianza del usuario final en la integridad del software/código y la autenticidad del remitente.
La firma de código es el proceso de aplicar una firma digital a cualquier programa de software destinado a ser publicado y distribuido a un tercero o usuario, con dos objetivos clave: primero, demostrar la autenticidad y propiedad del software; segundo, demostrar su integridad, es decir, que no ha sido manipulado, por ejemplo, mediante la inserción de código malicioso.
La firma de código se aplica a cualquier tipo de software: ejecutables, archivos, controladores, firmware, bibliotecas, paquetes, parches y actualizaciones. Se ha proporcionado una introducción a la firma de código en artículos anteriores de este blog. En este artículo, analizamos algunos de los beneficios empresariales de la firma de código.
La firma de código es un proceso para validar la autenticidad del software y es un tipo de firma digital basada en PKI. La firma de código confirma la autenticidad y originalidad de la información digital, como un fragmento de código de software. Garantiza a los usuarios la validez de esta información digital y establece la legitimidad del autor. También garantiza que esta información digital no haya sido modificada ni revocada tras su firma válida.
La firma de código desempeña un papel importante, ya que permite identificar software legítimo frente a malware o código fraudulento. El código firmado digitalmente garantiza que el software que se ejecuta en computadoras y dispositivos sea confiable y no haya sido modificado.
El software impulsa su organización y refleja el verdadero valor de su negocio. Proteger el software con un sólido proceso de firma de código es vital sin limitar el acceso al código, garantizando que esta información digital no sea código malicioso y estableciendo la legitimidad del autor.
Arquitectura de firma de código
La Arquitectura de Firma de Código ofrece una explicación detallada del funcionamiento del proceso y sus componentes. A continuación, se mencionan los cuatro componentes diferenciadores más importantes de la Arquitectura de Firma de Código.
- Sistema de firma de código (CSS)
- Autoridad de certificación (CA)
- Autoridad de Sellado de Tiempo (TSA)
- Verificador
Estos cuatro componentes en conjunto completarán el ciclo completo del proceso de firma de código. La Infraestructura de Clave Pública (PKI) desempeña un papel crucial en la firma de código de sus documentos importantes.
Para comprender más sobre el proceso de firma de código, lea nuestras publicaciones de blog aquí:

En la arquitectura anterior, nos centramos en la "Autoridad de Sellado de Tiempo", que actualmente es opcional en el proceso de firma de código, pero que poco a poco va ganando importancia para lograr la autenticidad del código/programa. Entonces, ¿qué es el proceso de sellado de tiempo y por qué es importante esta autoridad? Analicémoslo:
¿Qué es el proceso de sellado de tiempo?
El sellado de tiempo es una parte opcional del proceso de firma de código, que permite que la firma del software sea válida incluso después de la expiración del certificado utilizado para la firma. Esto actúa como un control adicional, ya que la firma utilizada para el proceso de firma de código se conserva incluso después de su expiración, garantizando así un flujo de operaciones fluido y sin interrupciones.
Cada vez que el ejecutable del software firmado se ejecuta en cualquier equipo o sistema cliente, el sistema operativo del usuario verifica su firma digital. Supongamos que el usuario ha marcado el tiempo del software. El equipo del usuario verificará la firma basándose en la hora de la firma digital, en lugar de la hora actual del sistema cuando se ejecuta el software.
¿Qué es la Autoridad de Sellado de Tiempo (TSA)?
Un componente opcional pero importante en la arquitectura de firma de código es la Autoridad de Sellado de Tiempo (TSA). El sellado de tiempo preserva la hora de origen en la que se firmó el código y permite que el software sea aceptado por el sistema operativo y otras plataformas de dispositivos cliente incluso después de que el certificado caduque. El software firmado se valida con la hora de origen en la que se firmó el certificado, en lugar de la hora actual. Por lo tanto, siempre es recomendable utilizar la técnica de sellado de tiempo al firmar código.
El código firmado con firma digital se envía a la TSA para el sellado de tiempo. La TSA aplica su propia firma junto con el sello de tiempo de la fuente válida. La TSA es independiente del Sistema de Firma de Código y sincroniza su reloj con una fuente de tiempo autorizada.
Protocolos de sellado de tiempo
Las autoridades de sellado de tiempo siguen ciertos protocolos para garantizar una mayor protección y seguridad. Existen dos protocolos principales que suelen seguir las TSA para el sellado de tiempo.
- RFC 3161 – RFC 5035
- Código de autenticación de Microsoft
RFC 3161 – El protocolo de sellado de tiempo definido en RFC 3161 requiere que la sintaxis de mensaje criptográfico (CMS) SignedData [RFC5652], utilizada para aplicar una firma digital en el token de sellado de tiempo, incluya un atributo firmado que identifique el certificado del firmante.
Authenticode aplica tecnología de firma digital para garantizar la autoría e integridad de datos binarios, como software instalable. Un navegador web cliente u otros componentes del sistema pueden usar las firmas de Authenticode para verificar la integridad de los datos al descargar o instalar el software. Las firmas de Authenticode se pueden usar con numerosos formatos de software, como .cab, .exe, .ocx y .dll.
Para saber más sobre Microsoft Authenticode, lea la página mencionada a continuación:
¿Cómo realiza la autoridad de sellado de tiempo el proceso de sellado de tiempo?
Las infraestructuras de clave pública (PKI) desempeñan un papel crucial en el proceso de sellado de tiempo que lleva a cabo la Autoridad de Sellado de Tiempo (TSA). Analicemos los pasos principales que intervienen en este proceso.
Paso 1:
La aplicación cliente se conecta con el servicio de la Autoridad de Sellado de Tiempo (TSA). Se genera un hash para el código o programa de software que requiere firma.
Paso 2:
El hash creado para el código se envía a la Autoridad de Sellado de Tiempo (TSA) para su sellado. Una vez enviado el hash a la TSA, cualquier cambio realizado en el código o en el programa de software con hash debe comunicarse al servidor de la TSA.
Paso 3:
La autoridad de sellado de tiempo combina el hash del archivo original recibido del cliente con la marca de tiempo de confianza. El resultado se firma digitalmente con una clave privada segura. Este proceso de firma crea un token de sello de tiempo que se envía al cliente.
Paso 4:
El cliente recibe el token de marca de tiempo creado por la Autoridad de Sellado de Tiempo, que se registra junto con el documento o la firma del código.
¿Quién puede utilizar el sellado de tiempo?
El proceso de sellado de tiempo confiable puede añadir control de seguridad adicional a los documentos firmados digitalmente o electrónicamente. Los documentos firmados con firma electrónica pueden tener un sello de tiempo. Los destinatarios pueden verificar la integridad del documento tras el sello de tiempo. En el caso de los documentos firmados digitalmente, existen dos razones principales para incluir un sello de tiempo confiable al firmar digitalmente un documento: garantizar la Validación a Largo Plazo (LTV) de la firma y añadir no repudio o confianza sobre el momento en que se aplicó la firma.
Encryption Consulting ofrece la plataforma CodeSign Secure para la firma digital de código de sus programas y/o códigos más importantes y confidenciales, garantizando así su seguridad e integridad. Tras firmar código con CodeSign Secure, le guiaremos en el proceso de sellado de tiempo confiable a través de una Autoridad de Sellado de Tiempo (TSA).
A continuación se presenta un resumen de la plataforma CodeSign Secure de Encryption Consulting (EC) y sus beneficios.
Plataforma segura CodeSign de Encryption Consulting (EC):
La plataforma segura CodeSign de Encryption Consulting (EC) le permite firmar digitalmente el código y los programas de su software. Los módulos de seguridad de hardware (HSM) almacenan todas las claves privadas utilizadas para la firma de código y otras firmas digitales de su organización. Las organizaciones que utilizan la plataforma CodeSign Secure de EC pueden disfrutar de los siguientes beneficios:
- Fácil integración con los principales proveedores de módulos de seguridad de hardware (HSM).
- Sólo usuarios autorizados pueden acceder a la plataforma.
- Servicio de gestión de llaves para evitar cualquier almacenamiento inseguro de llaves.
- Rendimiento mejorado al eliminar cualquier cuello de botella ocasionado.
¿Por qué utilizar la plataforma segura CodeSign de EC?
Existen varias ventajas al utilizar CodeSign Secure de Encryption Consulting para sus operaciones de firma de código. CodeSign Secure ayuda a los clientes a mantenerse a la vanguardia al proporcionar una solución segura de firma de código con almacenamiento a prueba de manipulaciones para las claves y visibilidad y control completos de las actividades de firma de código. Las claves privadas del certificado de firma de código se pueden almacenar en un HSM para eliminar los riesgos asociados con claves robadas, dañadas o mal utilizadas. El hash del lado del cliente garantiza el rendimiento de la compilación y evita el movimiento innecesario de archivos para brindar un mayor nivel de seguridad. La plataforma CodeSign Secure proporciona una autenticación fluida a los clientes de firma de código para que puedan utilizar funciones de seguridad de vanguardia, como el hash del lado del cliente, la autenticación multifactor, la autenticación de dispositivos, así como flujos de trabajo de aprobadores de varios niveles, entre otros. Compatibilidad con políticas de InfoSec para mejorar la adopción de la solución y permitir que los distintos equipos de negocio tengan su propio flujo de trabajo para la firma de código. CodeSign Secure incorpora un mecanismo de firma hash de vanguardia del lado del cliente, lo que reduce la cantidad de datos que circulan por la red, convirtiéndolo en un sistema de firma de código altamente eficiente para las complejas operaciones criptográficas que se realizan en el HSM.
PKI administrada / CodeSign Secure de Encryption Consulting
Encryption Consulting LLC (EC) se encargará por completo de la infraestructura de clave pública (PKI), lo que significa que EC gestionará la infraestructura PKI de su organización (ya sea local, en la nube o híbrida). Además de la PKI, Encryption Consulting también le ayudará a firmar digitalmente sus documentos, códigos y programas informáticos importantes y altamente confidenciales.
Encryption Consulting implementará y brindará soporte a su infraestructura de clave pública (PKI) mediante un conjunto de procedimientos y procesos auditados, completamente desarrollados y probados. No se requerirán derechos de administrador en su Active Directory, y usted siempre tendrá el control sobre su PKI y sus procesos comerciales asociados. Además, por motivos de seguridad, las claves de la CA se almacenarán en módulos de seguridad de hardware (HSM) con certificación FIPS 140-2 Nivel 3, alojados en su centro de datos seguro o en nuestro centro de datos de Encryption Consulting en Dallas, Texas.
Conclusión
La PKI como servicio de Encryption Consulting, o PKI gestionada, le permite obtener todos los beneficios de una PKI bien gestionada sin la complejidad operativa ni el coste de operar el software y el hardware necesarios. Sus equipos mantienen el control necesario sobre las operaciones diarias, al tiempo que delegan las tareas administrativas a un equipo de confianza de expertos en PKI.
- ¿Qué es un proceso de Firma de Código?
- ¿Qué es el proceso de sellado de tiempo?
- ¿Qué es la Autoridad de Sellado de Tiempo (TSA)?
- ¿Cómo realiza la autoridad de sellado de tiempo el proceso de sellado de tiempo?
- ¿Quién puede utilizar el sellado de tiempo?
- ¿Por qué utilizar la plataforma segura CodeSign de EC?
- PKI administrada / CodeSign Secure de Encryption Consulting
- Conclusión
