CBC-MAC
Um código de autenticação de mensagem baseado no modo CBC, que só é seguro para mensagens de tamanho fixo.
O CBC-MAC passa a mensagem por uma cifra de bloco no modo CBC e guarda apenas o último bloco como tag. A construção é simples e foi usada por anos em padrões como o ISO/IEC 9797-1. Mas tem uma falha séria: se as mensagens puderem ter tamanhos diferentes, um atacante que já viu uma tag válida muitas vezes consegue forjar outra para uma mensagem mais longa.
A correção é o CMAC, especificado na NIST SP 800-38B, que acrescenta uma transformação final dependente da chave e lida com tamanhos variáveis com segurança.