Re: [jose] POLL(s): header criticality

Dick Hardt <> Wed, 06 February 2013 17:40 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6DC8E21F87DC for <>; Wed, 6 Feb 2013 09:40:42 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id K7ksjWkg-JgC for <>; Wed, 6 Feb 2013 09:40:41 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 1D99621F879E for <>; Wed, 6 Feb 2013 09:40:38 -0800 (PST)
Received: by with SMTP id hz1so952365pad.10 for <>; Wed, 06 Feb 2013 09:40:37 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=x-received:content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; bh=0HAFTq69frusXTaMxrS2utQZP5rJ87LCBVmdP/ybJSg=; b=ujBx9Jz3KOwopKwR56O/sKXKa9/lOODzIGkAv1U7sxmgv04r8h9AsarHfNC63cxcFj 9XD14MLGd6SdbpebaxhHnzGBqL15U92977GMt4Ls4Hb9wWws6nKVnAlR7X2rg6KKPRCh yo7bNrZtFTGiuDaIS/9QGTOkY4qUgJmowDrYfhY6Rvby5aAAcIyDfjw+F7aLdJ64DEOj NG2zxnmUJcB49jh1Cjd6xmY4bO0fBr48NyWxbutQfi7Y1AAYOQ/ZKL8le89nEaP4N3cb a49DcENU8oYa7EadJkX0Qdl7QmiyzzBTbjrxNN7XgjRk2SIQ7ZoiYB9DrDTk5wziUEzV EsnA==
X-Received: by with SMTP id p6mr77871778pax.23.1360172437525; Wed, 06 Feb 2013 09:40:37 -0800 (PST)
Received: from [] ( []) by with ESMTPS id i6sm39291324paw.19.2013. (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 06 Feb 2013 09:40:36 -0800 (PST)
Content-Type: text/plain; charset="windows-1252"
Mime-Version: 1.0 (Mac OS X Mail 6.2 \(1499\))
From: Dick Hardt <>
In-Reply-To: <>
Date: Wed, 06 Feb 2013 09:40:33 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <>
To: "" <>, "" <>
X-Mailer: Apple Mail (2.1499)
Subject: Re: [jose] POLL(s): header criticality
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Javascript Object Signing and Encryption <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 06 Feb 2013 17:40:43 -0000

I misunderstood the Third Poll options.

I was thinking that all properties to be ignored would be a property of the header object. ie. all ignorable properties are sub property of a "ignorable" property.

eg. all "ign" properties can be ignored

{ "alg": "ES256"
, "ign": 
	{  "notes":"this property can be ignored" }

So I am voting C for the third poll, a different option.

btw: I continue to be surprised that we are using JSON and only doing name/value pairs.

-- Dick

On Feb 6, 2013, at 9:03 AM, Dick Hardt <> wrote:

> On Feb 4, 2013, at 6:48 AM, Karen O'Donoghue <> wrote:
>> Folks,
>> I am wrestling with how to help drive consensus on the topic of criticality of headers. For background, please review the current specification text, the minutes to the Atlanta meeting (IETF85), and the mailing list (especially the discussion in December with (Subj: Whether implementations must understand all JOSE header fields)). We need to come to closure on this issue in order to progress the specifications.
>> As a tool to gather further information on determining a way forward, the following polls have been created. Please respond before 11 February 2013.
>> Thanks,
>> Karen
>> *******************
>> FIRST POLL: Should all header fields be critical for implementations to understand?
>> YES – All header fields must continue to be understood by implementations or the input must be rejected.
>> NO – A means of listing that specific header fields may be safely ignored should be defined.
>> ********************
>> SECOND POLL: Should the result of the first poll be "YES", should text like the following be added? “Implementation Note: The requirement to understand all header fields is a requirement on the system as a whole – not on any particular level of library software. For instance, a JOSE library could process the headers that it understands and then leave the processing of the rest of them up to the application. For those headers that the JOSE library didn’t understand, the responsibility for fulfilling the ‘MUST understand’ requirement for the remaining headers would then fall to the application.”
>> YES – Add the text clarifying that the “MUST understand” requirement is a requirement on the system as a whole – not specifically on JOSE libraries.
>> NO – Don’t add the clarifying text.
>> ************************
>> THIRD POLL: Should the result of the first poll be "NO", which syntax would you prefer for designating the header fields that may be ignored if not understood?
>> A – Define a header field that explicitly lists the fields that may be safely ignored if not understood.
>> B – Introduce a second header, where implementations must understand all fields in the first but they may ignore not-understood fields in the second.
>> C - Other??? (Please specify in detail.)
>> _______________________________________________
>> jose mailing list