home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_s_z / draft-simpson-photuris-schemes-00.txt < prev    next >
Text File  |  1996-04-19  |  19KB  |  552 lines

  1.  
  2.  
  3. Network Working Group                                             P Karn
  4. Internet Draft                                                  Qualcomm
  5.                                                              W A Simpson
  6.                                                               DayDreamer
  7. expires in six months                                         April 1996
  8.  
  9.  
  10.                 Photuris Schemes and Privacy Protection
  11.                draft-simpson-photuris-schemes-00.txt
  12.  
  13.  
  14. Status of this Memo
  15.  
  16.    Distribution of this memo is unlimited.
  17.  
  18.    This document is an Internet-Draft.  Internet Drafts are working doc-
  19.    uments of the Internet Engineering Task Force (IETF), its Areas, and
  20.    its Working Groups.  Note that other groups may also distribute work-
  21.    ing documents as Internet Drafts.
  22.  
  23.    Internet Drafts are draft documents valid for a maximum of six
  24.    months, and may be updated, replaced, or obsoleted by other documents
  25.    at any time.  It is not appropriate to use Internet Drafts as refer-
  26.    ence material, or to cite them other than as a ``working draft'' or
  27.    ``work in progress.''
  28.  
  29.    To learn the current status of any Internet-Draft, please check the
  30.    ``1id-abstracts.txt'' listing contained in the internet-drafts Shadow
  31.    Directories on:
  32.  
  33.       ftp.is.co.za (Africa)
  34.       nic.nordu.net (Europe)
  35.       ds.internic.net (US East Coast)
  36.       ftp.isi.edu (US West Coast)
  37.       munnari.oz.au (Pacific Rim)
  38.  
  39.  
  40. Abstract
  41.  
  42.    Photuris is an experimental session-key management protocol intended
  43.    for use with the IP Security Protocols (AH and ESP).  Extensible
  44.    Exchange Schemes are provided to enable future implementation changes
  45.    without affecting the basic protocol.  An important improvement in
  46.    security is provided by protecting exchanges with encryption.
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54. Karn & Simpson            expires in six months                 [Page i]
  55. DRAFT                       Photuris Schemes                  April 1996
  56.  
  57.  
  58. 1.  Party Privacy Protection
  59.  
  60.    Although each IP datagram carries a cleartext IP Destination, the
  61.    ultimate destination can be hidden by "laundering" it through an
  62.    encrypted tunnel.  The IP Source could be hidden in the same manner.
  63.    If the IP Source has been dynamically allocated, it provides no use-
  64.    ful information to an eavesdropper.
  65.  
  66.    This leaves the identifying information that the parties send during
  67.    the Photuris [Firefly] Identification Exchange.  One would often like
  68.    to deny this information to an eavesdropper, especially when this
  69.    would reveal the location of a mobile user.
  70.  
  71.    The identification can be easily protected by encrypting the Identi-
  72.    fication Exchange with the shared-secret just established.  This
  73.    keeps a passive eavesdropper from learning the identities of the par-
  74.    ties, either directly from the certificates or by checking signatures
  75.    against a known database of public keys.
  76.  
  77.    The scheme is not foolproof.  By posing as the Responder, an active
  78.    attacker could trick the Initiator into revealing its identity.
  79.  
  80.    However, this active attack is considerably more difficult than pas-
  81.    sive vacuum-cleaner monitoring.  As in the Clogging Defense, this
  82.    attack requires appropriating a physical link, or subverting Internet
  83.    routing.
  84.  
  85.    Unless the attacker can steal the private/secret key belonging to the
  86.    Responder, the Initiator will discover the deception when verifying
  87.    the Identification Exchange.
  88.  
  89.    Nota Bene:
  90.       It is not possible for an Initiator to similarly trick the Respon-
  91.       der.  The Responder will verify the Initiator Identification
  92.       before returning its own identity.
  93.  
  94.       This facility is distinct from party anonymity, where one of the
  95.       parties refuses to identify itself to the other.  Mutual party
  96.       identification is fundamental to the security of this protocol.
  97.  
  98.  
  99. 1.1.  Identification Exchange
  100.  
  101.    Identification Exchange messages are encrypted and decrypted using
  102.    the Privacy-Method indicated by the current Scheme-Choice (see "Addi-
  103.    tional Exchange Schemes").
  104.  
  105.    The Privacy-Method specified key generation cryptographic hash is
  106.  
  107.  
  108.  
  109. Karn & Simpson            expires in six months                 [Page 1]
  110. DRAFT                       Photuris Schemes                  April 1996
  111.  
  112.  
  113.    used to create a special privacy session-key.  This hash is calcu-
  114.    lated over the following concatenated values:
  115.  
  116.     + the computed shared-secret,
  117.     + the Initiator Cookie,
  118.     + the Responder Cookie,
  119.     + the SPI Owner (receiver) Exchange-Value,
  120.     + the SPI User (sender) Exchange-Value,
  121.     + the computed shared-secret again.
  122.  
  123.    Since the order of the Exchange-Value fields is different in each
  124.    direction, the resulting privacy session-key will usually be differ-
  125.    ent in each direction.
  126.  
  127.    When a larger number of keying-bits are needed than are available
  128.    from the specified cryptographic hash, these keying-bits are gener-
  129.    ated by duplicating the trailing shared-secret, and recalculating the
  130.    hash.  That is, the first hash will have one trailing copy of the
  131.    shared-secret, the second hash will have two trailing copies of the
  132.    shared-secret, and so forth.
  133.  
  134.    Implementation Notes:
  135.  
  136.       This is separate from any encryption method specified for Security
  137.       Associations.
  138.  
  139.       The fields protected, the length of the Padding (if any), and
  140.       other details are dependent on the Privacy-Method.  See the "Pri-
  141.       vacy Methods".
  142.  
  143.       The hash of the Exchange-Value includes both the Size and Value
  144.       fields.
  145.  
  146.  
  147. 1.2.  SPI Messages
  148.  
  149.    SPI Messages are encrypted and decrypted in the same fashion speci-
  150.    fied for Identification Exchange messages.
  151.  
  152.  
  153. 2.  Additional Exchange Schemes
  154.  
  155.    The packet format and basic facilities are already defined for Pho-
  156.    turis [Firefly].
  157.  
  158.    These optional exchange schemes are specified separately, and no sin-
  159.    gle implementation is expected to support all of them.
  160.  
  161.  
  162.  
  163.  
  164. Karn & Simpson            expires in six months                 [Page 2]
  165. DRAFT                       Photuris Schemes                  April 1996
  166.  
  167.  
  168.    Up-to-date values for the Exchange Schemes will be specified in the
  169.    most recent "Assigned Numbers" [RFC-1700].  This document defines the
  170.    following values:
  171.  
  172.    (3)   Implementation Optional.  Any modulus (p) with a recommended
  173.          generator (g) of 3.  The modulus is contained in the Exchange
  174.          Scheme Value field in the list of Offered-Schemes.
  175.  
  176.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  177.          is "not protected".
  178.  
  179.          The "SPI Messages" Validity-Method is "MD5-DP".
  180.  
  181.    (4)   Implementation Optional.  Any modulus (p) with a recommended
  182.          generator (g) of 2.  The modulus is contained in the Exchange
  183.          Scheme Value field in the list of Offered-Schemes.
  184.  
  185.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  186.          is "DES-CBC with secret IV".
  187.  
  188.          The "SPI Messages" Validity-Method is "MD5-DP".
  189.  
  190.    (5)   Implementation Optional.  Any modulus (p) with a recommended
  191.          generator (g) of 5.  The modulus is contained in the Exchange
  192.          Scheme Value field in the list of Offered-Schemes.
  193.  
  194.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  195.          is "not protected".
  196.  
  197.          The "SPI Messages" Validity-Method is "MD5-DP".
  198.  
  199.    (6)   Implementation Optional.  Any modulus (p) with a recommended
  200.          generator (g) of 3.  The modulus is contained in the Exchange
  201.          Scheme Value field in the list of Offered-Schemes.
  202.  
  203.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  204.          is "DES-CBC with secret IV".
  205.  
  206.          The "SPI Messages" Validity-Method is "MD5-DP".
  207.  
  208.    (7)   Implementation Optional.  Any modulus (p) with a variable gen-
  209.          erator (g).  The generator has the same number of significant
  210.          bits as the modulus.  The modulus is followed by (concatenated
  211.          to) the generator, and the variable number of significant bits
  212.          are contained in the Exchange Scheme Value field in the list of
  213.          Offered-Schemes.
  214.  
  215.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  216.  
  217.  
  218.  
  219. Karn & Simpson            expires in six months                 [Page 3]
  220. DRAFT                       Photuris Schemes                  April 1996
  221.  
  222.  
  223.          is "not protected".
  224.  
  225.          The "SPI Messages" Validity-Method is "MD5-DP".
  226.  
  227.    (8)   Implementation Optional.  Any modulus (p) with a recommended
  228.          generator (g) of 2.  The modulus is contained in the Exchange
  229.          Scheme Value field in the list of Offered-Schemes.
  230.  
  231.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  232.          is "Triple DES-CBC with secret IV".
  233.  
  234.          The "SPI Messages" Validity-Method is "SHA1-DP".
  235.  
  236.    (10)  Implementation Optional.  Any modulus (p) with a recommended
  237.          generator (g) of 5.  The modulus is contained in the Exchange
  238.          Scheme Value field in the list of Offered-Schemes.
  239.  
  240.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  241.          is "DES-CBC with secret IV".
  242.  
  243.          The "SPI Messages" Validity-Method is "MD5-DP".
  244.  
  245.    (12)  Implementation Optional.  Any modulus (p) with a recommended
  246.          generator (g) of 3.  The modulus is contained in the Exchange
  247.          Scheme Value field in the list of Offered-Schemes.
  248.  
  249.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  250.          is "Triple DES-CBC with secret IV".
  251.  
  252.          The "SPI Messages" Validity-Method is "SHA1-DP".
  253.  
  254.    (14)  Implementation Optional.  Any modulus (p) with a variable gen-
  255.          erator (g).  The generator has the same number of significant
  256.          bits as the modulus.  The modulus is followed by (concatenated
  257.          to) the generator, and the variable number of significant bits
  258.          are contained in the Exchange Scheme Value field in the list of
  259.          Offered-Schemes.
  260.  
  261.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  262.          is "DES-CBC with secret IV".
  263.  
  264.          The "SPI Messages" Validity-Method is "MD5-DP".
  265.  
  266.    (20)  Implementation Optional.  Any modulus (p) with a recommended
  267.          generator (g) of 5.  The modulus is contained in the Exchange
  268.          Scheme Value field in the list of Offered-Schemes.
  269.  
  270.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  271.  
  272.  
  273.  
  274. Karn & Simpson            expires in six months                 [Page 4]
  275. DRAFT                       Photuris Schemes                  April 1996
  276.  
  277.  
  278.          is "Triple DES-CBC with secret IV".
  279.  
  280.          The "SPI Messages" Validity-Method is "SHA1-DP".
  281.  
  282.    (28)  Implementation Optional.  Any modulus (p) with a variable gen-
  283.          erator (g).  The generator has the same number of significant
  284.          bits as the modulus.  The modulus is followed by (concatenated
  285.          to) the generator, and the variable number of significant bits
  286.          are contained in the Exchange Scheme Value field in the list of
  287.          Offered-Schemes.
  288.  
  289.          The "Identification Exchange" and "SPI Messages" Privacy-Method
  290.          is "Triple DES-CBC with secret IV".
  291.  
  292.          The "SPI Messages" Validity-Method is "SHA1-DP".
  293.  
  294.  
  295.  
  296. 3.  Privacy Methods
  297. 3.1.  DES-CBC with secret IV
  298.  
  299.    MD5 [RFC-1321] is used as the key generation cryptographic hash for
  300.    generating the privacy session-key, as described in "Party Privacy
  301.    Protection".  The most significant 64-bits of the generated hash are
  302.    used for the key.  The least significant bit of each key octet is
  303.    ignored (or set to parity when the implementation requires).
  304.  
  305.    The least significant 64-bits of the generated hash are used for the
  306.    Initialization Vector (IV).  For each message, this is logically
  307.    XOR'd with the concatenated message Type, LifeTime, and SPI fields,
  308.    and then used for the message IV.
  309.  
  310.    Message encryption begins with the next field after the SPI, and con-
  311.    tinues to the end of the data indicated by the UDP Length.
  312.  
  313.  
  314. 3.2.  Triple DES-CBC with secret IV
  315.  
  316.    This method indicates outer-CBC EDE encryption (and DED decryption)
  317.    with three 56-bit keys [KR96].
  318.  
  319.    MD5 [RFC-1321] is used as the key generation cryptographic hash for
  320.    generating the three privacy session-keys, as described in "Party
  321.    Privacy Protection".  The most significant 64-bits of the first gen-
  322.    erated hash are used for the first session-key.  The least signifi-
  323.    cant 64-bits of the first generated hash are used for the second ses-
  324.    sion-key.  The most significant 64-bits of the second generated hash
  325.    are used for the third session-key.  In all three keys, the least
  326.  
  327.  
  328.  
  329. Karn & Simpson            expires in six months                 [Page 5]
  330. DRAFT                       Photuris Schemes                  April 1996
  331.  
  332.  
  333.    significant bit of each key octet is ignored (or set to parity when
  334.    the implementation requires).
  335.  
  336.    The least significant 64-bits of the generated hash are used for the
  337.    Initialization Vector (IV).  For each message, this is logically
  338.    XOR'd with the concatenated message Type, LifeTime, and SPI fields,
  339.    and then used for the message IV.
  340.  
  341.    Message encryption begins with the next field after the SPI, and con-
  342.    tinues to the end of the data indicated by the UDP Length.
  343.  
  344.  
  345. 4.  Validity Methods
  346. 4.1.  SHA1-DP
  347.  
  348.    As described in [Firefly] "Validity Verification", the SHA1
  349.    [FIPS-180-1] hash is calculated over the concatenation of
  350.  
  351.       SHA1( key, data, datafill, key, sha1fill )
  352.  
  353.    The leading key is not padded to any particular alignment.
  354.  
  355.    The datafill uses the same pad-with-length technique defined for
  356.    sha1fill.  The length includes the leading key and data.
  357.  
  358.    The resulting Verification field is a 160-bit variable precision num-
  359.    ber (22 octets including Size).
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384. Karn & Simpson            expires in six months                 [Page 6]
  385. DRAFT                       Photuris Schemes                  April 1996
  386.  
  387.  
  388. A.  Example Bootstrap Moduli
  389.  
  390.    During the initial bootstrap of the implementation, there may not be
  391.    sufficient time to generate a new modulus before a security associa-
  392.    tion is needed.  These moduli are verified examples that may be used
  393.    during this bootstrap period.
  394.  
  395.    (1024-5)
  396.          A 1024-bit strong prime (p), expressed in hex:
  397.  
  398.             a478 8e21 84b8 d68b  fe02 690e 4dbe 485b
  399.             17a8 0bc5 f21d 680f  1a84 1313 9734 f7f2
  400.             b0db 4e25 3750 018a  ad9e 86d4 9b60 04bb
  401.             bcf0 51f5 2fcb 66d0  c5fc a63f bfe6 3417
  402.  
  403.             3485 bbbf 7642 e9df  9c74 b85b 6855 e942
  404.             13b8 c2d8 9162 abef  f434 2435 0e96 be41
  405.             edd4 2de9 9a69 6163  8c1d ac59 8bc9 0da0
  406.             69b5 0c41 4d8e b865  2adc ff4a 270d 567f
  407.  
  408.          The recommended generator (g) for this prime is 5.
  409.  
  410.          This prime modulus was randomly generated by a freely available
  411.          program written by Phil Karn, verified using the
  412.          mpz_probab_prime() function Miller-Rabin test in the Gnu Math
  413.          Package (GMP) version 1.3.2; and also verified with GMP on
  414.          another platform by Frank A Stevenson.
  415.  
  416.          Currently estimated to provide 80 (pessimistic) through 98
  417.          (optimistic) bit-equivalents of cryptographic strength.  Expo-
  418.          nent lengths of 160 to 256 bits (or more) are recommended.
  419.  
  420.  
  421.  
  422. Security Considerations
  423.  
  424.    In addition to the obvious usage, party privacy protection provides a
  425.    significant improvement in cryptographic strength for the Photuris
  426.    message exchanges.
  427.  
  428.    Hiding the Identification and Verification fields prevents an
  429.    attacker from direct verification of forgery attacks on the authenti-
  430.    cation function.
  431.  
  432.    Also, hiding the Verification fields inhibits cryptanalysis of ses-
  433.    sion-key generation by reducing the number of known fields used in
  434.    the generation.
  435.  
  436.  
  437.  
  438.  
  439. Karn & Simpson            expires in six months                 [Page 7]
  440. DRAFT                       Photuris Schemes                  April 1996
  441.  
  442.  
  443.    Hiding attribute choices inhibits traffic cryptanalysis when multiple
  444.    transform algorithms are implemented.
  445.  
  446.    The "whitening" of the DES IV is intended to obscure the relation of
  447.    the number of parties and SPIs active between two IP nodes.  The com-
  448.    bination of a randomized secret IV with the SPI generates a different
  449.    initial encrypted block for every SPI creation message.
  450.  
  451.    This obscurement is not effective when the SPI is invariant or not
  452.    created for a particular exchange direction.  The number of parties
  453.    will be revealed by the number of exchanges with differences in the
  454.    initial encrypted blocks.
  455.  
  456.  
  457. Acknowledgements
  458.  
  459.    Phil Karn was principally responsible for the design of party privacy
  460.    protection, and provided much of the design rationale text.  Use of
  461.    privacy protection is also found in the Station-To-Station authenti-
  462.    cation protocol [DOW92].
  463.  
  464.    William Simpson designed the packet formats, and additional exchange
  465.    schemes, editing and formatting.  All such mistakes are his responsi-
  466.    bity.
  467.  
  468.    Bart Preneel and Paul C van Oorschot in [PO96] suggested adding
  469.    padding between the data and trailing key when hashing for authenti-
  470.    cation.
  471.  
  472.  
  473. References
  474.  
  475.    [DOW92]  Whitfield Diffie, Paul C van Oorshot, Michael J Wiener,
  476.             "Authentication and Authenticated Key Exchanges", Designs,
  477.             Codes and Cryptography, v 2 pp 107-125, Kluwer Academic Pub-
  478.             lishers, 1992.
  479.  
  480.    [FIPS-180-1]
  481.             "Secure Hash Standard", National Institute of Standards and
  482.             Technology, U.S. Department Of Commerce, April 1995.
  483.  
  484.             Also known as: 59 Fed Reg 35317 (1994).
  485.  
  486.    [Firefly]
  487.             Karn, P., Simpson, W., "The Photuris Session Key Management
  488.             Protocol", work in progress.
  489.  
  490.  
  491.  
  492.  
  493.  
  494. Karn & Simpson            expires in six months                 [Page 8]
  495. DRAFT                       Photuris Schemes                  April 1996
  496.  
  497.  
  498.    [KR96]   Kaliski, B., and Robshaw, M., "Multiple Encryption: Weighing
  499.             Security and Performance", Dr. Dobbs Journal, January 1996.
  500.  
  501.    [PO96]   Bart Preneel, and Paul C van Oorshot, "...Two MACs", work in
  502.             progress.
  503.  
  504.    [RFC-1321]
  505.             Rivest, R., "The MD5 Message-Digest Algorithm", RFC-1321,
  506.             MIT Laboratory for Computer Science, April 1992.
  507.  
  508.    [RFC-1700]
  509.             Reynolds, J., and Postel, J., "Assigned Numbers", STD 2,
  510.             USC/Information Sciences Institute, October 1994.
  511.  
  512.  
  513.  
  514. Contacts
  515.  
  516.    Comments should be submitted to the photuris@majordomo.soscorp.com
  517.    mailing list.
  518.  
  519.    Questions about this memo can also be directed to:
  520.  
  521.       Phil Karn
  522.       Qualcomm, Inc.
  523.       6455 Lusk Blvd.
  524.       San Diego, California  92121-2779
  525.  
  526.           karn@qualcomm.com
  527.           karn@unix.ka9q.ampr.org (prefered)
  528.  
  529.  
  530.       William Allen Simpson
  531.       Daydreamer
  532.       Computer Systems Consulting Services
  533.       1384 Fontaine
  534.       Madison Heights, Michigan  48071
  535.  
  536.           wsimpson@UMich.edu
  537.           wsimpson@GreenDragon.com (preferred)
  538.           bsimpson@MorningStar.com
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549. Karn & Simpson            expires in six months                 [Page 9]
  550.  
  551.  
  552.