Block cipher: Difference between revisions
imported>Sandy Harris (wkilink to full name rather than DES) |
imported>Sandy Harris (add detail) |
||
Line 8: | Line 8: | ||
The Block Cipher Lounge [http://www2.mat.dtu.dk/people/Lars.R.Knudsen/bc.html] web site has more information. | The Block Cipher Lounge [http://www2.mat.dtu.dk/people/Lars.R.Knudsen/bc.html] web site has more information. | ||
==Design principles === | |||
Nearly all block ciphers use iteration; define some relatively simple transformation and apply it repeatedly to create the cipher. At setup time the '''primary key''' undergoes '''key scheduling''' giving a number of '''round keys'''. The actual cipher then has multiple '''rounds''', each applying the same transformation to the output of the previous round and the round key for the current round. Some ciphers have an additional step before or after the set of rounds, exclusive-ORing additional key material into the plaintext or ciphertext; this is known as '''whitening'''. | |||
== Well-known block ciphers == | |||
=== DES === | |||
The [[Data Encryption Standard]], DES, is among the the best known and most thoroughly analysed block ciphers. It was invented by [[IBM]], and was made a US government standard for non-classified government data and for regulated industries such as banking, in the late 70s. From then until about the turn of the century, it was very widely used. However, it is now considered obsolete; its 56-bit key size makes it highly vulnerable to a [[brute force]] attack, given modern computers. Some applications still use [[Triple DES]], a variant which applies DES three times with two or three different keys. | |||
DES operates on 64-bit blocks and takes a 64-bit key. It is a [[Feistel cipher]] with 16 rounds and a 48-bit round key for each round, To generate the round keys, the 56-bit key is split into two 28-bit halves and those halves are circularly shifted after each round by one or two bits. Then 48 bits from them are selected and permuted to form the round key. | |||
The generation of block ciphers which followed DES in the 80s and 90s -- such as the [[GOST cipher]], [[Blowfish]], [[CAST-128]] and [[IDEA]] -- nearly all used 64-bit blocks, like DES, but all used 128-bit or longer keys for better resistance to [[brute force]]. Some of their design principles came from analysis of DES. | |||
=== GOST === | |||
=== CAST === | |||
=== Blowfish === | |||
=== IDEA === | |||
IDEA Is the '''International Data Encryption Algorithm''', a European standard. | |||
=== AES === | |||
In the late 90s, the US [[National Institute of Standards and Technology]] ran a contest to find a block cipher to replace DES. The result is the [[Advanced Encryption Standard]]. AES. | |||
In October 299, they announced [http://www.nist.gov/public_affairs/releases/g00-176.htm] the winner — '''Rijndael''' (pronounced approximately "rhine doll"), from two Belgian designers. The NIST page on AES [http://csrc.nist.gov/archive/aes/rijndael/wsdindex.html] has much detail. |
Revision as of 03:56, 20 October 2008
A block cipher is a symmetric cipher that operates on fixed-size blocks of plaintext, giving a block of ciphertext for each. The other main type of cipher is a stream cipher, which generates a stream of keying material to be mixed with messages. Block ciphers can be used in various modes when multiple block are to be encrypted.
The Data Encryption Standard, DES, is among the the best known and most thoroughly analysed block ciphers. It was invented by IBM, and was made a US government standard for non-classified government data and for regulated industries such as banking, in the late 70s. From then until about the turn of the century, it was very widely used. However, it is now considered obsolete; its 56-bit key size makes it highly vulnerable to a brute force attack, given modern computers. Some applications still use Triple DES, a variant which applies DES three times with two or three different keys.
The generation of block ciphers which followed DES in the 80s and 90s -- such as Blowfish, CAST-128 and IDEA -- nearly all used 64-bit blocks, like DES, but all used 128-bit or longer keys for better resistance to brute force. Some of their design principles came from analysis of DES.
The Advanced Encryption Standard, AES, is the block cipher which replaced DES as a US government standard in 2000. It uses 128-bit blocks and supports key sizes up to 256 bits. NIST, the National Institute of Standards and Technology, ran a contest to find the right cipher for their new standard; there were entries from all over the world and an extensive analysis process. The winner, Rijndael, from two Belgian designers, became AES.
The Block Cipher Lounge [1] web site has more information.
Design principles =
Nearly all block ciphers use iteration; define some relatively simple transformation and apply it repeatedly to create the cipher. At setup time the primary key undergoes key scheduling giving a number of round keys. The actual cipher then has multiple rounds, each applying the same transformation to the output of the previous round and the round key for the current round. Some ciphers have an additional step before or after the set of rounds, exclusive-ORing additional key material into the plaintext or ciphertext; this is known as whitening.
Well-known block ciphers
DES
The Data Encryption Standard, DES, is among the the best known and most thoroughly analysed block ciphers. It was invented by IBM, and was made a US government standard for non-classified government data and for regulated industries such as banking, in the late 70s. From then until about the turn of the century, it was very widely used. However, it is now considered obsolete; its 56-bit key size makes it highly vulnerable to a brute force attack, given modern computers. Some applications still use Triple DES, a variant which applies DES three times with two or three different keys.
DES operates on 64-bit blocks and takes a 64-bit key. It is a Feistel cipher with 16 rounds and a 48-bit round key for each round, To generate the round keys, the 56-bit key is split into two 28-bit halves and those halves are circularly shifted after each round by one or two bits. Then 48 bits from them are selected and permuted to form the round key.
The generation of block ciphers which followed DES in the 80s and 90s -- such as the GOST cipher, Blowfish, CAST-128 and IDEA -- nearly all used 64-bit blocks, like DES, but all used 128-bit or longer keys for better resistance to brute force. Some of their design principles came from analysis of DES.
GOST
CAST
Blowfish
IDEA
IDEA Is the International Data Encryption Algorithm, a European standard.
AES
In the late 90s, the US National Institute of Standards and Technology ran a contest to find a block cipher to replace DES. The result is the Advanced Encryption Standard. AES.
In October 299, they announced [2] the winner — Rijndael (pronounced approximately "rhine doll"), from two Belgian designers. The NIST page on AES [3] has much detail.