Dilithium es un esquema de firma digital basado en retículos que protege los datos de las amenazas que plantea la informática cuántica. Se basa en la familia CRYSTALS (Cryptographic Suite for Algebraic Lattices) de algoritmos de criptografía poscuántica (PQC) y resulta especialmente útil para proteger de los ataques de mensaje escogido.
Dado que Dilithium se basa en la dificultad de resolver los problemas de retículos sobre retículos modulares, es un esquema PQC mucho más rápido que los basados en hash. Además, es fácil de implementar porque no es necesario realizar un muestreo gaussiano.
En esencia, el esquema de retículos de Dilithium se basa en la heurística «Fiat-Shamir with Aborts» de Lyubashevsky. Este paradigma repite ejecuciones hasta verificar una iteración en bucle que no desencadene un aborto. Al utilizar este protocolo, se obtiene una clave pública considerablemente más corta, lo que se traduce en una mayor seguridad y eficiencia con un consumo energético más bajo.
A diferencia de otros esquemas de firma de PQC, las versiones de Dilithium más recientes utilizan AES-256 en lugar de SHAKE. Esto proporciona una matriz y un vector generador más amplios. AES-256 también se utiliza para hacer muestreos de polinomios secretos.
Variantes de Dilithium:
Dilithium2-AES
Dilithium3-AES
Dilithium5-AES
Los inventores de Dilithium recomiendan Dilithium3-AES, ya que alcanza un mínimo de 128 bits de seguridad frente a los ataques tradicionales y cuánticos.
En 2016, el Instituto Nacional de Normas y Tecnología (NIST) de EE. UU. publicó una solicitud de propuestas para la presentación de esquemas de criptografía poscuántica. La primera ronda de entregas se cerró el 30 de noviembre de 2017. Se presentaron y valoraron decenas de esquemas.
CRYSTALS-Dilithium fue uno de los cuatro esquemas recomendados por el NIST como estándar aceptado para la PQC, y uno de los solo tres que recomienda para la firma digital.