home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_i / draft-ietf-ipsec-ciph-idea-cbc-00.txt < prev    next >
Text File  |  1997-07-22  |  13KB  |  438 lines

  1.  
  2.  
  3.  
  4. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  5.  
  6.  
  7.  
  8.  
  9. Security Working Group                            Ipsec Working Group
  10. INTERNET DRAFT                                              Rob Adams
  11.                                                    Cisco Systems Inc.
  12.                                                          23 June 1997
  13.                                                 Expires in Six Months
  14.  
  15.  
  16.  
  17.             The ESP IDEA-CBC Algorithm Using Explicit IV
  18.                <draft-ietf-ipsec-ciph-idea-cbc-00.txt>
  19.  
  20.  
  21. Status of this Memo
  22.  
  23.    This document is a submission to the IETF Internet Protocol
  24.    Security (IPSEC) Working Group. Comments are solicited and should
  25.    be addressed to the working group mailing list (ipsec@tis.com) or
  26.    to the editor.
  27.  
  28.    This document is an Internet-Draft.  Internet Drafts are working
  29.    documents of the Internet Engineering Task Force (IETF), its
  30.    areas, and its working Groups. Note that other groups may also
  31.    distribute working documents as Internet Drafts.
  32.  
  33.    Internet-Drafts draft documents are valid for a maximum of six
  34.    months and may be updated, replaced, or obsolete by other
  35.    documents at any time. It is inappropriate to use Internet-Drafts
  36.    as reference material or to cite them other than as "work in
  37.    progress."
  38.  
  39.    To learn the current status of any Internet-Draft, please check
  40.    the "1id-abstracts.txt" listing contained in the Internet-Drafts
  41.    Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net
  42.    (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East
  43.    Coast), or ftp.isi.edu (US West Coast).
  44.  
  45.    Distribution of this memo is unlimited.
  46.  
  47.  
  48. Abstract
  49.  
  50.    This draft describes the use of the IDEA [Schneier] block cipher
  51.    algorithm in CBC mode with the IPSec Encapsulating Security
  52.    Payload (ESP) [Kent97].
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59. R. Adams                                                     [Page 1]
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  67.  
  68.  
  69.  
  70. Table of Contents:
  71.  
  72.  
  73.    1. Introduction.................................................2
  74.      1.1 Specification of Requirements.............................2
  75.    2. Cipher Algorithm.............................................2
  76.      2.1 Rounds....................................................3
  77.      2.2 Background................................................3
  78.      2.3 Performance...............................................3
  79.    3. Key Size.....................................................5
  80.      3.1 Weak Keys.................................................5
  81.    4. ESP Payload..................................................5
  82.      4.1 Block Size and Padding....................................5
  83.      4.2 Interaction with Authentication...........................5
  84.    5. Keying Material..............................................5
  85.    6. Security Considerations......................................6
  86.    7. Reference....................................................6
  87.    8. Acknowledgments..............................................7
  88.    9. Editor's Address.............................................7
  89.  
  90.  
  91.  
  92. 1. Introduction
  93.  
  94.    This draft describes the use of the IDEA cipher algorithm in CBC
  95.    mode to provide confidentiality in conjunction with the IPsec ESP
  96.    protocol [Kent97].
  97.  
  98.    This document assumes readers are familiar with the terms and
  99.    concepts in [RFC-1825] and in [Kent97].
  100.  
  101. 1.1 Specification of Requirements
  102.  
  103.    The keywords "MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD
  104.    NOT", and "MAY" that appear in this document are to be interpreted
  105.    as described in [RFC-2119].
  106.  
  107. 2. Cipher Algorithm
  108.  
  109.    This document gives implementers specific instructions for using
  110.    the IDEA block cipher algorithm in CBC mode with a block size of
  111.    64 bits as described in [Schneier] to secure ESP.
  112.  
  113.    The IDEA algorithm is patented in Europe and in the United States
  114.    with patent application pending in Japan.  Licenses are required
  115.    for commercial uses of IDEA.
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122. R. Adams                                                     [Page 2]
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  130.  
  131.  
  132.    For patent and licensing information, contact:
  133.  
  134.         Ascom Systec AG,
  135.         Dept. CMVV
  136.         Gewerbepark, CH-5506
  137.         Magenwil, Switzerland
  138.         Phone: +41 64 56 59 83
  139.         Fax: +41 64 56 59 90
  140.         idea@ascom.ch
  141.  
  142.    or see
  143.  
  144.         http://www.ascom.ch/Web/systec/policy/normal/exhibit1.html
  145.  
  146.  
  147. 2.1 Rounds
  148.  
  149.    Compliant implementations may use either four or eight round IDEA.
  150.  
  151.    The key exchange protocol SHOULD negotiate the number of rounds
  152.    for IDEA. Only four and eight round IDEA are valid.  If the key
  153.    exchange protocol does not negotiate the number rounds, eight
  154.    round IDEA is the default.
  155.  
  156.    Although there are no known attacks against four round IDEA, those
  157.    choosing to use four round IDEA for performance reasons, may wish
  158.    shorten key lifetimes via site specific policy.
  159.  
  160. 2.2 Background
  161.  
  162.    Xuejia Lai and James Massey developed the IDEA (International Data
  163.    Encryption Algorithm) algorithm.  The algorithm is described in
  164.    detail in [Lai] and [Schneier].
  165.  
  166.  
  167. 2.3 Performance
  168.  
  169.    Normal eight round IDEA is approximately twice as fast DES on 386
  170.    and 486 processors.  However on a Pentium, both eight round IDEA
  171.    and 56 bit key, 16 round DES require about the same number of
  172.    clock cycles per byte encrypted.
  173.  
  174.    Four round IDEA is twice as fast as eight round IDEA.
  175.  
  176.    For a comparison table of the speed of IDEA and other cipher
  177.    algorithms, see [Schneier97].
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185. R. Adams                                                     [Page 3]
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  193.  
  194.  
  195. 3. Key Size
  196.  
  197.    IDEA accepts 128 bits of keying material to generate sub-keys.
  198.    IDEA may also accept keying material of sufficient length to set
  199.    its sub-keys directly.  Eight round IDEA uses 52, 16 bit sub-keys
  200.    or 832 bits of keying material.  Four round IDEA uses 28, 16 bit
  201.    sub-keys or 448 bits of keying material.
  202.  
  203.    Implementations MAY accept keys shorter or longer than 128 bits.
  204.    Implementations MUST not accept keying material shorter than 40
  205.    bits in length.
  206.  
  207. 3.1 Weak Keys
  208.  
  209.    IDEA has weak keys of the following form:
  210.  
  211.                 0000,0000,0x00,0000,0000,000x,xxxx,x000
  212.  
  213.    where "x" can be any hexadecimal number.
  214.  
  215.    Keys of this form guarantee the value of bit-wise XOR of resultant
  216.    ciphertext pairs from the bit-wise XOR of certain plaintext pairs.
  217.    Implementations MUST prohibit weak keys even though the
  218.    probability of randomly generating such a key is quite small.  If
  219.    the key manager provides the implementation with a weak key, the
  220.    implementation MUST XOR each of the generated encryption sub-keys
  221.    with the value 0x0dae before generating the decryption sub-key set
  222.    [Cryto93]. Implementations may choose to prohibit weak keys by
  223.    rejecting weak keys altogether and requesting new keying material.
  224.  
  225.    Weak keys cannot be detected if the sub-keys are set directly.
  226.  
  227. 4. ESP Payload
  228.  
  229.    IDEA in CBC mode requires an initialization vector of eight octets
  230.    for use with ESP [Kent97].  The IV MUST precede the data to be
  231.    encrypted in the packet and must be eight octets (64 bits) in
  232.    length.  The IV SHOULD be chosen at random. Common practice is to
  233.    use random data for the first IV and the last eight octets of
  234.    encrypted data from an encryption process as the IV for the next
  235.    encryption process.
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248. R. Adams                                                     [Page 4]
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  256.  
  257.  
  258.    The payload field, as defined in [Kent97], is broken down
  259.    according to the following diagram:
  260.  
  261.    +---------------+---------------+---------------+---------------+
  262.    |                                                               |
  263.    +                     Initialization Vector                     +
  264.    |                                                               |
  265.    +---------------+---------------+---------------+---------------+
  266.    |                                                               |
  267.    ~               Encrypted Payload (Variable length)             ~
  268.    |                                                               |
  269.    +---------------+---------------+---------------+---------------+
  270.     1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
  271.  
  272.  
  273. 4.1 Block Size and Padding
  274.  
  275.  
  276.    The IDEA-CBC cipher algorithm MUST use a block size of eight
  277.    octets (64 bits).
  278.  
  279.    Padding is used to align the payload type and pad length octets as
  280.    specified in [Kent97].  Padding must be sufficient to align the
  281.    data to be encrypted to an eight octet (64 bit) boundary.
  282.  
  283. 4.2 Interaction with Authentication
  284.  
  285.    This IDEA-CBC ESP document does not limit which authentication
  286.    algorithm ESP uses.
  287.  
  288. 5. Keying Material
  289.  
  290.    The key exchange protocol MUST provide this ESP algorithm with a
  291.    number of key material bits greater than or equal to the required
  292.    key size.
  293.  
  294.    If the key exchange protocol does not negotiate key size, the key
  295.    MUST be 128 bits in length.
  296.  
  297.    This ESP algorithm will take the IDEA-CBC key from the first <x>
  298.    bits of keying material, where <x> represents the required key
  299.    size in bits.
  300.  
  301.    If the required key size is less than 128 bits, the implementation
  302.    MUST extend the keying material by concatenating it with itself
  303.    until the concatenated length is greater than or equal to 128
  304.    bits.  If the concatenated length is greater than 128 bits,
  305.    implementations MUST truncate the new keying material to 128 bits.
  306.    Note however that this technique significantly weakens IDEA. It is
  307.    suggested that any keys derived in this manner should have short
  308.    lifetimes.
  309.  
  310.  
  311. R. Adams                                                     [Page 5]
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  319.  
  320.  
  321.    If the required key size is 128 bits, derive the key schedule
  322.    normally, according the IDEA specification [Lai].
  323.  
  324.    Two keying material sizes above 128 bits are valid.  448 bits of
  325.    keying material is valid for four round IDEA.  832 bits of keying
  326.    material is valid for eight round IDEA.
  327.  
  328.    If the required key size is between 128 bits and the valid size
  329.    for the number of rounds being used, implementations MUST ignore
  330.    bits of keying material beyond 128 bits.
  331.  
  332.    If the required key size is greater than 128 bits and valid for
  333.    the number of rounds being used, implementations MUST set the IDEA
  334.    encryption key schedule directly from the keying material provided
  335.    by the key exchange protocol.  Set the first IDEA encryption sub-
  336.    key from the first 16 bits of keying material, and so on. In this
  337.    case, implementations MUST set the decryption key schedule from
  338.    the encryption key schedule normally.
  339.  
  340.    Implementations MUST ignore bits of keying material beyond the
  341.    number of valid bits for the number of rounds being used.
  342.  
  343.  
  344. 6. Security Considerations
  345.  
  346.    IDEA is thought to be a secure encryption algorithm. Currently
  347.    there are no known attacks on four or eight round IDEA [Schneier].
  348.  
  349. 7. Reference
  350.  
  351.    [Crypto93] Daeman, J., Govaerts, R., and Vandewalle, J. "Weak Keys
  352.    for IDEA", Advances in Cryptology, CRYPTO 93 Proceedings,
  353.    Springer-Verlag, 1994, pp. 224-230.
  354.  
  355.    [Kent97] Kent, S., Atkinson, R., "IP Encapsulating Security
  356.    Payload (ESP)", ftp://ietf.org/internet-drafts/draft-ietf-ipsec-
  357.    new-esp-00.txt, March 1997
  358.  
  359.    [Lai] Lai, X. "On the Design and Security of Block Ciphers", ETH
  360.    Series in Information Processing, v. 1, Konstanz: Hartung-Gorre
  361.    Verlag, 1992.
  362.  
  363.    [RFC-1825] Atkinson, R. "Security Architecture for the Internet
  364.    Protocol", ftp://ds.internic.net/rfc/rfc1825.txt, August 1995.
  365.  
  366.    [RFC-2085] Oehler, M., Glenn, R., "HMAC-MD5 IP Authentication with
  367.    Replay Prevention," ftp://ds.internic.net/rfc/rfc2085.txt,
  368.    February 1997.
  369.  
  370.  
  371.  
  372.  
  373.  
  374. R. Adams                                                     [Page 6]
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381. Internet Draft         The ESP IDEA Algorithm            23 June 1997
  382.  
  383.  
  384.    [RFC-2119] Bradner, S., "Key words for use in RFCs to indicate
  385.    Requirement Levels", ftp://ds.internic.net/rfc/rfc2119.txt, March
  386.    1997
  387.  
  388.    [Schneier] Schneier, B., "Applied Cryptography Second Edition",
  389.    John Wiley & Sons, New York, NY, 1995.  ISBN 0-471-12845-7
  390.  
  391.    [Scheier97] Scheier, B. "Speed Comparisons of Block Ciphers on a
  392.    Pentium." February 1997, http://www.counterpane.com/speed.html
  393.  
  394.  
  395.  
  396. 8. Acknowledgments
  397.  
  398.  
  399.    This document is based on work done in the IPsec working group and
  400.    suggestions from Roy Pereira.
  401.  
  402.    The IPSec working group can be contacted through its chairs:
  403.  
  404.         Robert Moskowitz
  405.         Rgm3@chrysler.com
  406.         Chrysler Corporation
  407.  
  408.         Theodore Y. Tso
  409.         Tytso@MIT.EDU
  410.         Massachusetts Institute of Technology
  411.  
  412.    or via the IPSec working group's mailing list (ipsec@tis.com).
  413.  
  414. 9. Editors Address
  415.  
  416.    Rob Adams
  417.    adams@cisco.com
  418.    cisco Systems Inc.
  419.    101 Cooper St.
  420.    Santa Cruz, CA 95060
  421.    United States of America
  422.    +1 408 457 5397
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437. R. Adams                                                     [Page 7]
  438.