Subject: [websec] Re-litigating Key-Pinning

From: Yoav Nir <[email-masked]>
Date: Wed, 27 Aug 2014 08:44:43 +0300

Hi folks

In the last few days, we’ve had a bunch of threads re-opening issues with key-pinning, mostly around the PKP-RO.

This document has gone through years of discussion on the mailing list, a WGLC and an IETF LC. 

The document is now under review by the IESG. We (the working group) and the authors need to address comments and discuss ballots by members of the IESG. This is an inappropriate time to raise new substantive issues about the document. 

Fixing editorial issues like Julians’ comments about references is fine, and could even be done *after* IESG review. However, making substantive changes like removing PKP-RO or changing the requirements for processing it cannot be done at this stage. Deciding to do this requires withdrawing the publication request and sending it back to the working group.  I do not think this is advisable.

The IETF occasionally publishes documents that are imperfect. Such imperfections can be fixed later via errata or -bis documents. For now, I think we should publish the document as it is with the changes agreed upon in discussions with ADs.

Thanks

Yoav
[with chair hat firmly on]

---

From: Trevor Perrin <[email-masked]>
Date: Wed, 27 Aug 2014 00:36:38 -0700

> The document is now under review by the IESG. We (the working group) and the authors need to address comments and discuss ballots by members of the IESG. This is an inappropriate time to raise new…

PKP-RO isn't a new issue.

The initial draft of PKP-RO was claimed to "follow the same syntax and
semantics of the Public-Key-Pins header" [1].

But the text was unclear.  When we discussed this in February Ryan
proposed to not store PKP-RO pins [2,3].  Myself, Daniel Kahn-Gillmor,
and Tom Ritter proposed to store them [4,5,6], and Chris added text
for this [7,8,9,10].

I later discussed other cleanup of the PKP-RO text [11].  As part of
that Chris changed some of the wording to *not* store PKP-RO pins
[12].  I pointed out the discrepancy and that "I thought we decided
the opposite" a couple times [13,14], but there was a misunderstanding
and he changed things more towards *not* storing PKP-RO [15].  A
couple days after you declared "this working group has done as much as
we can", and further discussion would be "counter-productive" [16].

But I still think storing PKP-RO would be better, and seemed to be the
group's preference.

Trevor

[1] http://www.ietf.org/mail-archive/web/websec/current/msg01539.html
[2] http://www.ietf.org/mail-archive/web/websec/current/msg02030.html
[3] http://www.ietf.org/mail-archive/web/websec/current/msg02037.html
[4] http://www.ietf.org/mail-archive/web/websec/current/msg02042.html
[5] http://www.ietf.org/mail-archive/web/websec/current/msg02043.html
[6] http://www.ietf.org/mail-archive/web/websec/current/msg02044.html
[7] http://www.ietf.org/mail-archive/web/websec/current/msg02051.html
[8] http://www.ietf.org/mail-archive/web/websec/current/msg02054.html
[9] http://www.ietf.org/mail-archive/web/websec/current/msg02055.html
[10] http://www.ietf.org/mail-archive/web/websec/current/msg02069.html
[11] http://www.ietf.org/mail-archive/web/websec/current/msg02075.html
[12] http://www.ietf.org/mail-archive/web/websec/current/msg02081.html
[13] http://www.ietf.org/mail-archive/web/websec/current/msg02084.html
[14] http://www.ietf.org/mail-archive/web/websec/current/msg02094.html
[15] http://www.ietf.org/mail-archive/web/websec/current/msg02097.html
[16] http://www.ietf.org/mail-archive/web/websec/current/msg02100.html

---

From: Tobias Gondrom <[email-masked]>
Date: Wed, 27 Aug 2014 11:29:49 +0100

I agree.
Tobias

<with WG chair hat on>

On 27/08/14 06:44, Yoav Nir wrote:
> _______________________________________________
> websec mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/websec

---

From: Barry Leiba <[email-masked]>
Date: Wed, 27 Aug 2014 10:55:20 -0400

Hi, Trevor, and thanks for the note.  A couple of things, as responsible AD:

1. Yoav says, "This is an inappropriate time to raise new substantive
issues about the document."  I agree with the sense of what Yoav is
saying, but let me clarify what that means.  It is *always* an
appropriate time to raise new, substantive issues if those issues are
addressing a serious problem with the document.  The point is that
this stage is not the appropriate time to bring up "we should have
gone in a different direction" issues, whether those are new or
revisited.  Serious problems: OK.  "I'd have done it differently": no.

2. That said, we do need to be sure that issues of any sort that had
been raised before were addressed properly, and it's always
appropriate to have a look at that.  No one's input to the working
group should be sloughed off without proper consideration.

So, let me be clear about what you (Trevor) are saying in your
message, because I'm not sure.

 - Is it that an error was made in document editing, such that
something that you thought was decided one way made it into the
document in a different, incorrect way?

 - Or is it that you think the issue you brought up was not adequately
considered, and editing of the document went off in the wrong
direction because of that?

 - Or is it that you think the issue you brought up was discussed, the
working group decided otherwise, and the editing went in the direction
of consensus that you disagree with.

 - Or is it something else?

Thanks,
Barry, Applications AD

On Wed, Aug 27, 2014 at 3:36 AM, Trevor Perrin <[email-masked]> wrote:
>> In the last few days, we've had a bunch of threads re-opening issues with key-pinning, mostly around the PKP-RO.
>>

---

From: Trevor Perrin <[email-masked]>
Date: Wed, 27 Aug 2014 09:53:53 -0700

> of consensus that you disagree with.

I'd say the first two, not the third.  But it's hard to know what
counts as "decided" or "adequately considered".

The main discussion of this I'm aware of was:

http://www.ietf.org/mail-archive/web/websec/current/msg02034.html

Discussion was light.  One of the editors proposed not storing
PKP-PRO.  I preferred either storing it or not supporting it.  Two
others were in favor of storing it.  The draft was edited seemingly
based on "storing".

I thought the edits were incomplete so pushed for more, but that may
have been misunderstood as it was edited in the other direction,
without the issue being re-discussed.

In any case, I don't think this is "re-litigating" a contentious or
resolved discussion.  It just seems like a lightly-discussed issue
with some communication breakdown between the discussion above and
editing.

Trevor

---

From: Yoav Nir <[email-masked]>
Date: Thu, 28 Aug 2014 11:01:18 +0300

On Aug 28, 2014, at 9:07 AM, Julian Reschke <[email-masked]> wrote:

> On 2014-08-27 07:44, Yoav Nir wrote:
>> ...
>> Fixing editorial issues like Julians’ comments about references is fine, and could even be done *after* IESG review. ...
>> ...
> 
> FWIW, I believe the ABNF issues (which are *not* editorial) absolutely need to be fixed as well.
> 

Hi, Julian

I don’t want to nit-pick the meaning of the word “editorial”. But anyone who’s read the draft knows what a PKP header looks like. I don’t think there’s any controversy about what is and is not a valid PKP header. So changing the ABNF to reflect this existing understanding, is something that I don’t think requires polling the group.

Cheers

Yoav

---

From: Julian Reschke <[email-masked]>
Date: Thu, 28 Aug 2014 14:40:19 +0200

> I don’t want to nit-pick the meaning of the word “editorial”. But anyone who’s read the draft knows what a PKP header looks like. I don’t think there’s any controversy about what is and is not a va…

The issue is that the ABNF is ambiguous about whether

      Public-Key-Pins: max-age=3000;
        pin-xyz=abc;

is syntactically valid or not. I believe it should be, because otherwise 
parsers would need to special-case the "pin-*" parameters when parsing.

Best regards, Julian

---

From: Yoav Nir <[email-masked]>
Date: Thu, 28 Aug 2014 17:32:23 +0300

On Aug 28, 2014, at 3:40 PM, Julian Reschke <[email-masked]> wrote:

> is syntactically valid or not. I believe it should be, because otherwise parsers would need to special-case the "pin-*" parameters when parsing.
> 
> Best regards, Julian

Well, this might lead to me being proven wrong in my statement that everyone agrees what a valid PKP header is, but I also think this should be syntactically valid. However, clients that only support *this* document (and not “xyz and its use in key pinning”) would not pin anything based on this header.

Yoav

---

From: Julian Reschke <[email-masked]>
Date: Thu, 28 Aug 2014 08:07:38 +0200

> Fixing editorial issues like Julians’ comments about references is fine, and could even be done *after* IESG review. ...

FWIW, I believe the ABNF issues (which are *not* editorial) absolutely 
need to be fixed as well.

Best regards, Julian