COCONUT98
# COCONUT98

In crittografia il COCONUT98, acronimo di Cipher Organized with Cute Operations and N-Universal Transformation, è un cifrario a blocchi progettato da Serge Vaudenay nel 1998. È stato uno dei primi algoritmi a cui è stata applicata la teoria della decorrelazione di Vaudenay: è stato sviluppato per essere provatamente sicuro contro la crittanalisi differenziale, la crittanalisi lineare ed anche contro alcuni tipi di attacchi crittografici ancora non scoperti.

## Struttura

Il cifrario utilizza blocchi dati di 64 bit e chiavi lunghe 256 bit. La sua struttura base è imperniata su una rete di Feistel ad 8 passaggi ma con un algoritmo aggiuntivo dopo i primi 4 passaggi denominato modulo decorrelazionale: questo consiste in una trasformazione affine nel campo finito $GF(2^{64})$ dipendente dalla chiave.

La funzione di ogni passaggio utilizza moltiplicazioni ed addizioni modulari, rotazione dei bit, operazioni di XOR ed una singola S-box da 8×24 bit: i valori in ingresso della S-box sono derivati dall'espansione binaria della costante e.

## Sicurezza

Nonostante le intenzioni di Vaudenay riguardo alla sicurezza del COCONUT98, nel 1999 David Wagner ha violato il cifrario con l'attacco a boomerang, un nuovo tipo di attacco crittografico inventato per l'occasione. Questo attacco, comunque, richiede sia testi in chiaro scelti che testi cifrati scelti adattivamente, risultando alla fine puramente teorico.

Nel 2002, invece, Eli Biham ad altri autori hanno pubblicato i risultati di un attacco differenziale-lineare, un attacco con testo in chiaro scelto, capace di violare il cifrario. Lo stesso gruppo di studiosi ha anche sviluppato quello che essi chiamano un attacco a boomerang correlato alla chiave, capace di distinguere il COCONUT98 da un blocco di dati casuali utilizzando quattro testi scelti adattivamente correlati a due chiavi, una coppia di testi in chiaro ed una coppia di testi cifrati..

