home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / cat / cat-minutes-94jul.txt < prev    next >
Text File  |  1994-11-02  |  15KB  |  288 lines

  1.  
  2. CURRENT_MEETING_REPORT_
  3.  
  4. Reported by John Linn/OpenVision
  5.  
  6. Minutes of the Common Authentication Technology Working Group (CAT)
  7.  
  8. The CAT Working Group met for two sessions in Toronto, with a total of
  9. 58 rostered attendees.  Approximately half of the attendees had attended
  10. one or more previous CAT meetings, and approximately one third were
  11. subscribed to the working group mailing list.  Carlisle Adams gave a
  12. presentation on the Simple Public-Key Mechanism (SPKM), a proposed
  13. GSS-API mechanism based on public-key technology, offering 2-way and
  14. 3-way authentication exchange variants, generalized use of OIDs for
  15. flexibility, parameter negotiation, and provisions for non-repudiation
  16. services.  Rough consensus was reached on outstanding issues of GSS-API
  17. buffer sizes, continuation processing of long messages, and context
  18. expiration, pending review by the mailing list.  Advancement of FTP
  19. security is pending revision of the Internet-Draft.  We also received a
  20. presentation on IMAP authentication by John Myers.
  21.  
  22. Topics receiving significant discussion, summarized in later sections of
  23. these minutes, included:
  24.  
  25.  
  26.    o The Simple Public-Key Mechanism (SPKM)
  27.    o Interactive Mail Access Protocol (IMAP) authentication
  28.    o Context expiration in Kerberos V5 mechanism and GSS-API
  29.    o Continuation processing and large message handling in GSS-API
  30.  
  31.  
  32.  
  33. Short Topics
  34.  
  35. In opening agenda discussion, P. Rajaram asked whether discussion of
  36. authorization extensions to GSS-API, such as those proposed in X/Open by
  37. Project SESAME, was an appropriate topic for CAT Working Group
  38. discussion.  Piers McMahon commented that the SESAME work was outside
  39. the CAT Working Group's current scope.  It was also noted that a
  40. separate IETF Authorization and Access Control Working Group (AAC)
  41. exists and is chartered to pursue such activities, but has not met
  42. recently.
  43.  
  44. Other topics, discussed briefly, included:
  45.  
  46. Kerberos principal object support:  Working group members were asked to
  47. review the text in ``The Kerberos Version 5 GSS-API Mechanism''
  48. (draft-ietf-cat-kerb5gss-01.txt) proposing routines for import and
  49. export of non-printable name objects and to consider whether these
  50. routines should be migrated to successors to RFCs 1508 and 1509.
  51.  
  52. Negotiated mechanism:  Don Stephenson and P. Rajaram to investigate
  53. reactivation of former work, possible availability of code; any added
  54. application requirements for negotiation solicited (one desirable:  be
  55. able to make the negotiation messages compact for insertion within
  56. existing size-limited protocols; another, enable ordered preferences to
  57. be specified).
  58.  
  59. ``SERVICE'' prefix for service names:  Ted Ts'o to send note to list
  60. summarizing issues and background.  This prefix had been used to
  61. distinguish service entities, in conjunction with a null mechanism type.
  62. Its use now appears redundant along with the service name type, as
  63. described in the current draft, which serves as a hint to
  64. gss_import_name() as to how to process a name in the course of
  65. importation.  There are some backward compatibility issues with existing
  66. code.  We need to decide how, and whether, to preserve use of this
  67. convention.
  68.  
  69. Store-and-forward support service extensions to GSS-API: no consensus
  70. within group on pursuing this topic at the meeting, but discussion is
  71. proceeding on the mailing list.  P. Kirstein and P. McMahon noted that
  72. the European Community's TDP consortium is interested in using (or
  73. defining, if needed) GSS-API-compatible extensions in this area, and
  74. that there would be interest in any work which might emerge from the
  75. IETF.
  76.  
  77. Service-to-client one-way authentication (as desired, e.g., for use by
  78. some Mosaic services):  at present, best available approach is to
  79. authenticate mutually from accessing client to server, even though the
  80. client-server path is not an application requirement.  It is also
  81. possible, if supported by an underlying mechanism, to apply one-way
  82. authentication on a context initiated by the Mosaic service and accepted
  83. by the Mosaic client.
  84.  
  85. Buffer sizes across GSS-API interface:  It was believed that the 2Kbyte
  86. threshold included in draft-ietf-kerb5gss-01.txt was smaller than
  87. desirable, and that a change to 16Kbytes would be acceptable to known
  88. implementors and would permit more efficient operation.  It is therefore
  89. proposed that the limit be increased to 16Kbytes.
  90.  
  91. Stream support (``CATS'' protocol):  Ted Ts'o to resend working notes to
  92. list.
  93.  
  94. Status of FTP security draft:  Pending revision in response to posted
  95. comments.
  96.  
  97.  
  98. SPKM Presentation
  99.  
  100. Carlisle Adams gave a presentation on a proposed Simple Public-Key
  101. Mechanism (SPKM), as described in Internet-Draft ``The Simple Public-Key
  102. GSS-API Mechanism (SPKM)'' (draft-ietf-cat-spkmgss-00.txt).  SPKM is
  103. based on a public key infrastructure, offers (as separate mechanisms
  104. with different OIDs) 2-way and 3-way mutual authentication (thereby
  105. available to environments without secure time); uses OIDs wherever
  106. possible to allow maximum flexibility and growth; uses negotiation at
  107. context establishment time to allow interoperability between
  108. environments (for SPKM-specific parameter negotiation, within the
  109. mechanism); QOP parameter (from application) selects the data integrity
  110. mechanism to be used; non-repudiation can be applied to context if
  111. desired.
  112.  
  113. BNR's work began with an interface for store-and-forward messaging
  114. support, subsequently generalized for on-line, association-oriented
  115. operation.  BNR intends to offer the proposal as the basis for an
  116. Internet standards-track protocol.  The development and distribution
  117. status of a reference implementation for SPKM is not currently known,
  118. but implementation is underway at Northern Telecom and/or BNR, and
  119. feedback on the proposed approach is solicited.
  120.  
  121. Example tokens and exchanges were presented:  A Req_Token initiates all
  122. exchanges.  The token structure is X.509-compliant, with some elements
  123. optional.  A key establishment OID's value describes the exchange which
  124. is to follow.  Context_Data provides the parameters describing a
  125. context.  The Seal token bears OIDs for each of the integrity, sequence,
  126. and confidentiality algorithms:  it carries an explicit OID if the
  127. parameters established at context initiation allow more than one, and is
  128. otherwise NULL. Alignment and padding of variable-length fields was
  129. discussed.
  130.  
  131. Issue:  How do you handle later validation of a long-term signature,
  132. once the context handle is no longer valid?  Long-term signing was an
  133. interest and a design consideration but is not a requirement.
  134.  
  135. Carlisle's conclusions slide summarized the following observations:
  136. SPKM has advantages over alternatives, in terms of flexibility,
  137. non-repudiation, negotiation support and no required reliance on secure
  138. timestamps.
  139.  
  140.  
  141. IMAP Authentication
  142.  
  143. In the CAT Working Group's second session, John Myers led a discussion
  144. on Interactive Mail Access Protocol (IMAP) authentication.  This
  145. approach, currently in Last Call for advancement to Proposed Standard,
  146. implements an IMAP4 AUTHENTICATE command, based on FTP security's
  147. AUTH/ADAT commands.  It identifies authentication mechanisms by name,
  148. and supports an arbitrary number of base64-encoded exchanges.  Privacy
  149. and integrity protection are supported; the authorization userid is
  150. independent of the authentication ID. In contrast to FTP security, there
  151. is no separate data versus control channel.  User ID, protection
  152. mechanism and buffer size are negotiated during the authentication
  153. exchange.  Use of a protection mechanism is optional.  IMAP
  154. authentication has no interaction with plain-text login.
  155.  
  156. Examples were shown using Kerberos V4 and S/Key; a GSS-API mechanism is
  157. defined as well (protecting option exchange with GSS_Seal()).  GSS-API
  158. and S/Key mechanisms are not yet implemented; Ted Ts'o expressed
  159. interest in integrating with the Kerberos V5 development stream via
  160. GSS-API if the IMAP code is distributable.  In the IMAP Kerberos
  161. mechanism, the client closes out the exchange by mutually authenticating
  162. back to the server and declaring accepted service options.  Design
  163. intentionally uses server-issued challenges, so as to protect against
  164. replays even within the Kerberos 5 minute timestamp window.  Could not
  165. use S/Key with FTP security as it stands, since the FTP security draft
  166. demands integrity on negotiation.  It was suggested that we consider
  167. changing the FTP security draft to enable conformant use of S/Key.
  168.  
  169.  
  170.  
  171. Discussion of Proposed GSS-API Continuation Processing of Long
  172. Messages
  173.  
  174. During the course of the SPKM presentation slot, Carlisle Adams
  175. suggested a GSS-API extension to accept segments of long buffers with
  176. continuation flag parameters:  add to gss_seal an ``end_flag'' which can
  177. accept GSS_S_CONTINUE_NEEDED and add to gss_unseal the ability to
  178. indicate that non-final versus final segments are being emitted.  Ted
  179. Ts'o noted that the primary problem in the area of long message
  180. processing is that the sender does not know how big a token the receiver
  181. can handle.  Carlisle was more concerned with the local interface issue
  182. than with the issue of sizes supported by remote peers.  Bill Sommerfeld
  183. observed that applications and GSS-API should ``cooperate'' in terms of
  184. segment sizes.
  185.  
  186. The argument was made that the use of sequencing mechanisms and
  187. per-message integrity versus a single binding signature spanning
  188. multiple data units is sufficient within the scope of an
  189. association-oriented context; the binding signature might be more
  190. valuable in a store-and-forward document scenario.
  191.  
  192. Three possible measures present themselves:
  193.  
  194.  
  195.   1. Application calls a new GSS-API facility to find out how big a
  196.      token it can pass in in order to get an output token no bigger than
  197.      the maximum acceptable size.  Compression can introduce variability
  198.      in the output size which will result for different data of the same
  199.      input size.  The new facility needs to accept as input the QOP
  200.      value which is to be requested for data protection.  Action:
  201.      Incorporate this facility for GSSV2.
  202.  
  203.   2. Constrain mechanisms so that arbitrary fragments, split within the
  204.      GSS-API or below, can be independently validated.  The group agreed
  205.      not to impose this constraint.
  206.  
  207.   3. There was interest in a facility to distinguish an ordered stream
  208.      of non-initial segments from a final segment.  P. Rajaram argued
  209.      that this would resolve the issue of not having enough memory to
  210.      process the data unit as a whole.  Controversy revolved around
  211.      whether this was an appropriate facility at the level of the
  212.      interface rather than an application-specific issue above the
  213.      interface.  In Ted Ts'o's proposed CATS package, connection close
  214.      was indicated explicitly by the CATS protocol, rendering moot the
  215.      need to distinguish a final message at the level of the GSS-API
  216.      interface.  After discussion, we resolved (pending mailing list
  217.      confirmation) not to incorporate interface-level message
  218.      continuation facilities.
  219.  
  220.  
  221. Context Expiration
  222.  
  223. We discussed context expiration within the Kerberos mechanism,
  224. distinguishing enforced expiration (disabling per-message protection
  225. when expiration time is reached) versus advisory expiration (continuing
  226. to perform per-message protection operations, with informatory status)
  227. versus no expiration.  Advisory and enforced expiration cases can be
  228. further subdivided into uniformly-performed expiration versus expiration
  229. performed only if requested by a caller at context expiration time.
  230. Much of the interest in application-selectable expiration relates to use
  231. as a trigger to garbage collect keys and related data.  Possible inputs
  232. to an expiration policy would include (some combination of)
  233. user-requested time, expiration time(s) of relevant tickets, local
  234. configuration data and input received from a peer.
  235.  
  236. In any of these scenarios, except ``no expiration,'' applications must
  237. be able to accommodate the occurrence of a no-longer-valid context,
  238. effectively renewing by initiating a new one.  It was suggested as a
  239. possibly useful extension for init_context or an alternative routine
  240. thereto to be able to accept an existing context handle as input for
  241. renewal through establishment of a new context, but no detailed
  242. exploration or conclusion on this suggestion was reached.
  243.  
  244. A prospect of ``soft expiration,'' where advisory errors would be
  245. received at a point in time before the context no longer operated, was
  246. discussed but rejected as introducing unneeded complexity and being
  247. ineffective for recovery after a context has been idle across both of
  248. its ``soft'' and ``hard'' expiration times (e.g., after a user walks
  249. away from a terminal, returns sometime later, and attempts to resume a
  250. session).  It was also observed that an application desiring a ``soft''
  251. warning could easily pass a time value appropriately less than the
  252. context_time output as received from init_sec_context to an OS-specific
  253. timer facility outside GSS-API.
  254.  
  255. In initial discussion relative to the Kerberos mechanism, popular
  256. sentiment favored no expiration, but a range of views were expressed.
  257. Bill Sommerfeld noted that DCE enforces hard expiration (with some time
  258. windowing), but that this appeared more feasible in the DCE RPC
  259. environment where RPC calls are typically short-lived than in the
  260. general GSS-API case.  In DCE RPC, expiration is enforced only for call
  261. establishment, not within an already-established call.  Ted Ts'o
  262. asserted that expiration should not be enforced for at least the class
  263. of rlogin-like applications, to avoid disrupting outstanding
  264. associations.  P. Rajaram also argued that enforced expiration was
  265. unacceptably disruptive for certain applications, and that advisory
  266. expiration was not a useful service for GSS-API to provide; Bill
  267. Sommerfeld observed that advisory expiration could be a convenient
  268. timing service, but that the motivation did not appear compelling.
  269. Piers McMahon observed that context expiration did not enable a useful
  270. policy enforcement mechanism, recognizing that use of all GSS-API
  271. facilities is at an application's discretion.
  272.  
  273. Jeff Schiller proposed that no context should last forever, and that for
  274. the Kerberos mechanism the expiration time should be no later than the
  275. expiration of the ticket(s) which are used to establish the context;
  276. other inputs (e.g., caller request, configuration) could result in an
  277. earlier expiration time.  P. Rajaram argued that context expiration
  278. should not be forced by ticket expiration times, but should instead be
  279. based on an administratively-configurable parameter.  After active
  280. discussion, Jeff's approach was accepted as our working proposal.
  281. Rationales discussed included:  (a) programs like rlogin were not likely
  282. to be using GSS-API, for reasons of performance in character-at-a-time
  283. applications, and (b) applications for which expiration was unacceptable
  284. could perform their own encryption outside GSS-API, possibly using a
  285. GSS-API context as a means to securely transfer their own keys.  Mailing
  286. list discussion on context expiration topics is continuing.
  287.  
  288.