¿Qué son y cómo funcionan las firmas digitales?

Seguramente en algún proceso on-line hayas necesitado usar una firma digital o hayas escuchado hablar de ellas en conversaciones sobre criptomonedas. En el caso de que no sepas qué es no te preocupes, en este artículo te contaremos todo sobre este mecanismo.

Las firmas digitales son, en pocas palabras, un mecanismo criptográfico creado con el objetivo de verificar la identidad de una persona o la autenticidad de datos digitales. Las firmas digitales son una versión sustitutiva de las firmas tradicionales escritas, solo que presentan un nivel más elevado de complejidad.

Desde el punto de vista técnico, se trata de un código vinculado a un mensaje. Primero se genera dicho código y pasa a ser la prueba de que el mensaje que representa no ha sido manipulado entre el emisor y el receptor.

Como ya sabemos, la idea de proteger las comunicaciones vienen de muchos años atrás, sin embargo, las firmas digitales se convirtieron en algo posible sobre los años 70´s con el desarrollo de la Criptografía de Clave Pública o PKC (por sus siglas en inglés).

Historia de las firmas digitales

El concepto de firma digital apareció por primera vez en el año 1976 gracias a Diffie y Hellman. Estos fueron pioneros de la criptografía y defendían la protección de la información circulante por internet. Ambos idearon una forma de verificar la identidad de un firmante por internet y la integridad de su mensaje. Todo ello a través de un conjunto de datos asociados a un mensaje.

Tres años después de idearse el concepto, concretamente en el año 1979 los integrantes del Instituto Tecnológico de Massachusetts (MIT), Rivest, Adleman y Shamir, dieron forma al algoritmo que se convertiría en el más empleado para las firmas digitales, el llamado RSA

Algunos años después fueron desarrollándose otros algoritmos como el Digital Signature Algorithm (DSA) en el año 1991. Este algoritmo se convirtió en el estándar estadounidense para la creación de firmas electrónicas.

Con los años, se legalizaron las firmas digitales. La primera ley al respecto se aprobó en el año 1995 en el estado de Utah. Dicha ley se centraba expresamente en el comercio y establecía que se reconocía como firma digital toda aquella que estuviera encriptada y estuviera emitida por una Autoridad Certificadora Autorizada. Desde entonces, con el paso del tiempo y la ayuda de los avances tecnológicos se han ido desarrollando las implementaciones de las firmas digitales hasta convertirse en uno de los recursos más seguros.

¿Cómo funciona una firma digital?

Lo primero que debemos saber es que las firmas digitales se basan en la criptografía de la clave pública o criptografía asimétrica. En la mayoría de firmas digitales encontramos tres algoritmos involucrados en el proceso.

  • Generación de dos claves matemáticamente vinculadas. Se trata del algoritmo que proporciona una clave privada junto a una clave pública correspondiente.
  • La firma. Se trata de un algoritmo que crea una firma al recibir una clave privada y el mensaje que se va a firmar.
  • Verificación. Se trata de un algoritmo que comprueba la autenticidad del mensaje al verificarlo junto a su clave pública y firma.

Para comenzar a entender su funcionamiento debemos entender los conceptos básicos que intervienen en el proceso. Uno de ellos son las funciones Hash. El proceso en sí se llama Hashing y es uno de los elementos más importantes. A través del Hashing se transforman datos de cualquier tamaño en una combinación de números y letras de extensión fija.

Todo ello es posible gracias a los algoritmos llamados funciones hash. La combinación generada por la función se denomina valor hash. Este algoritmo combinado con la criptografía generan lo que llamamos valor hash lo cual funciona como huella digital única. Debido a esta huella digital, cualquier cambio realizado en el mensaje generará un valor hash completamente distinto al original. Por ello una función hash es utilizada para verificar la autenticidad de los datos inteligentes. Los algoritmos Hash más utilizados en este proceso son el MD5 y el SHA-1. El estrago resultante tiene una longitud que varía entre los 128 y 160 bits. 

La segunda parte de su funcionamiento se trata de la Firma. Una vez se ha sometido toda la información al proceso de hashing el emisor del mensaje debe firmar la información. En este proceso entra la criptografía de clave pública y clave privada. Una vez tenemos el extracto, se somete al cifrado a través de la clave privada del autor. Para este proceso se suele utilizar el algoritmo RSA.

Una vez se ha sometido a este algoritmo obtendremos un extracto cifrado con la clave pública del autor. Este será añadido al final del texto verificando así la autoría e integridad del mensaje para el usuario que tenga la clave pública del autor del mismo.

Comprobar la validez de una firma digital

Para comprobar la validez de una firma digital es necesaria la clave pública del autor del texto. Para comprobar su integridad se realiza el siguiente proceso: el software del usuario receptor se encarga de descifrar el extracto cifrado del creador del documento y a continuación se calcula el extracto hash que corresponde al contenido. 

Cuando tengamos el resultado del hash comprobaremos si este coincide con el extracto anteriormente cifrado. Si ambos extractos coinciden, el mensaje sería válido, en caso contrario, significa que el documento estuvo sometido a alguna modificación posterior a su firma.

Ventajas y desventajas de las firmas digitales

Como todo proceso, las firmas digitales cuentan con sus propias ventajas y desventajas. A continuación veremos las más importantes:

Ventajas:

  • Ahorrar tiempo. Cualquier usuario puede firmar los documentos desde su dispositivo en el momento de redactarlo.
  • Transparencia. Ayuda a mejorar la transparencia en los procesos, ya que incluye una alta seguridad basada en funciones Hash.
  • Sostenible. Este método influye directamente en el ahorro de papel y de electricidad debido a que se evita la constante impresión de documentos.
  • Flexibilidad. Este método nos permite firmar documentos desde cualquier lugar y desde cualquier dispositivo.
  • Mayor garantía. Este método impide que el documento se firme de forma ilícita o que se falsifique.

Desventajas:

  • Riesgo de hackeo. Aunque si somos responsables los riesgos son pocos, como todo producto tecnológico, puede ser hackeada.
  • Deben emitirse por un organismo confiable encargado de guardar las claves y protegerlas de hackeos.