El cifrado simétrico DES se basa en una red Feistel que funciona repetidamente en las mitades de 32 bits del bloque de 64 bits. El uso de Feistel significa que la función "mangler" utilizada no necesita ser invertible.
La función "mangler" opera expandiendo una palabra de 32 bits a 48 bits a través de un algoritmo simple. Estos 48 bits se combinan con una clave y luego se vuelven a convertir a 32 bits a través de S-boxes. Las cajas S obviamente no son invertibles, ya que toman una entrada de 6 bits y producen una salida de 4 bits.
Pero es toda la construcción invertible. Suponiendo que la clave sea fija, ¿cada entrada de 32 bits a la función "mangler" se asigna a una salida distinta de 32 bits? ¿O es que algunas salidas de 32 bits nunca son producidas por la función mangler, por lo que no pueden invertirse?