[OAUTH-WG] Re: Next steps for Attestation-Based Client Authentication
Judith Kahrer <judith.kahrer@curity.io> Thu, 07 May 2026 10:24 UTC
Return-Path: <judith.kahrer@curity.io>
X-Original-To: oauth@mail2.ietf.org
Delivered-To: oauth@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 2FE81EA70FD6 for <oauth@mail2.ietf.org>; Thu, 7 May 2026 03:24:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1778149470; bh=yXpAUa/2KsjzpRtWb+xc9Gk2a1xgaCQfn8iVWJYhvbE=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=bxhBlwhVkhn7rZFL/jG9a06qKSfHEOHe7ceeCIBMoFbX1OPrdyS3OK2Mm8SpcNqbs c1UgkO5t8lROO5lvP8VnRjxBLxwPbvaHhNPSUtjhehNmzPXC/nBlPaBJN6dN2tzGSW UAkypn/gM/mlvfP8bzRT5qNBdzMhNtCPy9p+tEgM=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=curity.io
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7UCuYySK43XG for <oauth@mail2.ietf.org>; Thu, 7 May 2026 03:24:25 -0700 (PDT)
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com [IPv6:2a00:1450:4864:20::230]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id EC8E5EA70FC6 for <oauth@ietf.org>; Thu, 7 May 2026 03:24:25 -0700 (PDT)
Received: by mail-lj1-x230.google.com with SMTP id 38308e7fff4ca-392445f11c5so7078071fa.1 for <oauth@ietf.org>; Thu, 07 May 2026 03:24:25 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1778149464; cv=none; d=google.com; s=arc-20240605; b=S4hENDPSjNPEqe1MwHrPn45A8V7yxx+zjRB3+PfVFAhX9cvzjUXPh22ge7YhliWOBa TruDTXAOMZM/dOliNPPvpu+eKGKXqls08e5M97dpnBdkmDWwYeuMdEwgSf1cgPNLKWAv qEr86n4dC7W7vLzBMI9zFQfzCIygD3BC6PDwwKgE49Y6/dR+elCTO72AmLiTpD73+vh9 9u1iBkNM+zxXEXlgvGzcvIJmqfXw8DOXeK2ZIRniQvKRjPyQtpbHuLZUIXOUH51zFHyN jwOQOtv5skMh6qgWFgy2I28Tiqi6EhmFQ0TIAmTv3MXsDNvek13YKZRipZHEacXo3yE+ eiOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=vmg6R1IvU6MPIKHUQI5sfTdtToBg4Xw22PQDblcCTM4=; fh=5eucVY884V+jjwEKRBn0R74QNJSArNvyTf6Q1zW7fLM=; b=OFkban6MGHYBbQDzeh//woG43Wxknt9pMtf6zCt+5/IGvueHL4N5TiSo5ITU7yGh5F gGPA1hajER+iXY6HWrK85y+DsFpcRBdbVd5XcUQFH+XCwq7FVFKAqKCSApbBY0RGg32R WT4QhGRnBcMMpJtP+U9in4t/Wf9oQUBcsBeFm2Lz8GhVPZwglx5XLofmpO6Rj3F56Hvu He8fa+/Ysgo4KXrMOxFIfsBPV4P7oQ5mxb1a9iF+Y17AOJ3+JO5t50Gpr7xRnfTM80nw MBBNOtjj1QM3uTGUZ11PA9FAXNWX0YBBLD7Np5V9/Wq3aNZj4cmGBfzLzn4A8al/Xszl xzFA==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=curity.io; s=google; t=1778149464; x=1778754264; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=vmg6R1IvU6MPIKHUQI5sfTdtToBg4Xw22PQDblcCTM4=; b=FxO8UJbpBSk7uko7RUiKZn3FIPupHaiyOd+63BPrHnH0kjj78zEkEd5J4jrCUrOZYj Pkphe+O1LFpL6e1RZGciadaelZb+NDhBQOpQxPye0IKYkzOm9KLuwExZowJOQkNMRGJk xhMXdf0lz7rxGziXoAzJPZyFS7WVRhHBovY30loPMMesIiDPnAPQoyvE17LCrl88Pxum HWH/1ynJOwo7vZJ1/D9KXQBLl0aQUmyoAsUWVB7co6ZTD5tvJks0fz2slG6oAriTsL8G spd5OmST2SrjHhTwjMpMnfgxLPoySN+5ytQzmtZZ6VGbytr60+TMZUg6oi/5qVnxWpvg vEdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778149464; x=1778754264; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=vmg6R1IvU6MPIKHUQI5sfTdtToBg4Xw22PQDblcCTM4=; b=L8EGhBH6xh83JkGXDUi+Z/IWJoqCXGff0nR+9zQdi8a4CH0NuoGoH79Xgr2PND6G/Z A1EdtVLqS24mywklzCLUNzryBZX7uCLCtqznPg+9tj/jrkUPaz6qtFKNbGt+zT15A+bD aFrNrKHiXT3ipDOZ0flSlowFskwWBXoGey3RsPau1ZHoNGOgI6BiPzAWVMRyrOcjMI7E Xauz+21fI0ROVuiKwOtkTdL/J5ADQKBPys8sJCuh0SKNB4Ju23Temrf61j8kO0FbpQKb gkKilx2lFtuFztTS7xirdxP8HaMPh+6QJLkgHKRQ7wlWwnifokoqX3fxkPYCd8CHX985 bGpg==
X-Gm-Message-State: AOJu0YxBkiMQzieJqkYYP8J2dCZUBh+JCVQDojQc20fksfndh/g/v2jP sQhtGgBrHaIq0EzKDJAdyeGJwayWGVeTKxnuN0/R6L7I0+XguOJdnpbGsLVoz0GcEom14nWdf10 jRq26Xjq86+fq3tPevz1qPBEHkQKnJ+LTPRWQWlBiscOV40Q5BcLkIeM=
X-Gm-Gg: AeBDietC5YavJKNmdQfQbJ/AlLfXIHAyKzU/CHaaZ96ymfyfat2z3zF5foy7gZ5ghlA JGj6Fc7gB4a04Fr33UvUJ9lbVXGUlpdTAHel2mEXrOoUjQ4VQ+D2TqFvs1HVU4DEnPwPi7kXFU4 i61KyGcfwsieQ2OJyGyJhK0Qm5fyPgNweKZtI8Qb6+LmUbvPT7BiaQKyNC+2iDJpAi/IWi4oVdu uZy09ar2UnfommJu0A1HiCj+gsQ74VUERqJSHECzTbAi3v2qCwNIa+hDeABvewEpaSzcW5x3bUB KalAjXiRNTy7NyLPnYbxSI0yAZ8C3Q==
X-Received: by 2002:a05:651c:d5:b0:38b:dd55:b71 with SMTP id 38308e7fff4ca-393db0ae68amr4505621fa.20.1778149464427; Thu, 07 May 2026 03:24:24 -0700 (PDT)
MIME-Version: 1.0
References: <79dff38d-f430-4011-94b4-b51c2ddf9846@posteo.de>
In-Reply-To: <79dff38d-f430-4011-94b4-b51c2ddf9846@posteo.de>
From: Judith Kahrer <judith.kahrer@curity.io>
Date: Thu, 07 May 2026 12:24:08 +0200
X-Gm-Features: AVHnY4LkaG5qR9PmaHi3sOJJMaTeeuZFGycr8HsAq2VVwEjnFBVPZTM128QAJOM
Message-ID: <CAK7_QNRgD2dCwLbMsOCnjcDLVxXG3AVQKQ_d1TO7eNcwj3KN=Q@mail.gmail.com>
To: Paul Bastian <paul.bastian@posteo.de>
Content-Type: multipart/alternative; boundary="0000000000002f68b0065137afe8"
Message-ID-Hash: WOPXSIKXMUTG5QKOYEPNM4GITKYSR3CW
X-Message-ID-Hash: WOPXSIKXMUTG5QKOYEPNM4GITKYSR3CW
X-MailFrom: judith.kahrer@curity.io
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-oauth.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: oauth <oauth@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [OAUTH-WG] Re: Next steps for Attestation-Based Client Authentication
List-Id: OAUTH WG <oauth.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/qhHvFJH40ibodd3nSsgNaV-j5hA>
List-Archive: <https://mailarchive.ietf.org/arch/browse/oauth>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Owner: <mailto:oauth-owner@ietf.org>
List-Post: <mailto:oauth@ietf.org>
List-Subscribe: <mailto:oauth-join@ietf.org>
List-Unsubscribe: <mailto:oauth-leave@ietf.org>
Hi Paul, I support the DPoP addition in the editor's draft. To be honest, I have never been a big fan of the separate PoP-JWT but I have to admit that the draft improved quite a lot since I looked at it the last time! Reading the draft again, it actually contains two mechanisms: - On the one hand, it defines a new client authentication method for an OAuth client (attest_jwt_client_auth) as indicated by the title. - On the other hand, it describes a mechanism for "additional security signals". Imo, the title of the document should reflect both - or you split them up into two. Is there a way for the resource server (or authorization server) to challenge the client to provide additional security signals? I guess, they could return an 'invalid_client_attestation' error, if the request was missing an attestation. I think it would be good with more guidance on how to inform the client to provide the attestation as additional security signals if it is missing (in addition to e.g., the access token or client credentials). The resource server could even publish its requirements in its resource metadata document, e.g., with "client_attestation_required: true". I agree with the conversation in the minutes. Leave the details of the attestation process out of scope. However, I suggest you list the requirements as it currently is unclear what attestation means. What do you expect an attester to validate at a bare minimum (i.e., client instance controlling the key)? What makes the key-bound JWT a client attestation? What information should/does the client attestation JWT convey? In section 6.4 you mention: "[Sending additional security signals] may provide additional assurance about the client's authenticity, integrity, state or other information contained in the Client Attestation". Make it clear (as part of the terminology?) that this is what you expect from an attester and client attestation. Imo, the client's authenticity and integrity are key to an attestation (without having to get into technical details...). +1 on the use case for platform-specific apps (so-called "native apps". I prefer to avoid the term native to foster a more inclusive language). At Curity we have implemented something very similar for our Hypermedia Authentication API (HAAPI) quite some time ago to support mobile apps. I can also picture a use-case where you use client attestation in DCR, for example, to establish trust in the client (comparable to software statement). Cheers, Judith On Thu, May 7, 2026 at 12:11 AM Paul Bastian <paul.bastian@posteo.de> wrote: > Hi all, > > on Monday we had the OAuth Interims call dedicated to Attestation-Based > Client Authentication, see the minutes for details: > https://datatracker.ietf.org/doc/minutes-interim-2026-oauth-01-202605041700/ > > As a follow-up, we want to bring the following points also to the mailing > list to reach out to people that did not participate on the Interims call: > > - we presented the integration of the combined DPoP mode into the editor's > draft, allowing to use a single key for both DPoP and Attestation-Based > Client Authentication and re-use the DPoP Proof Header as a proof of > possession for the Client Attestation JWT. We are looking for feedback on > the current draft before making a new release > - we discussed which which OAuth artefacts should explicitly be bound to > the client instance and the client instance key of the client attestation > JWT. Currently we have language for the refresh token and there are two > open Github issues > https://github.com/oauth-wg/draft-ietf-oauth-attestation-based-client-auth/issues/56 > and > https://github.com/oauth-wg/draft-ietf-oauth-attestation-based-client-auth/issues/114 > that discuss whether auth code or other artifacts shall be bound to the > client instance. If you have opinions on this, please respond in either > issue or respond to this mail > - we discussed whether explicit relationship to DCR should be mentioned, > see > https://github.com/oauth-wg/draft-ietf-oauth-attestation-based-client-auth/issues/61. > The feeling in the Interims call was to not include specific language > - we discussed whether we should be more descriptive about the mechanisms > how the client instance authenticates towards the client attester, see > https://github.com/oauth-wg/draft-ietf-oauth-attestation-based-client-auth/issues/107 > . These steps are currently out-of-scope and the feeling in the interims > call was to not include specific technologies > - we discussed the AS/Client metadata for supported algorithms, see > https://github.com/oauth-wg/draft-ietf-oauth-attestation-based-client-auth/issues/170 > . The proposal is to remove > client_attestation_signing_alg_values_supported and > client_attestation_pop_signing_alg_values_supported and rather re-use the > existing token_endpoint_auth_signing_alg_values_supported. There was > discussion whether client metadata makes sense, feedback is welcome. > > If you want to provide feedback, respond to this mail or post in the > relevant Github issues. > > Best regards, > Paul > _______________________________________________ > OAuth mailing list -- oauth@ietf.org > To unsubscribe send an email to oauth-leave@ietf.org >
- [OAUTH-WG] Next steps for Attestation-Based Clien… Paul Bastian
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Frederik Krogsdal Jacobsen
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Kosuke Koiwai
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Judith Kahrer
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Denis
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Mohamad Khalil Yossif
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Paul Bastian
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Paul Bastian
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Denis
- [OAUTH-WG] Re: Next steps for Attestation-Based C… Judith Kahrer
- [OAUTH-WG] Re: Next steps for Attestation-Based C… renatas