Re: [jose] Header criticality -- hidden consensus?

Richard Barnes <rlb@ipv.sx> Fri, 08 February 2013 23:25 UTC

Return-Path: <rlb@ipv.sx>
X-Original-To: jose@ietfa.amsl.com
Delivered-To: jose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67F0E21F8C11 for <jose@ietfa.amsl.com>; Fri, 8 Feb 2013 15:25:15 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.39
X-Spam-Level:
X-Spam-Status: No, score=-1.39 tagged_above=-999 required=5 tests=[AWL=-0.965, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oczMgv-1LC2X for <jose@ietfa.amsl.com>; Fri, 8 Feb 2013 15:25:14 -0800 (PST)
Received: from mail-la0-x235.google.com (mail-la0-x235.google.com [IPv6:2a00:1450:4010:c03::235]) by ietfa.amsl.com (Postfix) with ESMTP id 069F721F8B7D for <jose@ietf.org>; Fri, 8 Feb 2013 15:25:13 -0800 (PST)
Received: by mail-la0-f53.google.com with SMTP id fr10so4243241lab.40 for <jose@ietf.org>; Fri, 08 Feb 2013 15:25:13 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:x-originating-ip:in-reply-to:references :date:message-id:subject:from:to:cc:content-type:x-gm-message-state; bh=Ri3HCgEAVIdPaLFECRuD4O0eI/5lvNMLmn8qOHrN1/Q=; b=Hr5hkg573fLrVHt+xlle4vhPSevkgYCGYuqSsEeO86z8WYKewH3sm9H+4BWwLkuZLE RGNAsz570Zr5TLdGGa9kXG+29QBFqc1h5Tjo48TrbRntgCgzk6OE+G+5Q6T4wphqyoZh fhdIL5+8AZ83As+cy1lO67fqqMR2w6ZzBkXJIW9C/rLsQYn8KVqaohGBaAyG4UW/kHK4 U66+v7DN9dls0C3Va0yIEywDQZ9+DMsvzjU4cWmkcxRueQH8qJqBF+S/n/DlGAdXSYP8 O5HDwJt09kUF6I5aoGNImiHuM2UzkSW4IF7WMyfqwiFr/5zftVW8Q6Vse3IVTcsNC8Qj pbwA==
MIME-Version: 1.0
X-Received: by 10.152.114.66 with SMTP id je2mr6309996lab.40.1360365912787; Fri, 08 Feb 2013 15:25:12 -0800 (PST)
Received: by 10.112.147.164 with HTTP; Fri, 8 Feb 2013 15:25:12 -0800 (PST)
X-Originating-IP: [192.1.51.63]
In-Reply-To: <4E1F6AAD24975D4BA5B168042967394367421D1C@TK5EX14MBXC284.redmond.corp.microsoft.com>
References: <CAL02cgRxeS-DomWzVBmoqzps57jgvrUSLn5nrFtqcrTD1wQa=g@mail.gmail.com> <4E1F6AAD24975D4BA5B168042967394367421D1C@TK5EX14MBXC284.redmond.corp.microsoft.com>
Date: Fri, 08 Feb 2013 18:25:12 -0500
Message-ID: <CAL02cgTaNM2KM6DxYv0z7rOi4BRP6m3g=K6=mFEGzF1E9yERZA@mail.gmail.com>
From: Richard Barnes <rlb@ipv.sx>
To: Mike Jones <Michael.Jones@microsoft.com>
Content-Type: multipart/alternative; boundary="90e6ba309926ff0a4e04d53edef3"
X-Gm-Message-State: ALoCoQnuYCUeGRD7FpRbBDMpEoQk87hgDN9MpJ73RHs2tKbnWgKF8ZQQfT7Czk4izgGUVNbnPmeV
Cc: "jose@ietf.org" <jose@ietf.org>
Subject: Re: [jose] Header criticality -- hidden consensus?
X-BeenThere: jose@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Javascript Object Signing and Encryption <jose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jose>, <mailto:jose-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/jose>
List-Post: <mailto:jose@ietf.org>
List-Help: <mailto:jose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jose>, <mailto:jose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Feb 2013 23:25:15 -0000

Allow me to quote RFC 2119, which defines the requirements terminology for
IETF documents:
"
1. MUST   This word, or the terms "REQUIRED" or "SHALL", mean that the
   definition is an absolute requirement of the specification.
"

By that definition, a system that implements JWE is absolutely required to
throw out an object that contains an unknown header.  That requirement
applies to any system that implements JWE -- JUST JWE, not some overall
system that uses JWE.  (And likewise JWS.)

So yes, the current language applies very specifically to a JOSE library,
not to a more general system.  If you want to do that, write a BCP on
"Guidelines for Usage of JOSE".

--Richard





On Fri, Feb 8, 2013 at 6:19 PM, Mike Jones <Michael.Jones@microsoft.com>wrote:

>  I think you’re missing the point of the second poll question.  It’s
> there to clarify that the requirement to validate the headers is one placed
> on the system as a whole – not solely on particular pieces of an
> implementation.  Indeed, it’s my understanding that IETF specs almost
> universally place requirements only on the protocol behaviors – not on how
> implementations must be factored.  In other words, it’s normal for IETF
> specs to place constraints on the behavior of the system as a whole.  The
> text in the second poll question would just reinforce that this is so in
> this particular case.****
>
> ** **
>
> Hope everyone has a good weekend!****
>
> ** **
>
>                                                                 -- Mike***
> *
>
> ** **
>
> *From:* jose-bounces@ietf.org [mailto:jose-bounces@ietf.org] *On Behalf
> Of *Richard Barnes
> *Sent:* Friday, February 08, 2013 3:12 PM
> *To:* jose@ietf.org
> *Subject:* [jose] Header criticality -- hidden consensus?****
>
> ** **
>
> We're 24 votes into the header criticality poll, so I thought I would go
> ahead and take a look at how the results are shaping up.  My initial
> tabulation is below.  The result on the FIRST POLL (the main one) is as
> follows:****
>
> ** **
>
> No: 10****
>
> Yes: 14****
>
> ** **
>
> What I find striking, however, is that every single person that voted
> "Yes" on the FIRST POLL also voted "Yes" on the SECOND POLL.  So nobody who
> thinks that all headers should be critical thinks that a JOSE library
> should actually be required to enforce this constraint.  And that means
> that enforcing that all headers are supported cannot be a MUST according to
> RFC 2119.****
>
> ** **
>
> So I wonder if there's consensus to remove the following text from JWE and
> JWS:****
>
> -----BEGIN-JWE-----****
>
>    4.   The resulting JWE Header MUST be validated to only include****
>
>         parameters and values whose syntax and semantics are both****
>
>         understood and supported.****
>
> -----END-JWE-----****
>
> -----BEGIN-JWS-----****
>
>    4.  The resulting JWS Header MUST be validated to only include****
>
>        parameters and values whose syntax and semantics are both****
>
>        understood and supported.****
>
> -----END-JWS-----****
>
> ** **
>
> Otherewise, a JOSE library conforming to these specifications would be
> REQUIRED (a synonym to MUST in 2119) to reject a JWE/JWS that contains an
> unknown header, contradicting all those "Yes" votes on the SECOND POLL.***
> *
>
> ** **
>
> --Richard****
>
> ** **
>
> ** **
>
> ** **
>
> -----BEGIN-Tabulation-----****
>
> 1       2       3    Name:           ****
>
> N       -       -    Bradley         ****
>
> N       -       -    Ito             ****
>
> N       N       A    Yee             ****
>
> N       N       B    Barnes          ****
>
> N       N       B    Rescorla        ****
>
> N       N       C    Manger          ****
>
> N       N       C    Octman          ****
>
> N       Y       A    Fletcher        ****
>
> N       Y       A    Miller          ****
>
> N       Y       A    Sakimura        ****
>
> Y       Y       -    D'Agostino      ****
>
> Y       Y       A    Biering         ****
>
> Y       Y       A    Brault          ****
>
> Y       Y       A    Hedberg         ****
>
> Y       Y       A    Jay             ****
>
> Y       Y       A    Jones           ****
>
> Y       Y       A    Marais          ****
>
> Y       Y       A    Nadalin         ****
>
> Y       Y       A    Nara            ****
>
> Y       Y       A    Nennker         ****
>
> Y       Y       A    Solberg         ****
>
> Y       Y       B    Hardt           ****
>
> Y       Y       B    Medeiros        ****
>
> Y       Y       C    Matake          ****
>
> Y       Y       C    Mishra    ****
>
> -----END-Tabulation-----****
>