[Acme] Specify which JWS serialization is used

Jörn Heissler <acme-specs@joern.heissler.de> Wed, 03 January 2018 23:07 UTC

Return-Path: <acme-specs@joern.heissler.de>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DEFB312D77C for <acme@ietfa.amsl.com>; Wed, 3 Jan 2018 15:07:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.051
X-Spam-Level:
X-Spam-Status: No, score=0.051 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_DYNAMIC_IPADDR=1.951, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=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 rDH1aZpi1k3A for <acme@ietfa.amsl.com>; Wed, 3 Jan 2018 15:07:39 -0800 (PST)
Received: from lvps87-230-93-31.dedicated.hosteurope.de (kappa.tutnicht.de [87.230.93.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C38BD120046 for <acme@ietf.org>; Wed, 3 Jan 2018 15:07:39 -0800 (PST)
Received: from [10.255.0.6] (helo=carrot.tutnicht.de) by lvps87-230-93-31.dedicated.hosteurope.de with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <acme-specs@joern.heissler.de>) id 1eWs8G-0002Zz-FE for acme@ietf.org; Thu, 04 Jan 2018 00:07:36 +0100
Date: Thu, 04 Jan 2018 00:07:34 +0100
From: Jörn Heissler <acme-specs@joern.heissler.de>
To: acme@ietf.org
Message-ID: <20180103230734.GM21695@carrot.tutnicht.de>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="CfiwpigK2vfmwpN3"
Content-Disposition: inline
User-Agent: Mutt/1.9.1 (2017-09-22)
Archived-At: <https://mailarchive.ietf.org/arch/msg/acme/4DLF_aBdD91S2fwrSz7xIhCUZHE>
Subject: [Acme] Specify which JWS serialization is used
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Automated Certificate Management Environment <acme.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/acme>, <mailto:acme-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme/>
List-Post: <mailto:acme@ietf.org>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/acme>, <mailto:acme-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 03 Jan 2018 23:11:17 -0000

Hello and happy new Year!

I've found an inaccuracy in the ACME specs.

https://tools.ietf.org/html/rfc7515#section-7 states:

    Applications using this specification need to specify what serialization
    and serialization features are used for that application.

Although this is neither a "SHOULD" nor a "MUST", I think ACME should specify
which serialization formats need to be supported by server implementations.

RFC7515 defines four serialization formats:

* JWS Compact Serialization
* General JWS JSON Serialization Syntax
  * One signature only
  * Multiple signatures
* Flattened JWS JSON Serialization Syntax

https://ietf-wg-acme.github.io/acme/draft-ietf-acme-acme.html#rfc.section.6.2
states:

    In the examples below, JWS objects are shown in the JSON or
    flattened JSON serialization

All examples in the ACME specification use only the flattened serialization.
Depending on the clarification above, this might need to be amended too.

Best regards
Jörn Heissler