Re: My two cents on draft-leiba-rfc2119-update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eric Gray wrote:
> 
> For instance, a lot of external (non-IETF) documents use the same terms,
> even referring to RFC 2119, and yet explicitly create implied differences
> in interpretation.  For instance, I know of a few cases where - in spite
> of an explicit reference to RFC 2119 - usage in context implicitly treats
> "SHOULD" and "MAY" as equivalent (often because the fact that a requirement
> is defined as something that SHOULD be done, makes it an optional
> requirement - very much like "MAY").
> 
> We can take a parochial view and claim that this "outside usage" doesn't
> affect us

We do not need to go that far.

Inside-IETF (ab)use of rfc2119 terminology is fairly common.


Canonical example of how bad it can get is PKIX (rfc5280).

The document targets three very distinct audiences:
 - implementors of PKIX ("relying parties")
 - application writers on top of PKIX implementations
 - PKIX-conforming CAs.

but often fails to indicate to which audience individual requirements
apply.

Then it creates lots and lots of SHOULD and MUST requirements on
Certificates and Certificate Extensions (Section 4) and on
CRLs and CRL extensions (Section 5), and goes on and
waters down essentially all of those SHOULDs into factual MAYs
with the concept of a "minimum requirements implementation".


You may now think "well, that still leaves the MUST in place".
WRONG.  All of the MUSTs in Sections 4 and 5 are _euthanized_
for "implementations of PKIX" with the following paragraph
in Section 6.1 of rfc5280 on the implementation of a certificate
path validation function (end of 3rd paragraph of section 6.1):


https://tools.ietf.org/html/rfc5280#section-6.1

   While the certificate and CRL profiles specified in Sections 4 and 5
   of this document specify values for certificate and CRL fields and
   extensions that are considered to be appropriate for the Internet
   PKI, the algorithm presented in this section is not limited to
   accepting certificates and CRLs that conform to these profiles.
   Therefore, the algorithm only includes checks to verify that the
   certification path is valid according to X.509 and does not include
   checks to verify that the certificates and CRLs conform to this
*> profile.  While the algorithm could be extended to include checks for
*> conformance to the profiles in Sections 4 and 5, this profile
*> RECOMMENDS against including such checks.


So much for the IETF itself being clear on its use of rfc2119
in its own standards and RFC documents.


-Martin




[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Fedora Users]