CIPHERUNICORN-A
CIPHERUNICORN-A | |
---|---|
Generale | |
Progettisti | NEC |
Prima pubblicazione | 2000 |
Derivato da | CIPHERUNICORN-E |
Dettagli | |
Dimensione chiave | 128, 192 o 256 bit |
Dimensione blocco | 128 bit |
Struttura | Rete di Feistel nidificata |
Numero di passaggi | 16 |
Modifica dati su Wikidata · Manuale |
In crittografia il CIPHERUNICORN-A è un cifrario a blocchi creato nel 2000 da NEC. È tra le tecniche crittografiche raccomandate dal CRYPTREC per l'utilizzo da parte del governo Giapponese. Deriva dal cifrario CIPHERUNICORN-E, sviluppato nel 1998.
Struttura
L'algoritmo è basato su una struttura a rete di Feistel con 16 passaggi simile a quella del suo predecessore, ma con alcuni significativi cambiamenti. La dimensione del blocco è di 128 bit, la chiave può essere lunga 128, 192 o 256 bit.
La funzione dei passaggi è ancora più complicata di quella del CIPHERUNICORN-E, anche se è stata rimossa la funzione aggiuntiva di mescolamento dei bit presente ogni due passaggi. La funzione è sempre divisa in due flussi computazionali paralleli: entrambi sono reti di Feistel. Il primo flusso, denominata flusso principale, è una rete di Feistel a 10 passaggi che utilizza 4 S-box da 8×8 bit simili a quelle del CIPHERUNICORN-E. Gli ultimi 2 passaggi del flusso principale sono influenzati dall'output della seconda parte dell'altro flusso computazionale, denominato funzione di generazione della chiave temporanea. Quest'ultimo è una rete di Feistel a 6 passaggi che utilizza moltiplicazioni modulari e 2 delle S-box del cifrario.
A differenza del CIPHERUNICORN-E, le sotto-chiavi sono inserite nel flusso computazionale sono all'inizio di ogni passaggio principale.
Il gestore della chiave fa un uso ripetuto di una funzione denominata MT, basata sulla moltiplicazione modulare e su tutte le S-box.
Sicurezza
La complessità della funzione di ciclo del CIPHERUNICORN-A rende l'algoritmo difficile da analizzare: sono state realizzate solo poche analisi su versioni semplificate del cifrario che hanno mostrato come la sua struttura resiste bene sia alla crittanalisi differenziale che lineare[1]. Solo un difetto nel gestore della chiave è stato scoperto, difetto che può portare all'esistenza di chiavi equivalenti: non è nota, però, la portata di questa vulnerabilità.
Note
- ^ Matt Robshaw: A Cryptographic Review of CIPHERUNICORN-A Archiviato il 3 marzo 2016 in Internet Archive. - 2001
Voci correlate
Collegamenti esterni
- Implementazione di riferimento e derivata, su embeddedsw.net.
V · D · M | |
---|---|
Cifrari principali | AES · Blowfish · DES · IDEA · Serpent · Triple DES · TEA · Twofish |
Altri cifrari | 3-Way · ABC · Akelarre · Anubis · ARIA · BaseKing · BassOmatic · BATON · BEAR · C2 · Camellia · CAST-128 · CAST-256 · CIKS-1 · CIPHERUNICORN-A · CIPHERUNICORN-E · CLEFIA · CMEA · Cobra · COCONUT98 · Crab · CRYPTON · CS-Cipher · DEAL · DES-X · FEAL · GDES · GOST · IDEA NXT · Iraqi · Kalyna · KASUMI · Khafre · KHAZAD · Khufu · LION · LOKI89/91 · LOKI97 · Lucifer · MacGuffin · MAGENTA · MARS · MISTY1 · MMB · RC2 · RC5 · RC6 · Red Pike · S-1 · SAFER · SEED · SHARK · Skipjack · Square · XTEA · XXTEA |
Strutture | Cifrario del prodotto · Gestore della chiave · Rete a sostituzione e permutazione · Rete di Feistel · S-Box |
Varie | Dimensione del blocco · Dimensione della chiave · Key whitening · Modalità di funzionamento dei cifrari a blocchi · Vettore di inizializzazione |
Portale Crittografia · Progetto Crittografia · Cifrari a blocchi |