Glosario

¿Qué es Firma digital?

Una firma digital es un esquema criptográfico que utiliza una clave privada para generar una firma sobre un mensaje o documento, que cualquiera con la clave pública correspondiente puede verificar para confirmar la autenticidad y la integridad de los datos.

También conocido como: code signing, message signing

Las firmas digitales proporcionan tres garantías: autenticación (el mensaje fue creado por el supuesto remitente), integridad (el mensaje no se ha alterado desde la firma) y no repudio (el firmante no puede negar haberlo firmado). Estas propiedades hacen que las firmas digitales sean legalmente vinculantes en muchas jurisdicciones y esenciales para la distribución de software, las transacciones financieras y la verificación de identidad.

El proceso de firma funciona haciendo primero el hash del mensaje con una función hash criptográfica (como SHA-256) para producir un resumen de tamaño fijo, y luego cifrando ese resumen con la clave privada del firmante. La verificación invierte el proceso: el verificador descifra la firma con la clave pública del firmante, hace el hash del mensaje de forma independiente y compara los dos resúmenes. Si coinciden, la firma es válida. Los algoritmos comunes incluyen las firmas RSA, ECDSA (Elliptic Curve Digital Signature Algorithm) y EdDSA.

Las firmas digitales son distintas de HMAC, aunque ambas verifican la integridad. HMAC usa una clave secreta compartida: ambas partes pueden generar y verificar el código, por lo que no puede proporcionar no repudio. Las firmas digitales usan claves asimétricas, lo que significa que solo el poseedor de la clave privada puede firmar, mientras que cualquiera con la clave pública puede verificar. Esta asimetría es lo que permite el no repudio y hace que las firmas digitales sean adecuadas para escenarios de verificación pública.

Cómo usa Vaulted Firma digital

Vaulted no usa firmas digitales en su flujo de cifrado principal porque el modelo de compartición es simétrico: el remitente y el destinatario comparten la misma clave a través del fragmento de la URL, y no hay necesidad de no repudio ni de verificación pública. Sin embargo, los certificados TLS que aseguran las conexiones HTTPS de Vaulted dependen de firmas digitales para demostrar la identidad del servidor a tu navegador, y la integridad del código desplegado de Vaulted se verifica mediante la firma de código en su pipeline de CI/CD.