This preview shows pages 1–7. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: Block Ciphers c circlecopyrt Eli Biham  August 18, 2010 82 Block Ciphers (4) Block Ciphers and Stream Ciphers In practical ciphers the plaintext M is divided into fixedlength blocks M = M 1 M 2 ...M N . Then, each block M i is encrypted to the ciphertext block C i = E K ( M i ), and the results are concatenated to the ciphertext C = C 1 C 2 ...C N . There are two major kind of ciphers, which differ in the way the plaintexts are encrypted: c circlecopyrt Eli Biham  August 18, 2010 83 Block Ciphers (4) † Stream Ciphers The blocks are encrypted sequentially, each block is encrypted by a distinct transformation, which might depend on 1. the previous encrypted blocks, 2. the previous transformation, 3. the block number, 4. the key. This information from one block is kept in memory between the encryption of this block and the succeeding block, for use during the encryption of the succeeding block. Usually, stream ciphers use blocks of either one bit or eight bits (one character). c circlecopyrt Eli Biham  August 18, 2010 84 Block Ciphers (4) Block Ciphers All the blocks are encrypted in the same way, under exactly the same transfor mation (no memory): C 1 = E ( M 1 ), C 2 = E ( M 2 ), etc. Encryption transformation should not be vulnerable to known plaintext attacks. Attacker should not be able to collect (almost) all the plaintext/ciphertext blocks pairs, keep the transformation table T ( M ) = C , and use it to en crypt/decrypt if they do not know the mathematical formulation of the trans formation (and in particular the key). Thus, the block size should be large , and the number of distinct possible values in a plaintext block should be larger than the minimal allowed complexity of an attack. In the past blocks of 64 bits were used, which have 2 64 possibilities, whose table storing costs at least 2 64 known plaintexts and memory space. Nowadays, the standard block size is 128 bits. c circlecopyrt Eli Biham  August 18, 2010 85 Block Ciphers (4) Block Ciphers Block ciphers are substitution ciphers in which the plaintext and the cipher text blocks are binary vectors of length N . When N = 64 there are 2 64 different plaintexts/ciphertexts, and when N = 128 there are 2 128 different plaintexts/ciphertexts. For each key the encryption function E K ( · ) is a permutation from { , 1 } N to itself. D K ( · ) is the decryption function (the inverse permutation), such that D K ( E K ( · )) = E K ( D K ( · )) = Identity. c circlecopyrt Eli Biham  August 18, 2010 86 Block Ciphers (4) The Data Encryption Standard  DES 1. The most widely used cipher in civilian applications. 2. Developed by IBM; Evolved from Lucifer. 3. Accepted as an US NBS standard in 1977, and later as an international standard....
View
Full
Document
This note was uploaded on 04/14/2011 for the course CS 236506 taught by Professor Yanivcarmeli during the Spring '11 term at Technion.
 Spring '11
 YanivCarmeli

Click to edit the document details