CIPHERUNICORN-E
From Wikipedia, the free encyclopedia
Designer(s): | NEC |
---|---|
First published: | 1998 |
Successor(s): | CIPHERUNICORN-A |
Certification: | CRYPTREC |
Key size(s): | 128 bits |
Block size(s): | 64 bits |
Structure: | Feistel network |
Rounds: | 16 |
In cryptography, CIPHERUNICORN-E is a block cipher created by NEC in 1998. It is among the cryptographic techniques recommended for Japanese government use by CRYPTREC.
The algorithm has a 16-round modified Feistel network structure, with an additional key-dependent mixing function after every 2 rounds. The block size is 64 bits, and the key size 128 bits. The round function is fairly complicated, split into two nearly parallel computations. The first part (called the main stream by the designers) consists of XORs and S-box lookups, with a few choices influenced by the second part. This second function (called temporary key generation) uses more XORs and two operations which are equivalent to modular multiplications. Subkeys are added at various stages of both parts of the round function. There are 4 S-boxes in all, each with 8-bit inputs and outputs.
In 2000 NEC used the same high-level structure, with more elaborate components, to design the CIPHERUNICORN-A cipher.
CIPHERUNICORN-E's key schedule uses a nested Feistel network, based on some of the same building blocks as the cipher itself.
The complexity of CIPHERUNICORN-E'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.
[edit] References
- ISO/IEC9979-0019 Register Entry (PDF), registered 1998-07-06 (includes sample implementation source code)
- Matt Robshaw (2001-12-14). "A Cryptographic Review of CIPHERUNICORN-E" (PDF). Retrieved on 2007-01-21.
- David Wagner (2001-12-17). "An Evaluation of the Security of CIPHERUNICORN-E Against Certain Attacks" (PDF). Retrieved on 2007-01-21.