CyberGlossary

Criptografia

Twofish

Definição

Cifra simétrica de bloco de 128 bits e chaves de 128/192/256 bits desenhada por Schneier et al. como finalista do concurso AES; segura mas pouco usada porque o AES tornou-se norma.

O Twofish é uma cifra de bloco de estilo Feistel com 16 rondas, blocos de 128 bits e chaves de 128, 192 ou 256 bits, concebida por Bruce Schneier, Niels Ferguson, John Kelsey, Doug Whiting, David Wagner e Chris Hall. Foi um dos cinco finalistas do concurso AES (1997–2000) e usa S-boxes dependentes da chave, uma Transformada Pseudo-Hadamard e um key schedule complexo. Livre de patentes e royalties, mantém-se criptanaliticamente intacto, mas perdeu para o Rijndael sobretudo por questões de desempenho e simplicidade. Surge hoje em ferramentas como o TrueCrypt/VeraCrypt e o GnuPG como cifra alternativa. Os sistemas novos costumam escolher AES ou, para diversificação, AES combinado com uma cifra de fluxo como o ChaCha20.

Exemplos

  • O VeraCrypt permite encadear Twofish com AES e Serpent em cifragem em cascata.
  • O GnuPG suporta Twofish como uma das suas opções de cifragem simétrica.

Termos relacionados