L'attacco a boomerang è basato sulla crittanalisi differenziale. Nella crittanalisi differenziale un attaccante esplora in che modo le differenze nei dati forniti in ingresso ad un cifrario (il testo in chiaro) possono incidere sulle differenze risultanti nei dati in uscita (il testo cifrato): è necessaria però un "differenziale" (cioè una differenza nei dati in ingresso che produrrà verosimilmente una differenza in quelli in uscita) ad alta probabilità che coinvolga tutto, o quasi tutto, il cifrario. L'attacco a boomerang, invece, permette l'uso di differenziali che coinvolgono solo una parte del cifrario.
L'attacco tenta di creare una particolare struttura detta "a quartetto" in un punto a metà del cifrario. Per questo scopo, definiamo che l'azione di cifratura E del cifrario possa essere divisa in 2 fasi consecutive, E0 ed E1, tali che E(M) = E1(E0(M)), dove M è un messaggio in chiaro.
Supponiamo di avere 2 differenziali per le 2 fasi; possiamo allora definire:
per E0, e
per E1-1 (l'azione di decifratura di E1).
L'attacco di base procede come segue:
si sceglie un testo in chiaro casuale e si calcola ;
si richiedono le cifrature di e per ottenere e ;
si calcola e ;
si richiedono le decifrature di e per ottenere e ;
si compara e : quando i differenziali non mutano più, allora si ha .