La Firma de Lamport es un esquema de firma digital de un solo uso, inventada por Leslie Lamport en 1979.
[1] La firma se aplica sobre mensajes sin efectuar ninguna modificación previa de los mismos.
La esquema de firma de Lamport utiliza un juego de claves, compuesto por una clave privada y una clave pública.
La clave privada es un conjunto de
La clave pública es otro conjunto de
elementos, formados, generalmente, por la aplicación de una función hash a cada elemento privado.
Para firmar un documento, se aplica una función hash al documento del que se obtienen
bits, y se utilizan para seleccionar
elementos de la clave pública.
La firma de Lamport se debe utilizar una sola vez por cada juego de claves.
Sin embargo, combinado el esquema de firma de Lamport con un Árbol de Merkle, un solo juego de claves podría usarse para firmar varios mensajes, lo que la convierte en un esquema de firma digital bastante eficiente.
El desarrollo potencial de la computación cuántica amenaza la seguridad de muchas formas comunes de criptografía como RSA, pero se cree que las firmas de Lamport estarían seguras si se usan, como componentes de las claves, valores de tamaño adecuado.
A continuación se muestra una descripción de cómo funciona una firma Lamport, en notación matemática.
Notar que el "mensaje" en esta descripción es un bloque de
datos siendo posiblemente (pero no necesariamente) el resultado de aplicar una función hash al mensaje que realmente se quiere firmar.
un entero positivo y sea
el bloque descriptor del mensaje:
Quien necesite validar la firma debe verificar que: Se debe conservar los elementos privados que forman la firma, la clave pública y el mensaje original para futuras validaciones.
Para que Eva pueda falsificar una firma, debe poder invertir los valores de la clave pública.
Y esto se asume como un problema computacionalmente inviable si se usan valores de tamaño adecuado.
El primer inconveniente es que se debe utilizar cada juego de claves una sola vez.
La razón es que al firmar se hacen visibles los
elementos privados que generaron los
Es decir, se exponen el 50% de los elementos que forman la clave privada, por lo tanto una vez que se firma un documento no se debe reutilizar el juego de clave pública y privada.
Además se debe destruir el 50% remanente de elementos privados que forman la clave privada y no que fueron expuestos.
Otro inconvenientes es el de la excesiva longitud de las claves y la firma.