M8 (cipher)
Encyclopedia
In cryptography
, M8 is a block cipher
designed by Hitachi
in 1999. It is a modification of Hitachi's earlier M6
algorithm, designed for greater security and high performance in both hardware and 32-bit software implementations.
Like M6, M8 is a 10-round Feistel cipher
with a block size
of 64 bits. The round function can include bit rotations, XORs, and modular addition
, but the structure of each round function used is determined by the key
. Making these variations key-dependent is intended to make cryptanalysis
more difficult (see FROG
for a similar design philosophy).
Cryptography
Cryptography is the practice and study of techniques for secure communication in the presence of third parties...
, M8 is a block cipher
Block cipher
In cryptography, a block cipher is a symmetric key cipher operating on fixed-length groups of bits, called blocks, with an unvarying transformation. A block cipher encryption algorithm might take a 128-bit block of plaintext as input, and output a corresponding 128-bit block of ciphertext...
designed by Hitachi
Hitachi, Ltd.
is a Japanese multinational conglomerate headquartered in Marunouchi 1-chome, Chiyoda, Tokyo, Japan. The company is the parent of the Hitachi Group as part of the larger DKB Group companies...
in 1999. It is a modification of Hitachi's earlier M6
M6 (cipher)
In cryptography, M6 is a block cipher proposed by Hitachi in 1997 for use in the IEEE 1394 FireWire standard. The design allows some freedom in choosing a few of the cipher's operations, so M6 is considered a family of ciphers....
algorithm, designed for greater security and high performance in both hardware and 32-bit software implementations.
Like M6, M8 is a 10-round Feistel cipher
Feistel cipher
In cryptography, a Feistel cipher is a symmetric structure used in the construction of block ciphers, named after the German-born physicist and cryptographer Horst Feistel who did pioneering research while working for IBM ; it is also commonly known as a Feistel network. A large proportion of block...
with a block size
Block size (cryptography)
In modern cryptography, symmetric key ciphers are generally divided into stream ciphers and block ciphers. Block ciphers operate on a fixed length string of bits. The length of this bit string is the block size...
of 64 bits. The round function can include bit rotations, XORs, and modular addition
Modular arithmetic
In mathematics, modular arithmetic is a system of arithmetic for integers, where numbers "wrap around" after they reach a certain value—the modulus....
, but the structure of each round function used is determined by the key
Key (cryptography)
In cryptography, a key is a piece of information that determines the functional output of a cryptographic algorithm or cipher. Without a key, the algorithm would produce no useful result. In encryption, a key specifies the particular transformation of plaintext into ciphertext, or vice versa...
. Making these variations key-dependent is intended to make cryptanalysis
Cryptanalysis
Cryptanalysis is the study of methods for obtaining the meaning of encrypted information, without access to the secret information that is normally required to do so. Typically, this involves knowing how the system works and finding a secret key...
more difficult (see FROG
FROG
In cryptography, FROG is a block cipher authored byGeorgoudis, Leroux and Chaves. The algorithm can work with any block size between 8 and 128 bytes, and supports key sizes between 5 and 125 bytes...
for a similar design philosophy).