Xmx
{{Short description|Block cipher}}
{{other uses|XMX (disambiguation)}}
{{lowercase|xmx}}
{{Infobox block cipher
| name = xmx
| designers = David M'Raïhi, David Naccache, Jacques Stern, Serge Vaudenay
| publish date = January 1997
| derived from =
| derived to =
| related to =
| key size = variable, equal to block size
| block size = variable
| structure =
| rounds = variable, even
| cryptanalysis = differential cryptanalysis, complementation property, weak keys
}}
In cryptography, xmx is a block cipher designed in 1997 by David
M'Raïhi, David Naccache, Jacques Stern, and Serge Vaudenay. According to the
designers it "uses public-key-like operations as confusion and diffusion means." The
cipher was designed for efficiency, and the only operations it uses are XORs
The main parameters of xmx are variable, including the
block size and key size, which are equal, as well
as the number of rounds. In addition to the key, it also makes
use of an odd modulus n which is small enough to fit in a single block.
The round function is f(m)=(moa)·b mod n, where a and b are
subkeys and b is coprime to n. Here moa represents an operation that
equals m XOR a, if that is less than n, and otherwise equals m. This is a simple
invertible operation: moaoa = m. The xmx cipher consists
of an even number of iterations of the round function, followed by a final o
with an additional subkey.
The key schedule is very simple, using the same key for all the multipliers, and
three different subkeys for the others: the key itself for the first half of the
cipher, its multiplicative inverse mod n for the last half, and the XOR of these two
for the middle subkey.
The designers defined four specific variants of xmx:
- Standard: 512-bit block size, 8 rounds, n=2512-1
- High security: 768-bit block size, 12 rounds, n=2768-1
- Very-high security: 1024-bit block size, 16 rounds, n=21024-1
- Challenge: 256-bit block size, 8 rounds, n=(280-1)·2176+157
Borisov, et al., using a multiplicative form of differential cryptanalysis, found a
complementation property for any variant of xmx, like the first three above, such that
n=2k-1, where k is the block size. They also found large weak key classes
for the Challenge variant, and for many other moduli.
References
- {{cite conference
|author1=David M'Raïhi |author2=David Naccache |author3=Jacques Stern |author4=Serge Vaudenay | title = xmx: A Firmware-Oriented Block Cipher Based on Modular Multiplications
| conference = 4th International Workshop on Fast Software Encryption (FSE '97)
| pages = 166–171
| publisher = Springer-Verlag
| date = January 1997
| location = Haifa
| url = http://citeseer.ist.psu.edu/19207.html
| format = PDF/PostScript
| access-date = 3 January 2007
}}
- {{cite conference
| author = Nikita Borisov, Monica Chew, Rob Johnson, David Wagner
| title = Multiplicative Differentials
| conference = 9th International Workshop on Fast Software Encryption (FSE '02)
| pages = 17–33
| publisher = Springer-Verlag
| date = February 2002
| location = Leuven
| url = http://citeseer.ist.psu.edu/672650.html
| format = PDF/PostScript
| access-date = 3 January 2007
}}
{{Cryptography navbox | block}}