Block cipher

In cryptography, a block cipher is a symmetric key cipher which operates on fixedlength groups of bits, termed blocks, with an unvarying transformation. When encrypting, a block cipher might take a (for example) 128bit block of plaintext as input, and output a corresponding 128bit block of ciphertext. The exact transformation is controlled using a second input — the secret key. Decryption is similar: the decryption algorithm takes a 128bit block of ciphertext together with the secret key, and yields the original 128bit block of plaintext.
To encrypt messages longer than the block size (128 bits in the above example), a mode of operation is used.
Block ciphers can be contrasted with stream ciphers; a stream cipher operates on individual digits one at a time, and the transformation varies during the encryption. The distinction between the two types is not always clearcut: a block cipher, when used in certain modes of operation, acts effectively as a stream cipher.
An early and highly influential block cipher design was the Data Encryption Standard (DES), developed at IBM and published as a standard in 1977. A successor to DES, the Advanced Encryption Standard (AES), was adopted in 2001.
Contents 
Generalities
A block cipher consists of two paired algorithms, one for encryption, E, and another for decryption, E^{1}. Both algorithms accept two inputs: a input block of size n bits and a key of size k bits, yielding an nbit output block. For any one fixed key, decryption is the inverse function of encryption, so that
 <math>E_K^{1}(E_K(M))=M<math>
for any block M and key K.
For each key K, E_{K} is a permutation (a bijective mapping) over the set of input blocks. Each key selects one permutation from the possible set of <math>2^n!<math>.
The block size, n, is typically 64 or 128 bits, although some ciphers have a variable block size. 64 bits was the most common length until the mid1990s, when new designs began to switch to the longer 128bit length. One of several modes of operation is generally used along with a padding scheme to allow plaintexts of arbitrary lengths to be encrypted. Each mode has different characteristics in regard to error propagation, ease of random access and vulnerability to certain types of attack. Typical key sizes (k) include 40, 56, 64, 80, 128, 192 and 256 bits. As of 2005, 80 bits is normally taken as the minimum key length needed to prevent brute force attacks.
Iterated block ciphers
Most block ciphers are constructed by repeatedly applying a simpler function. This approach is known as iterated block cipher (see also product cipher). Each iteration is termed a round, and the repeated function is termed the round function; anywhere between 4 to 32 rounds are typical.
Many block ciphers can be categorised as Feistel networks, or, as more general substitutionpermutation networks. Arithmetic operations, logical operations (especially XOR), Sboxes and various permutations are all frequently used as components.
History
Lucifer is generally considered to be the first civilian block cipher, developed at IBM in the 1970s based on work done by Horst Feistel. A revised version of the algorithm was adopted as a US government FIPS standard, the Data Encryption Standard (DES). It was chosen by the US National Bureau of Standards (NBS) after a public invitation for submissions and some internal changes by NBS (and, potentially, the NSA). DES was publicly released in 1976 and has been widely used.
DES was designed, among other things, to resist a certain cryptanalytic attack known to the NSA and rediscovered by IBM, though unknown publicly until rediscovered again and published by Eli Biham and Adi Shamir in the late 1980s. The technique is called differential cryptanalysis and remains one of the few general attacks against block ciphers; linear cryptanalysis is another, but may have been unknown even to NSA, prior to its publication by Mitsuru Matsui. DES prompted a large amount of other work and publications in cryptography and cryptanalysis in the open community and it inspired many new cipher designs.
DES has a block size of 64 bits and a key size of 56 bits. 64bit blocks became common in block cipher designs after DES. Key length depended on several factors, including government regulation. Many observers in the 1970s commented that the 56bit key length used for DES was too short. As time went on, its inadequacy became apparent, especially after a special purpose machine designed to break DES was demonstrated in 1998 by the Electronic Frontier Foundation. A variant of DES, 3DES, tripleencrypts blocks with (usually) two different keys, resulting in a 112bit key length. It was widely adopted as a replacement and is still (2004) considered secure.
DES has been superseded as a Federal Standard by the Advanced Encryption Standard (AES), adopted by National Institute of Standards and Technology (NIST) in 2001 after a 5year public competition. The cipher was developed by two Belgian cryptographers, Joan Daemen and Vincent Rijmen, and submitted under the name Rijndael. (See AES page for pronunciation.) AES has a block size of 128 bits and three possible key sizes, 128, 192 and 256 bits. The US Government permits the use of AES to protect classified information in systems aproved by NSA.
Cryptanalysis
In addition to linear and differential cryptanalysis, there is a growing catalog of attacks: truncated and partial differential cryptanalysis, slide attacks, boomerang attacks, square and integral attacks, the XSL attack, impossible differential cryptanalysis and algebraic attacks. For a new block cipher design to have any credibility, it must demonstrate evidence of security against known attacks.
See also
 Advanced Encryption Standard process
 Cryptography
 Cipher Block Chaining
 Confusion and diffusion
 Topics in Cryptography
External links
 A list of many symmetric algorithms, the majority of which are block ciphers. (http://www.users.zetnet.co.uk/hopwood/crypto/scan/cs.html)
 The block cipher lounge (http://www.mat.dtu.dk/people/Lars.R.Knudsen/bc.html)
 RSA FAQ, "What is a block cipher?" (http://www.rsasecurity.com/rsalabs/faq/214.html)
Block ciphers edit (https://academickids.com:443/encyclopedia/index.php?title=Template:Block_ciphers&action=edit) 
Algorithms: 3Way  AES  Akelarre  Blowfish  Camellia  CAST128  CAST256  CMEA  DEAL  DES  DESX  FEAL  FOX  FROG  GDES  GOST  ICE  IDEA  Iraqi  KASUMI  KHAZAD  Khufu and Khafre  LOKI89/91  LOKI97  Lucifer  MacGuffin  Madryga  MAGENTA  MARS  MISTY1  MMB  NewDES  RC2  RC5  RC6  REDOC  Red Pike  S1  SAFER  SEED  Serpent  SHACAL  SHARK  Skipjack  Square  TEA  Triple DES  Twofish  XTEA 
Design: Feistel network  Key schedule  Product cipher  Sbox  SPN Attacks: Brute force  Linear / Differential cryptanalysis  Mod n  XSL Standardisation: AES process  CRYPTREC  NESSIE Misc: Avalanche effect  Block size  IV  Key size  Modes of operation  Pilingup lemma  Weak key 
es:Cifrado por bloques it:Cifratura a blocchi nl:Blokvercijfering ja:ブロック暗号 pl:Szyfr blokowy