Jump to content

Cellular Message Encryption Algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Ntsimp (talk | contribs) at 16:58, 6 August 2007 (References: wikilink CRYPTO, clarify page numbers, reformat date). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
CMEA
General
DesignersJames A. Reeds III
First published1991
Cipher detail
Key sizes64 bits
Block sizes16-64 bits
Rounds3
Best public cryptanalysis
All block sizes: chosen-plaintext attack using 338 chosen plaintexts

24-bit blocks: known-plaintext attack using 40-80 known plaintexts

16-bit blocks: known-plaintext attack using 4 known plaintexts

In cryptography, the Cellular Message Encryption Algorithm (CMEA) is a block cipher which was used for securing mobile phones in the United States. CMEA is one of four cryptographic primitives specified in a Telecommunications Industry Association (TIA) standard, and is designed to encrypt the control channel, rather than the voice data. In 1997, a group of cryptographers (Wagner et al., 1997) published attacks on the cipher showing it had several weaknesses. Some accusations were made that the NSA had pressured the original designers into crippling CMEA, but the NSA has denied any role in the design or selection of the algorithm. The ECMEA and SCEMA ciphers are derived from CMEA.

CMEA is described in U.S. patent 5,159,634. It is byte-oriented, with variable block size, typically 2 to 6 bytes. The key size is only 64 bits. Both of these are unusually small for a modern cipher. The algorithm consists of only 3 passes over the data: a non-linear left-to-right diffusion operation, an unkeyed linear mixing, and another non-linear diffusion that is in fact the inverse of the first. The non-linear operations use a keyed lookup table called the T-box, which uses an unkeyed lookup table called the CaveTable. The algorithm is self-inverse; re-encrypting the ciphertext with the same key is equivalent to decrypting it.

CMEA is severely insecure. There is a chosen-plaintext attack, effective for all block sizes, using 338 chosen plaintexts. For 3-byte blocks (typically used to encrypt each dialled digit), there is a known-plaintext attack using 40 to 80 known plaintexts. For 2-byte blocks, 4 known plaintexts suffice.

See also

References

  • David Wagner, Bruce Schneier, John Kelsey (August 1997). "Cryptanalysis of the Cellular Message Encryption Algorithm" (PDF/PostScript). Advances in Cryptology - CRYPTO '97, 17th Annual International Cryptology Conference. Santa Barbara, California. pp. pp.526–537. Retrieved 2007-02-07. {{cite conference}}: |pages= has extra text (help); Unknown parameter |booktitle= ignored (|book-title= suggested) (help)CS1 maint: multiple names: authors list (link)