CIPHERUNICORNA
this wiki
Template:Infobox block cipher In cryptography, CIPHERUNICORNA is a block cipher created by NEC in 2000. It is among the cryptographic techniques recommended for Japanese government use by CRYPTREC.
The algorithm uses a 16round Feistel network structure similar to its predecessor, CIPHERUNICORNE, but with significant changes. The block size is 128 bits, with key sizes of 128, 192, or 256 bits. The round function is even more complicated than that of CIPHERUNICORNE, but the extra mixing function between rounds has been removed. The round function is still split into two nearly parallel computations; both of these are Feistel networks themselves. The first part (the main stream) is a 10round Feistel network, using 4 8×8bit Sboxes much like the ones from CIPHERUNICORNE. The last two rounds of the main stream are influenced by the output of the second part (the temporary key generation function). This second, 6round Feistel network uses modular multiplication, as well as 2 of the Sboxes. In contrast to CIPHERUNICORNE, subkeys are added in only at the beginning of each main round.
The key schedule of CIPHERUNICORNA makes repeated use of a function called MT, using modular multiplication and all of the Sboxes. A flaw was discovered in the key schedule, such that certain keys are equivalent, but it is unknown just how much of a weakness this is.
The great complexity of CIPHERUNICORNA's round function has made it difficult to analyze. Some limited analysis has been done on simplified variants, showing that they are likely resistant to both differential and linear cryptanalysis.
ReferencesEdit
