Re: [OAUTH-WG] Fwd: I-D Action: draft-ietf-oauth-mtls-03.txt

Brian Campbell <> Wed, 02 August 2017 15:30 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7C920132131 for <>; Wed, 2 Aug 2017 08:30:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id ZW6eTN0ZrA6m for <>; Wed, 2 Aug 2017 08:30:25 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:400e:c05::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 51A8D13213E for <>; Wed, 2 Aug 2017 08:30:25 -0700 (PDT)
Received: by with SMTP id c14so22692696pgn.0 for <>; Wed, 02 Aug 2017 08:30:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=gmail; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=6dP6GEfcUTUlQRiKGE8STUBXKV9fOf0VEUoP9qrj10M=; b=anitQirv5OtZeCGMwsys7brRVsdZD8QZn7Z5R2CEH+1fxfdaIKRPGQ02Ksb21ytsos wUJMd5JDZ6CEOPLFUg08IJJLopTFVRSnOTK96t0bFpAK2YL5EEbS0Kw3aRWRkrnQbnb/ pTOlqCm96z3FjBrHcaClP1haBBqYaaMdRyd5c=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=6dP6GEfcUTUlQRiKGE8STUBXKV9fOf0VEUoP9qrj10M=; b=Clx9kxkArwtRZxy+hiZ4EYFjUPsTtnc5S6pp55IpwnVxWqkjLJGND6OkNKmim/wdhD zyF4iCw/p5ankZm+6beTLkxOqFV3xV3SrgQRtMtEMUMHkidwZHJbPsrUjX6H0FvxCAjF +RwJF5J5OKprO5PkDnJWJRA0ApimMKeak9lAubiomjpfe1RpN+7svylX6tVOjNzcgGer njwt9k9EhEiLqqSP8GGSI68Muee1s2V/e1g34lxT4S0LdEFD9g+m1uKObi7Qj44u1iu7 chjxntzdy4Ou+xkoJ1ErSVTwdB+N9Mz5LY5e2R38Qx+D6Jki6QJ76K4pBJi9RS6yI9OY NAXg==
X-Gm-Message-State: AIVw113iY/+niLrY27/c0ETXKElV4NlcdqKCp6mjmmAsdTv3+iAK8NYz YQe0kQ0WA9aZTiL7w4DkIS6rajkXkrKAgbh2Mb7/+lpbrrHBGU82W2JCSk8zEOSCQ9qLVYELg5x 0240K
X-Received: by with SMTP id 18mr23702498pgc.42.1501687824766; Wed, 02 Aug 2017 08:30:24 -0700 (PDT)
MIME-Version: 1.0
Received: by with HTTP; Wed, 2 Aug 2017 08:29:54 -0700 (PDT)
In-Reply-To: <>
References: <> <> <>
From: Brian Campbell <>
Date: Wed, 2 Aug 2017 09:29:54 -0600
Message-ID: <>
To: Vladimir Dzhuvinov <>
Cc: oauth <>
Content-Type: multipart/alternative; boundary="001a1141c0cc5c09aa0555c6f153"
Archived-At: <>
Subject: Re: [OAUTH-WG] Fwd: I-D Action: draft-ietf-oauth-mtls-03.txt
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: OAUTH WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 02 Aug 2017 15:30:27 -0000

Thanks for the review, Vladimir.

The text about which you have questions was written by Torsten (credit or
blame where it's due!) but I believe he's out of the office for a bit so
I'll try and answer.

Your 1st question:
I've had the same thought regarding the public key method and using the JWK
x5c parameter. A JWK already has the public key, which is sufficient for
comparison in the public key method. So x5c is just superfluous here. I
believe that's a change that the next revision should have and will look to
make it unless someone wants to make a strong case for needing x5c.

Your 2nd question:
I also found the sentence, "When used in conjunction with a trusted X.509
certificate source, it also allows the client to rotate its X.509
certificates without the need to change its respective authentication data
at the authorization server." somewhat difficult to understand when I first
read it. The intended meaning relies on content earlier in the same
paragraph that says, "As pre-requisite, the client registers a X.509
certificate or *a trusted source for its X.509 certificates (jwks uri as
defined in [RFC7591])* with the authorization server."  Basically what it's
trying to say is that when a client is registered or configured with a
jwks_uri, then client key rotation can be done without needing to
explicitly update the client config/registration with the AS. Does that
explain it? I believe the text could be more straightforward and will
endeavor to make it more clear in the next draft update.

On Wed, Aug 2, 2017 at 1:53 AM, Vladimir Dzhuvinov <>

> Thanks everyone for the update! Having a clear distinction between the
> PKIX vs public key bound methods will help interop, implementers' job, and
> it also appears good for security.
> Questions:
> where the X.509 certificates are represented using the "x5c" parameter from [RFC7517 <>]
> For the public key method, is it really necessary for the client to
> include its certificate in the JWK x5c parameter? This will make
> implementation harder for developers, and I'm not sure it adds anything in
> terms of security. Registering the public key parameters seems sufficient
> to me.
> When used in conjunction with a trusted X.509 certificate source, it also allows the client to rotate its X.509 certificates without the need to change its respective authentication data at the authorization server.
> I don't understand this - "in conjunction with a trusted X.509 certificate
> source"
> Thanks,
> Vladimir
> On 28/07/17 21:33, Brian Campbell wrote:
> A new draft of "Mutual TLS Profile for OAuth 2.0" has been published with
> the changes listed below based on comments and dissuasion in Prague.
>    draft-ietf-oauth-mtls-03<> <>
>    o  Introduced metadata and client registration parameter to publish
>       and request support for mutual TLS sender constrained access
>       tokens
>    o  Added description of two methods of binding the cert and client,
>       PKI and Public Key.
>    o  Indicated that the "tls_client_auth" authentication method is for
>       the PKI method and introduced "pub_key_tls_client_auth" for the
>       Public Key method
>    o  Added implementation considerations, mainly regarding TLS stack
>       configuration and trust chain validation, as well as how to to do
>       binding of access tokens to a TLS client certificate for public
>       clients, and considerations around certificate bound access tokens
>    o  Added new section to security considerations on cert spoofing
>    o  Add text suggesting that a new cnf member be defined in the
>       future, if hash function(s) other than SHA-256 need to be used for
>       certificate thumbprints
> ---------- Forwarded message ----------
> From: <> <>
> Date: Fri, Jul 28, 2017 at 12:25 PM
> Subject: [OAUTH-WG] I-D Action: draft-ietf-oauth-mtls-03.txt
> To:
> Cc:
> A New Internet-Draft is available from the on-line Internet-Drafts
> directories.
> This draft is a work item of the Web Authorization Protocol WG of the IETF.
>         Title           : Mutual TLS Profile for OAuth 2.0
>         Authors         : Brian Campbell
>                           John Bradley
>                           Nat Sakimura
>                           Torsten Lodderstedt
>         Filename        : draft-ietf-oauth-mtls-03.txt
>         Pages           : 17
>         Date            : 2017-07-28
> Abstract:
>    This document describes Transport Layer Security (TLS) mutual
>    authentication using X.509 certificates as a mechanism for OAuth
>    client authentication to the token endpoint as well as for
>    certificate bound sender constrained access tokens.
> The IETF datatracker status page for this draft is:
> There are also htmlized versions available at:
> A diff from the previous version is available at:
> Please note that it may take a couple of minutes from the time of submission
> until the htmlized version and diff are available at
> Internet-Drafts are also available by anonymous FTP at:
> _______________________________________________
> OAuth mailing listOAuth@ietf.org
> _______________________________________________
> OAuth mailing list

*CONFIDENTIALITY NOTICE: This email may contain confidential and privileged 
material for the sole use of the intended recipient(s). Any review, use, 
distribution or disclosure by others is strictly prohibited.  If you have 
received this communication in error, please notify the sender immediately 
by e-mail and delete the message and any file attachments from your 
computer. Thank you.*