O Dilithium é um esquema de assinatura digital baseado em reticulado que protege os dados contra as ameaças da computação quântica. Ele se baseia na família CRYSTALS (Cryptographic Suite for Algebraic Lattices) dos algoritmos da Criptografia pós-quântica (PQC). Ele é especialmente adequado para a proteção contra ataques de tipo chosen-message (mensagem escolhida).
Como o Dilithium baseia-se na dureza dos problemas de reticulado em comparação aos módulos de reticulado, ele é um esquema de PQC que é muito mais rápido do que os esquemas baseados em hash, e é fácil de implementar, porque não precisa de amostragem Gaussiana.
Na base, o Dilithium funciona com o Fiat-Shamir with Aborts de Lyubashevsky para seu esquema de reticulado. Esse paradigma repete as execuções até verificar uma iteração de loop que não é cancelada. O resultado do uso desse protocolo é uma chave pública consideravelmente menor, o que resulta em segurança e eficiência mais altas com menor consumo de energia.
Ao contrário de outros esquemas de assinatura do PQC, as versões mais recentes do Dilithium usam AES-256 em vez de SHAKE. Isso fornece uma matriz expandida e um vetor de criação. O AES-256 também é usado para amostrar polinômios de segredos.
Variantes do Dilithium:
Dilithium2-AES
Dilithium3-AES
Dilithium5-AES
Os inventores do Dilithium recomendam o Dilithium 3-AES, porque ele atinge ao menos 128 bits de segurança em relação aos ataques clássicos e quânticos.
Em 2016, o National Institute of Standards and Technology (NIST) dos Estados Unidos divulgou uma convocação de propostas, solicitando a apresentação de esquemas criptográficos pós-quânticos. As apresentações da primeira rodada foram encerradas em 30 de novembro de 2017. Dezenas de esquemas foram apresentadas e consideradas.
O CRYSTALS-Dilithium foi um dos quatro esquemas recomendados pelo NIST como um padrão aceito para a PQC, e um dos únicos três recomendados para assinatura digital.