Unformatted text preview: it values. This Sbox has a special property: The highorder byte of all the entries is a permutation of all possible bytes, and the loworder 3 bytes are random. First, generate the Sbox entries, Si, from the key. Then initialize four registers with the key (or with another key): a0, b0, c0, and d0. To generate a 32bit keystream word, Ki: Ki = di The ciphertext word Ci, is the plaintext word, Pi XORed with Ki. Then, update the four registers: ai+1 = M(ai,di) bi+1 = M(bi,ai+1) ci+1 = M(ci,bi+1) di+1 = M(di,ci+1) Function M is M(x,y) = (x + y) >> 8 • S(x+y) ^ 255 This is shown in Figure 17.2. The operation >> is a right shift, not a rotation. The loworder 8 bits of x + y are the input into the Sbox. Wheeler gives a procedure for generating the Sbox, but it isn’t really complete. Any algorithm to generate random bytes and a random permutation will work. Figure 17.2 Wake. WAKE’s biggest asset is that it is fast. However, it’s insecure against a chosenplaintext or chosenciphertext attack. It is being used in the current version of Dr. Solomon’s AntiVirus program. 17.4 Feedback with Carry Shift Registers
A feedback with carry shift register, or FCSR, is similar to a LFSR. Both have a shift register and a feedback function; the difference is that a FCSR also has a carry register (see Figure 17.3). Instead of XORing all the bits in the tap sequence, add the bits together and add in the contents of the carry register. The result mod 2 becomes the new bit. The result divided by 2 becomes the new content of the carry register. Figure 17.4 is an example of a 3bit FCSR tapped at the first and second bit. Its initial value is 001, and the initial contents of the carry register is 0. The output bit is the rightmost bit of the shift register. Shift Register 001 100 010 101 110 111 011 101 010 001 000 100 Carry Register 0 0 0 0 0 0 1 1 1 1 1 0 Figure 17.3 Feedback with carry shift register. Note that the final internal state (including the contents of the carry register) is the same as the second internal state. The sequence cycles at this point, and has a period of 10. Previous Table of Contents Next Products  Contact Us  About Us  Privacy  Ad Info  Home Use of this site is subject to certain Terms & Conditions, Copyright © 19962000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Read EarthWeb's privacy statement. To access...
View
Full
Document
This note was uploaded on 10/18/2010 for the course MATH CS 301 taught by Professor Aliulger during the Fall '10 term at Koç University.
 Fall '10
 ALIULGER
 Cryptography

Click to edit the document details