I and PeterSA took a hard look at section "4.6 Outcome" (aka: Bad certificate handling) and indeed its language needed some semi-major rewriting, which we've done. The entire new section "4.6 Outcome" is below.

comments?

thanks,

=JeffH

###

4.6.  Outcome

   The outcome of the checking procedure is one of the following cases.

4.6.1.  Case #1: Match Found

   If the client has found a presented identifier that matches a
   reference identifier, matching has succeeded.  In this case, the
   client MUST use the matched reference identifier as the validated
   identity of the server.

4.6.2.  Case #2: No Match Found, Cached Certificate

   If the client does not find a presented identifier matching any of
   the reference identifiers, and (a) a human user has previously
   accepted and cached a certificate for this application service during
   a previous interaction with the service or (b) a certificate has been
   cached via configuration settings, then the client MUST verify that
   the presented certificate matches the cached certificate.  If the
   presented certificate does not match the cached certificate then the
   client MUST proceed as described under Section 4.6.4.

4.6.3.  Case #3: No Match Found, No Cached Certificate

   If the client does not find a presented identifier matching any of
   the reference identifiers, and the client has not previously cached a
   certificate for this application service based on user acceptance or
   configuration, then the client MUST proceed as described under
   Section 4.6.4.

4.6.4.  Fallback

   If the client is an interactive client that is directly controlled by
   a human user, then it SHOULD inform the user of the identity mismatch
   and automatically terminate the connection with a bad certificate
   error; this behavior is preferable because it prevents users from
   inadvertently bypassing security protections in hostile situations.

      Security Note: Some interactive clients give advanced users the
      option of proceeding with acceptance and caching of the presented
      certificate despite an identity mismatch.  Although this behavior
      can be appropriate in certain specialized circumstances, in
      general it ought to be exposed only to advanced users.  Even then
      it needs to be handled with extreme caution, for example by first
      encouraging even an advanced user to terminate the connection and,
      if the advanced user chooses to proceed anyway, by forcing the
      user to view the entire certification path and only then allowing
      the user to accept the certificate (on a temporary or permanent
      basis, at the user's option).

   Otherwise, if the client is an automated application not directly
   controlled by a human user, then it SHOULD terminate the connection
   with a bad certificate error and log the error appropriately.  An
   automated application MAY provide a configuration setting that
   disables this behavior, but MUST enable the behavior by default.

###




_______________________________________________
certid mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/certid

Reply via email to