Firma Digital y Autenticación
¿Qué es?
Una firma digital no es una imagen de una firma manuscrita pegada en un documento — es un mecanismo matemático que vincula de forma única un mensaje (o transacción) con la clave privada de un emisor específico. Es el pilar detrás de las billeteras (wallets) y la validación de transacciones en cualquier red blockchain.
¿Para qué sirve? — 3 propiedades fundamentales
- Autenticidad: prueba matemática de que la transacción fue generada por el dueño de la clave privada correspondiente.
- Integridad: si el mensaje cambia aunque sea por un solo bit tras ser firmado, la firma queda invalidada de inmediato.
- No repudio: el emisor no puede negar haber autorizado la transacción, ya que es el único custodio de la clave privada que generó esa firma.
Forma de uso — el proceso matemático
Combina funciones hash (Programa 12) con cifrado asimétrico (Programa 11):
Paso 1 — Generación de la firma (emisor)
- Hash del mensaje: el emisor pasa la transacción por una función hash para obtener una huella digital fija.
- Cifrado del hash: el emisor cifra ese hash con su clave privada. El resultado es la firma digital.
- Envío: se transmite a la red el mensaje original junto con la firma digital.
Paso 2 — Verificación (red / nodos)
- Calcular hash local: cualquier nodo calcula el hash del mensaje recibido.
- Descifrar la firma: el nodo usa la clave pública del emisor para descifrar la firma y obtener el hash original.
- Validación: si ambos hashes coinciden, la red confirma que la transacción es auténtica y no fue alterada.
Ejemplo resuelto
Escenario: Mateo quiere enviar 0.5 BTC a Sofía. ¿Cómo valida la red que el pago realmente proviene de Mateo y no de un atacante?
- Construcción: Mateo genera la orden de transacción: "Mateo envía 0.5 BTC a Sofía".
- Firmado: su billetera aplica la función hash a la orden y cifra ese resumen con la clave privada de Mateo.
- Propagación: la orden y la firma se transmiten a los nodos de la red.
- Verificación: un nodo usa la clave pública de Mateo (pública en la blockchain) para validar la firma. Al confirmar que coincide con el hash del mensaje, la transacción se aprueba — sin que Mateo haya revelado su clave privada en ningún momento.
Conecta 3 conceptos ya vistos — Criptografía (Programa 11), la lección extra de RSA, y Hash (Programa 12) — para mostrar cómo se combinan en la pieza que realmente valida una transacción en Blockchain (Programa 13).
Con esto ya tienes las piezas criptográficas completas: cifrado, hash y firma digital. El siguiente paso es ver cómo se organizan en bloques enlazados — Blockchain.
¿Quieres ir más a fondo?
En el curso completo profundizamos en cada bloque de la Serie Conceptos Clave, con más ejemplos y ejercicios.
Ver el curso — próximamente