Gen-ART review of draft-ietf-jose-json-web-signature-31
Russ Housley <housley@vigilsec.com> Sun, 24 August 2014 19:24 UTC
Return-Path: <housley@vigilsec.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DEB8C1A0679; Sun, 24 Aug 2014 12:24:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -99.6
X-Spam-Level:
X-Spam-Status: No, score=-99.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MANGLED_LIST=2.3, USER_IN_WHITELIST=-100] autolearn=no
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 C5Nrdqk5X31d; Sun, 24 Aug 2014 12:24:09 -0700 (PDT)
Received: from odin.smetech.net (mail.smetech.net [209.135.209.4]) by ietfa.amsl.com (Postfix) with ESMTP id E77891A03BF; Sun, 24 Aug 2014 12:24:08 -0700 (PDT)
Received: from localhost (unknown [209.135.209.5]) by odin.smetech.net (Postfix) with ESMTP id 565D2F9C056; Sun, 24 Aug 2014 15:23:58 -0400 (EDT)
X-Virus-Scanned: amavisd-new at smetech.net
Received: from odin.smetech.net ([209.135.209.4]) by localhost (ronin.smeinc.net [209.135.209.5]) (amavisd-new, port 10024) with ESMTP id W6UeUvoSf8zr; Sun, 24 Aug 2014 15:23:37 -0400 (EDT)
Received: from [192.168.2.109] (pool-96-255-70-16.washdc.fios.verizon.net [96.255.70.16]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by odin.smetech.net (Postfix) with ESMTP id E8FB9F9C042; Sun, 24 Aug 2014 15:23:36 -0400 (EDT)
From: Russ Housley <housley@vigilsec.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Subject: Gen-ART review of draft-ietf-jose-json-web-signature-31
Date: Sun, 24 Aug 2014 15:23:25 -0400
Message-Id: <D4999910-8500-4114-9670-08436D64FF28@vigilsec.com>
To: draft-ietf-jose-json-web-signature.all@tools.ietf.org
Mime-Version: 1.0 (Apple Message framework v1085)
X-Mailer: Apple Mail (2.1085)
Archived-At: http://mailarchive.ietf.org/arch/msg/ietf/YKNWh6B0xq5rr3renchIZNSRChw
Cc: IETF Gen-ART <gen-art@ietf.org>, IETF <ietf@ietf.org>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 24 Aug 2014 19:24:11 -0000
I am the assigned Gen-ART reviewer for this draft. For background on
Gen-ART, please see the FAQ at
<http://wiki.tools.ietf.org/area/gen/trac/wiki/GenArtfaq>.
Please resolve these comments along with any other Last Call comments
you may receive.
Document: draft-ietf-jose-json-web-signature-31
Reviewer: Russ Housley
Review Date: 2014-08-24
IETF LC End Date: 2014-09-03
IESG Telechat date: unknown
Summary: Not quite ready. Some issues to resolve.
Major Concerns:
- At first reading, I thought that Sections 2 and 3 were defining the
same terms. On the second or third reading, I figured it out.
I think it would be more clear in Section 3 to state that a JWS is
constructed from a sequence of the things that are already defined
in Section 2.
- In Section 5.2, it says that in some cases, all must successfully
validate, but in other cases, only a specific signature, MAC, or
plaintext value needs to be successfully validated. How does the
recipient know which case applies?
- In Section 8, why not say that TLS 1.2 or later MUST be supported?
- Section 10 says, "The entire list of security considerations is
beyond the scope of this document..." This reads like a red flag to
me. While it is not possible to discuss every possible implementation
consideration that impacts security, the document should cover the
topics discussed in RFC 3552. At a minimum, I think the following
need to be discussed:
-- the consequences of compromise of the signer's private key
-- the consequences of compromise of the MAC key
-- the consequences of poor random numbers, which are needed for
more than just key entropy with some algorithms like ECDSA
-- awareness that cryptographic algorithms become weaker with time
Minor Concerns:
- Section 1, 1st paragraph says: "The JWS cryptographic mechanisms
provide integrity protection for an arbitrary sequence of octets."
This is true, but this is not the whole story. A sentence or two
should be added about when a signature mechanism is appropriate
and when a MAC mechanism is appropriate. Alternatively, a pointer
to Section 10.4 could be included.
- In Section 4.1.4, should the value match the subject key identifier
if an X.509 certificate is used?
- In Section 4.1.5, why is TLS required to fetch digitally signed
X.509 certificates?
- Section 10.2 talks about chosen plaintext attacks. However, there
are much worse things than chosen plaintext attacks that will result
if a third party can get a signer to sign a content of its choosing.
Other Comments:
- I suggest a rewording for a part of Section 2:
OLD:
JOSE Header
JSON object containing the parameters describing the cryptographic
operations and parameters employed. The members of the JOSE
Header are Header Parameters.
NEW:
JOSE Header
JSON object containing the parameters describing the cryptographic
operations and parameters employed. The JOSE Header is composed
of a set of Header Parameters.
- I think that Section 3.1 would be more clear by saying:
In the JWS Compact Serialization, a JWS object is represented as:
BASE64URL(UTF8(JWS Protected Header)) || "." ||
BASE64URL(JWS Payload) || "." ||
BASE64URL(JWS Signature)
- I think that Section 3.1 would be more clear by saying:
In the JWS JSON Serialization, a JWS object is represented as:
BASE64URL(UTF8(JWS Protected Header)) || "." ||
JWS Unprotected Header || "." ||
BASE64URL(JWS Payload) || "." ||
BASE64URL(JWS Signature)
Then, the text needs to say that whitespace may appear anywhere.
- Some additional whitespace would make Section 7.2 easier to read.
- The IANA Considerations section requires the establishment of a new
mail list: jose-reg-review@ietf.org. The process for setting up the
list is described at the bottom of this web page:
http://www.ietf.org/list/nonwg.html.
- Gen-ART review of draft-ietf-jose-json-web-signat… Russ Housley
- Re: Gen-ART review of draft-ietf-jose-json-web-si… Jari Arkko
- RE: Gen-ART review of draft-ietf-jose-json-web-si… Mike Jones
- Re: [jose] Gen-ART review of draft-ietf-jose-json… Kathleen Moriarty
- RE: Gen-ART review of draft-ietf-jose-json-web-si… Mike Jones
- Re: Gen-ART review of draft-ietf-jose-json-web-si… Kathleen Moriarty
- RE: Gen-ART review of draft-ietf-jose-json-web-si… Mike Jones
- RE: Gen-ART review of draft-ietf-jose-json-web-si… Mike Jones