[websec] draft-ietf-websec-key-pinning-20 feedback
Julian Reschke <julian.reschke@gmx.de> Tue, 26 August 2014 08:56 UTC
Return-Path: <julian.reschke@gmx.de>
X-Original-To: websec@ietfa.amsl.com
Delivered-To: websec@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C65B01A6EE7 for <websec@ietfa.amsl.com>; Tue, 26 Aug 2014 01:56:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZkoXVjmytCtb for <websec@ietfa.amsl.com>; Tue, 26 Aug 2014 01:56:34 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 625CA1A6EE1 for <websec@ietf.org>; Tue, 26 Aug 2014 01:56:32 -0700 (PDT)
Received: from [192.168.2.160] ([93.217.95.201]) by mail.gmx.com (mrgmx001) with ESMTPSA (Nemesis) id 0Mb8MV-1X39CH1mhf-00KhEj for <websec@ietf.org>; Tue, 26 Aug 2014 10:56:30 +0200
Message-ID: <53FC4BBA.3080400@gmx.de>
Date: Tue, 26 Aug 2014 10:56:26 +0200
From: Julian Reschke <julian.reschke@gmx.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.0
MIME-Version: 1.0
To: websec <websec@ietf.org>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Provags-ID: V03:K0:bta43kbP/4oXedHCiTE+d1fjaw7/+apz1ggh+qNG4TFIY2DPsBE 3FAbIW/wRRNY2ExlqTfgVzkoIBoeOiXXe3ZgtZ9yX23wldrtsuMMLlRj2/MJAKZKJPZ6jfm 6zsUvuACAnqfD/Px3ZVtsB1YuQqiu30kTWzBmLyQ6nvBb2DGaq5DSwljI6VnaZGHSEYYKt0 ofTqpKG6hELIeQH6eCLKQ==
X-UI-Out-Filterresults: notjunk:1;
Archived-At: http://mailarchive.ietf.org/arch/msg/websec/O3rRqPE1AqaXCQlDL9muGARNUHg
Subject: [websec] draft-ietf-websec-key-pinning-20 feedback
X-BeenThere: websec@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Web Application Security Minus Authentication and Transport <websec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/websec>, <mailto:websec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/websec/>
List-Post: <mailto:websec@ietf.org>
List-Help: <mailto:websec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/websec>, <mailto:websec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Aug 2014 08:56:35 -0000
Hi there. Some more quick feedback, somewhat unstructured... Throughout: please say "header field" rather than "header". > The "Public-Key-Pins" and "Public-Key-Pins-Report-Only" header > fields, also referred to within this specification as the PKP and > PKP-RO header fields, respectively, are new response headers defined > in this specification. They are used by a server to indicate that a s/server/origin server/ maybe? > Figure 1 describes the syntax (Augmented Backus-Naur Form) of the > header fields, using the grammar defined in [RFC5234] and the rules > defined in Section 3.2 of [RFC7230]. The field values of both header > fields conform to the same rules. > > Public-Key-Directives = [ directive ] *( OWS ";" OWS [ directive ] ) > > directive = simple-directive > / pin-directive > > simple-directive = directive-name [ "=" directive-value ] > directive-name = token > directive-value = token > / quoted-string > > pin-directive = "pin-" token "=" quoted-string 1) I would recommend not to special-case pin-directive here, as it makes the ABNF ambiguous. Just put the additional requirements into prose. 2) The value of pin-directive ought to allow token syntax as well. (Otherwise a conforming parser will need to special-case their parsing which doesn't make any sense at all). > given header field. Directives are either optional or required, > as stipulated in their definitions. "OPTIONAL or REQUIRED", I assume? > Additional directives extending the semantic functionality of the > header fields can be defined in other specifications. The first such > specification will need to define a reistry for such directives. registry. > According to rule 5, above, the UA MUST ignore pin-directives with Repeats a requirement. Maybe do not use MUST here; instead say "will". > tokens naming hash algorithms it does not recognize. If the set of > remaining effective pin-directives is empty, and if the host is a > Known Pinned Host, the UA MUST cease to consider the host as a Known > Pinned Host (the UA should fail open). The UA should indicate to SHOULD? > UAs SHOULD make their best effort to report Pin Validation failures > to the report-uri, but may fail to report in exceptional conditions. MAY? (in general: try to avoid lowercase RFC2119 terms) Best regards, Julian
- [websec] draft-ietf-websec-key-pinning-20 feedback Julian Reschke
- [websec] draft-ietf-websec-key-pinning-20 feedback Julian Reschke