home *** CD-ROM | disk | FTP | other *** search
/ ftp.cse.unsw.edu.au / 2014.06.ftp.cse.unsw.edu.au.tar / ftp.cse.unsw.edu.au / pub / doc / algorithms / DES_Encryption next >
Internet Message Format  |  1992-10-18  |  6KB

  1. From lpb@csadfa.oz Thu Jul 14 17:26:09 1988
  2. Relay-Version: version B UNSW 1.1 19 Sep 1984; site elecvax.eecs.unsw.oz
  3. Path: elecvax!usage!ccadfa!csadfa!lpb
  4. From: lpb@csadfa.oz (Lawrie Brown)
  5. Newsgroups: sci.crypt
  6. Subject: Modes of DES (was Re: Feedback Chain Encipherment?)
  7. Message-ID: <1482@csadfa.oz>
  8. Date: 12 Jul 88 00:28:43 GMT
  9. Date-Received: Wed, 13 Jul 88 07:29:33 AEST
  10. References: <21400002@silver>
  11. Organization: Dept. of Computer Science, University College, UNSW, ADFA, Canberra, Australia
  12. Lines: 114
  13.  
  14. From article <21400002@silver>, by sl144007@silver.bacs.indiana.edu:
  15. >    I am sort of studying cryptology on my own, and today I ran across the
  16. > term 'feedback chain encipherment' while reading about the DES encryption
  17. > algorithm. Unfortunately the book did not explain the term. Can anyone out
  18. > there explain it to me, or if it is rather involved, recommend a book that
  19. > would explain it? (I have a fairly solid math background).
  20.     The DES "core" if you like, is a function which takes a 64-bit
  21. plaintext block, a 56-bit key, and produces a 64-bit ciphertext output. 
  22. ie:
  23.     C = DES(P, K)
  24.  
  25. There are a number of ways of using this core in an enciphering scheme. There
  26. are 4 techniques defined by ANSI for use:
  27.  
  28. The first two modes are for "block" ciphers:
  29.  
  30. i) Electronic Codebook Mode (ECB) - this is the simplest. You break your
  31.     message into 64-bit blocks, encrypt and send each separately. There
  32.     is no linkage between blocks, hence errors in one will not propogate
  33.     to others. This is probably the least secure form, since the error
  34.     propogation is needed to detect message repeats etc. It also is very
  35.     bad at enciphering regular patterns of data (eg images). Mainly used
  36.     when single blocks (often authenticators) need to be exchanged.
  37.     ie:     C(i) = DES(P(i), K),    i>0
  38.  
  39. ii) CipherBlock Chaining (CBC) - in this mode the message is also divided
  40.     into 64-bit blocks. However, before each block is enciphered, it is
  41.     XOR'd with the previous ciphertext block, and is then enciphered and
  42.     transmitted. The first block is XOR'd with an Initialization Vector
  43.     (IV) which is specified as part of the scheme.
  44.     ie:    C(i) = DES((P(i) XOR C(i-1)), K), C(0) = IV, i>0
  45.     To decrypt, first decipher C(1) then XOR with IV to recover original
  46.     message, etc. This scheme ensures that each block is a function of all
  47.     previous blocks, and prevents replays of the data. This is the mode
  48.     specified for use in EFT applications etc., where data is organized
  49.     in regular blocks.
  50.  
  51. The remaining two modes are used in stream ciphers, typically on 1-byte (8-bits)
  52.     of data at a time.
  53.  
  54. iii) Ciphertext Feedback Mode (CFB) - the ciphertext output is formed by the
  55.     XOR of n-bits of input message (typically 1 or 8) and n-bits of DES
  56.     output. The input of the DES module at each step is the (64-n) bits
  57.     of the previous input shifted left by n bits, and OR'd with the n-bits
  58.     of the previous ciphertext. Again an Initialization Vector is used in
  59.     the first step.
  60.     ie:    C(i) = P(i) XOR (n-bits of DES(((I(i-1) << n) | C(i-1)), K)),
  61.             I(0) = IV, i>0
  62.     Again every ciphertext block is a function of all previous blocks.
  63.     This scheme is used when the message is a bit or byte stream rather than
  64.     a series of blocks. It is obviously less efficient than CBC by a factor
  65.     of 64/n since only n-bits are used from the DES stage at each step.
  66.  
  67. iv) Output Feedback Mode (OFB) - is very similar, save in the feedback loop.
  68.     The ciphertext output is formed by the XOR of n-bits of input message
  69.     (typically 1 or 8) and n-bits of DES output. The input of the DES
  70.     module at each step is the (64-n) bits of the previous input shifted
  71.     left by n bits, and OR'd with the n-bits of the previous DES output
  72.     (this is the difference from CFB mode). Again an Initialization Vector
  73.     is used in the first step.
  74.     ie:    D(i) = n-bits of DES(((I(i-1) << n) | D(i-1)), K)
  75.         C(i) = P(i) XOR D(i), I(0) = IV, i>0
  76.     Again every ciphertext block is a function of all previous blocks.
  77.     This scheme is used when the message is a bit or byte stream rather than
  78.     a series of blocks. It differs from CFB in that the "keystream" D(i),
  79.     can be computed independently of the message stream, which is useful in
  80.     some applications.
  81.  
  82. As for references - well as you have noted discussion of all the DES modes
  83. is rather sparse on the ground. The best reference is the ANSI standards
  84. themselves:
  85.  
  86.     ANSI X3.92-1981 - The Data Encryption Algorithm
  87.     ANSI X3.106-1983 - Data Encryption Algorithm, Modes of Operation
  88.  
  89. I also suggest the following articles:
  90.  
  91. C. R. Abbruscato, "Data Encryption Equipment", IEEE Communications Magazine
  92.     Vol. 22, No. 9, Sept. 1984, pp15-21.
  93.  
  94. M. Davio, Y. Desmedt, et al. "Analytic Characteristics of the DES", 
  95.     in Advances in Cryptology - Proc. of Crypto 83, pp 171-202,
  96.     Plenum Press, New York.
  97.  
  98. F Hoornaert, J. Goubert, Y. Desmedt, "Efficient Hardware Inplementation of DES",
  99.     in Advances in Cryptology - Proc. of Crypto 84, pp 147-173,
  100.     Springer-Verlag, Berlin.
  101.  
  102. and finally some of the good books on cryptography are:
  103.  
  104. J. Seberry, J. Pieprzyk, "Cryptography: An Introduction to Computer Security",
  105.     Addison-Wesley, 1988. (to appear in the very near future).
  106.  
  107. D. E. Denning, "Cryptography and Data Security", Addison-Wesley, 1982.
  108.  
  109. C. H. Meyer, S. M. Matyas, "Cryptography: A New Dimension in Computer Security",
  110.     John Wiley & Sons. 1982.
  111.  
  112.     Hope this is of interest.
  113.  
  114.     Regards
  115.     Lawrie Brown.
  116.  
  117.  
  118. ----
  119. Mr. Lawrie Brown,        Phone ISD:   +61 62 688167   Fax: +61 62 470702
  120. Dept. Computer Science,        Telex:         ADFADM AA62030
  121. University College, UNSW,    ACSNET/CSNET:    lpb@cs.adfa.oz
  122. Aust. Defence Force Academy,    UUCP:        ...!uunet!munnari!cs.adfa.oz!lpb
  123. Canberra. ACT 2600.        ARPA:        lpb%cs.adfa.oz@uunet.uu.net
  124. AUSTRALIA            JANET:        lpb@oz.csadfa
  125.                 Other Gateways:    see CACM 29(10) Oct. 1986
  126.