XCBC-MAC
El parche que hizo seguro CBC-MAC para mensajes de cualquier longitud, a cambio de cargar con tres claves.
John Black y Phillip Rogaway lo presentaron en CRYPTO 2000. El CBC-MAC clásico solo es seguro si todos los mensajes miden lo mismo; con longitudes variables, un atacante puede empalmar dos mensajes etiquetados y obtener un tercero con etiqueta válida. XCBC lo arregla aplicando XOR al último bloque con una de dos claves adicionales antes de cifrarlo, según si el mensaje necesitó relleno o no.
AES-XCBC-MAC-96 se convirtió en RFC 3566 en 2003 y se usó en IPsec. Tres claves independientes resultaban incómodas, y el OMAC de Iwata y Kurosawa mostró cómo derivar las adicionales de una sola. De ahí salió CMAC, que en la práctica ha sustituido a XCBC.