Shacal

Shacal

riassunto
Designer Helena Handschuh , David Naccache
Prima pubblicazione 2001
Derivato da la funzione hash crittografica SHA-1
Crittografia basata su questo algoritmo no
Caratteristiche
Dimensioni blocco 160 bit
Lunghezza chiave Da 128 a 512 bit
Struttura funzione di compressione reversibile
Numero di giri 80

Migliore crittoanalisi

attacco rettangolo di Eli Biham et al. oltre 49 giri

Shacal-1 e Shacal-2 sono algoritmi di cifratura a blocchi basati su funzioni hash crittografiche di tipo SHA . Sono stati progettati da Helena Handschuh e David Naccache , crittografi presso il produttore di smart card Gemplus . Da allora hanno lasciato questa azienda.

Shacal-1 (originariamente chiamato semplicemente Shacal) è un codice a blocchi a 160 bit basato su SHA-1 e supporta chiavi da 128 a 512 bit . Shacal-2 è un codice a blocchi a 256 bit basato sulla funzione hash crittografica SHA-256 .

Nel 2003 , Shacal-2 è stato selezionato dal progetto Nessie come uno dei diciassette algoritmi consigliati.

Architettura

Shacal si basa sulle seguenti osservazioni SHA-1:

La funzione hash SHA-1 è strutturata attorno a una funzione di compressione. Questo richiede un registro a 160 bit e dati a 512 bit come input, quindi invia un altro registro a 160 bit come output. La funzione hash funziona ripetendo la funzione di compressione su blocchi di 512 bit e, ogni volta, aggiorna il registro di conseguenza. Questa funzione di compressione è facilmente reversibile se il blocco dati è noto, cioè conoscendo i dati e il risultato della compressione, è possibile calcolare il contenuto del registro di ingresso.

Shacal usa SHA-1 come funzione di cifratura a blocchi prendendo il registro di input come blocco di dati e i dati di input come chiave. In altre parole, Shacal reinterpreta la funzione di compressione di SHA-1 come un cifrario a blocchi a 160 bit , con una chiave a 512 bit . I tasti più brevi possono essere usati riempiendo 0 (zero) fino a 512 bit . Shacal non è destinato all'uso con chiavi inferiori a 128 bit .

Crittanalisi

Come ogni algoritmo di cifratura a blocchi , è possibile elaborare messaggi più lunghi concatenando i blocchi utilizzando modalità di cifratura come CBC , CTR o OFB . Se l'algoritmo resiste agli attacchi originali come la crittoanalisi lineare e differenziale , le varianti consentono di attaccare più torri.

Su Shacal-2 è stata applicata una combinazione delle due crittoanalisi differenziale-lineare . La squadra di Jongsung Kim ha esibito un attacco differenziale impossibile su 30 giri . Un attacco a rettangolo su 49 delle 80 torri è stato proposto da Eli Biham et al. Altri attacchi simili come l' attacco boomerang sono applicabili.

Riferimenti