[OAUTH-WG] Re: I-D Action: draft-ietf-oauth-status-list-11.txt
Dan Moore <dan@fusionauth.io> Mon, 09 June 2025 18:49 UTC
Return-Path: <dan@fusionauth.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 C933432D1C36 for <oauth@mail2.ietf.org>; Mon, 9 Jun 2025 11:49:28 -0700 (PDT)
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=fusionauth.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 jDKnkuNBA6Go for <oauth@mail2.ietf.org>; Mon, 9 Jun 2025 11:49:27 -0700 (PDT)
Received: from mail-pj1-x102d.google.com (mail-pj1-x102d.google.com [IPv6:2607:f8b0:4864:20::102d]) (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 D43BB32D1C1E for <oauth@ietf.org>; Mon, 9 Jun 2025 11:49:27 -0700 (PDT)
Received: by mail-pj1-x102d.google.com with SMTP id 98e67ed59e1d1-3137c20213cso1823172a91.3 for <oauth@ietf.org>; Mon, 09 Jun 2025 11:49:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fusionauth.io; s=google; t=1749494967; x=1750099767; 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=5BUwvXmPoQCjFBnI2PZsKAsMbZkq11xqA/bBbSMzpMM=; b=RNbTBQdaDQY3ETXWkBckprw5825EsTBGhrSSIDcmHwLkJYlpfpwoTGcESI1cwMn0BN 6E+uKUQ/RXsKA8VQyyFKvwLL3+kzo7uOwx7JDSgD72CLpd5sWfwAzCFjYZNrf8UzuIwP MK/dQZF8aD+V9VRos3Y7TH5whJy6rZR7RQ44A7mH7yUY84XalUvjBiJ8qIWlBocosMt+ nQRl8hcSpWoQetd7HCdpoMSg88YNd4Tn4Cs/13MyGHcZJt1NifSrU2RdCl0fLREGcVYF thlvpxUuGAA4rahQZcaJ5XT3WmPx+FIZu2+pCre43lKUuEYysO2OqMUKNYORpe5E0tT3 DzWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749494967; x=1750099767; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5BUwvXmPoQCjFBnI2PZsKAsMbZkq11xqA/bBbSMzpMM=; b=M/mM7HHmqp8Ty7cXAF/viWVxcdZiY4OMAt7x1vBIYuEF0+q5eKyELKF/BB19FUeEgq geEhffobOm/vC9vmMi1gvyHADsvnFnuqgyVR2K7HvF6GwpGhNe4KbY8dVj/IDm02z5Aw YFYwu+DaGtDk7h0fIYvDk8nWpCbiCsSaP/yJNAeREAZvZZA7e5viFY+FHCqJj5jw6ozJ bAYjVq+X3hzbY6LUo3GnItwREdLJBMy3M41sosKYzFhbs9l8oiQzMRwvwslHGdT6HTmt ls5DH1HnIUshBoFdlx5SrVcXAvTENsX8vAOEGLyCHSBgjlIr3nUcb9w2C+c6aKAzFJyt HQ6w==
X-Gm-Message-State: AOJu0YyL7qFVZMb7q01gTvldzFm8juEn1a1x3xSIAW+Bpp1AEATLT77i tGs1S9KSzobpWwwuNayxKoM5hbCkEJR3UkKa7sbOMqPkoV4B6C+pOHfP3NG+l7Bbfn9Lr7m9fv5 HtEHwRGmUYBHgi27O515ZNPo6df9mHASRYBBWKxZPfbPVygM4PcmsT79c
X-Gm-Gg: ASbGncs1MjzCyO0ZhJeXK6CJgKO8OKeaPc4DrfwmfliD2CIbjpM1HkaA/3hQFUlhe3h 1Z0UAFcP25lFqtx0MhFv+pDAQKLJxkKnBPPJe+wXJsM8PxklxRbHzZdh8ENM92xSI61OB5yv0l2 iShcUfoYfbJcSpRqpnCyuFuERNof3FGtgPsNOyhHXH893A
X-Google-Smtp-Source: AGHT+IGfiqO2IvYj7Ab6yLA/jqNNhY6KTMFcBt4DwMRS8EucBPJnO0AjB4zkze32l8ZzvfZ7GqrADk3w3tmX7P6hlZA=
X-Received: by 2002:a17:90b:38cc:b0:312:e9d:3ffa with SMTP id 98e67ed59e1d1-31347698243mr19048279a91.31.1749494966689; Mon, 09 Jun 2025 11:49:26 -0700 (PDT)
MIME-Version: 1.0
References: <174799089870.946359.11727607923903135413@dt-datatracker-59b84fc74f-84jsl> <CADNypP_5vsE9nhtgYaVmV1zLdVANiAiadY4cKY3HwOd_j=-KFw@mail.gmail.com>
In-Reply-To: <CADNypP_5vsE9nhtgYaVmV1zLdVANiAiadY4cKY3HwOd_j=-KFw@mail.gmail.com>
From: Dan Moore <dan@fusionauth.io>
Date: Mon, 09 Jun 2025 12:49:15 -0600
X-Gm-Features: AX0GCFvDaZn4kj0SqKTdQltzoNhs3OaNVnSbWhXl5Y2vIy5Y3lt89Xsnz6jyaRw
Message-ID: <CAKUhyqHU9Ymr3qQhT_Aeh=5DZYLuG0mjoKyU8cM9mgEQ7MfW=g@mail.gmail.com>
To: Rifaat Shekh-Yusef <rifaat.s.ietf@gmail.com>
Content-Type: multipart/alternative; boundary="00000000000006b5a40637280ad6"
Message-ID-Hash: VP6PZFDCISQF5NI2T3BOUYKHNSIUW2VN
X-Message-ID-Hash: VP6PZFDCISQF5NI2T3BOUYKHNSIUW2VN
X-MailFrom: dan@fusionauth.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@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-status-list-11.txt
List-Id: OAUTH WG <oauth.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/JScr8fwfkTNNXZ_HZlejvvik2g0>
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 folks, I have the following comments. As a general comment, I worry that Referenced tokens may already define a "status" claim for their own purposes. Since this was not a previously registered or public claim, I fear there may be collisions with existing private claims. I'd suggest using a less common claim. Perhaps _status (like the _sd claim in the SD-JWT RFC) or even "token_status", which are both less likely to collide. I searched around and didn't see "status" as a claim in any public documentation. This affects section 3 and 6.1, among others. I'm new to this RFC discussion, so perhaps this has been discussed already. Other comments: Section 1: There's a typo. "data structures" -> "data structure". Section 1.2: I found this sentence confusing: "Placing large amounts of Referenced Tokens into the same list also enables herd privacy relative to the Status Provider." Would suggest this rewording: "Placing large numbers of Referenced Tokens into the same list also offers Holders and Relying parties herd privacy, even from the Status Provider." Section 3: Another possible typo: "Also known as Verifier." -> "Also known as a Verifier." Section 4.1.4: This is the first introduction to status values, would be nice to define the values of 0x00 and 0x01 or at least reference section 7.1. It was confusing to not know the value meanings. In the next paragraph there is a new status type, SUSPENDED which is defined. There's also a status listed of value 3 (status[3]) but that value is never defined. Would suggest either defining or mentioning that this is application specific, as defined in 7.1. Section 4.2: This states the status_list claim is REQUIRED but it is not present in the examples. Would it not be better to show that? For the first example, display something like: { "status_list": { "bits": 1, "lst": "eNrbuRgAAhcBXQ" } } Section 6.2: This sentence has a redundant phrase: "The value of idx MUST be a non-negative number, containing a value of zero or greater." Could it be replaced with "The value of idx MUST be a non-negative integer."? There's a self-reference to section 6.2: "The "status" object uses the same encoding as a JWT as defined in Section 6.2." But this sentence is in section 6.2. Is that intended or should it be a reference to something else? What am I missing? Section 7.1: There's a phrase that is not a full sentence: "Meaning the processing of Status Types using these values is application specific." You could drop 'Meaning'. The following paragraph feels important: "The processing rules for Referenced Tokens (such as JWT or CWT) precede any evaluation of a Referenced Token's status. For example, if a token is evaluated as being expired through the "exp" (Expiration Time) but also has a status of 0x00 ("VALID"), the token is considered expired." Could add a MUST before 'precede' and change it to: "The processing rules for Referenced Tokens (such as JWT or CWT) MUST precede any evaluation of a Referenced Token's status. For example, if a token is evaluated as being expired through the "exp" (Expiration Time) but also has a status of 0x00 ("VALID"), the token is considered expired." It is a MUST in section 8.3, so maybe it'd be better to refer the reader to that section? Section 8.1: I was confused by these two sentences: "The Relying Party MUST send the following Accept-Header to indicate the requested response type:" "If the Relying Party does not send an Accept Header, the response type is assumed to be known implicitly or out-of-band. " I was under the impression that a MUST was non-negotiable, but in the second sentence guidance for not sending the Accept-Header is given. Maybe change MUST to SHOULD? Section 8.3 Perhaps Step 4.3 and 4.4 should reference section 13.6 which gives implementation guidance? Section 11.3: Looks like a formatting issue with lists not being rendered. For example, "- the same x5c value or an x5t ..." and "- the same x5chain value" Section 12.1: We refer to the "issuer" as "he" or "him" a few times in section 12. Could replace it with "the issuer" without any loss of meaning and it would read better: "this would enable him" -> "this would enable the issuer" Section 12.2: Same as in section 12.1 "By these means, he could maintain" -> "By these means, the issuer could maintain" Section 12.4: "and his related business" was confusing. Maybe instead: "and related implementation details" The list prefaced with "This behaviour could be mitigated by:" needs the tense to be changed. Suggest: This behaviour could be mitigated by: - disabling the Status List Aggregation Section 9 <https://www.ietf.org/archive/id/draft-ietf-oauth-status-list-11.html#aggregation> - choosing non-sequential, pseudo-random or random indices - using decoy entries to obfuscate the real number of Referenced Tokens within a Status List - choosing to deploy and utilize multiple Status Lists simultaneously Section 13.2 The link appears broken: "see (#privacy-considerations) for more details" Section 13.3 Similar to section 11, this section appears to have some list formatting issues. "Status List Tokens depends on: - the size..." Thanks, Dan On Fri, May 23, 2025 at 10:56 AM Rifaat Shekh-Yusef <rifaat.s.ietf@gmail.com> wrote: > All, > > Please, review this version of the document and make sure that your > comments, if you had any, were addressed. > I will start working on the shepherd write-up in a week or two. > > Regards, > Rifaat > > > On Fri, May 23, 2025 at 5:05 AM <internet-drafts@ietf.org> wrote: > >> Internet-Draft draft-ietf-oauth-status-list-11.txt is now available. It >> is a >> work item of the Web Authorization Protocol (OAUTH) WG of the IETF. >> >> Title: Token Status List >> Authors: Tobias Looker >> Paul Bastian >> Christian Bormann >> Name: draft-ietf-oauth-status-list-11.txt >> Pages: 72 >> Dates: 2025-05-23 >> >> Abstract: >> >> This specification defines a mechanism, data structures and >> processing rules for representing the status of tokens secured by >> JSON Object Signing and Encryption (JOSE) or CBOR Object Signing and >> Encryption (COSE), such as JWT, SD-JWT VC, CBOR Web Token and ISO >> mdoc. It also defines an extension point and a registry for future >> status mechanisms. >> >> The IETF datatracker status page for this Internet-Draft is: >> https://datatracker.ietf.org/doc/draft-ietf-oauth-status-list/ >> >> There is also an HTML version available at: >> https://www.ietf.org/archive/id/draft-ietf-oauth-status-list-11.html >> >> A diff from the previous version is available at: >> https://author-tools.ietf.org/iddiff?url2=draft-ietf-oauth-status-list-11 >> >> Internet-Drafts are also available by rsync at: >> rsync.ietf.org::internet-drafts >> >> >> _______________________________________________ >> OAuth mailing list -- oauth@ietf.org >> To unsubscribe send an email to oauth-leave@ietf.org >> > _______________________________________________ > OAuth mailing list -- oauth@ietf.org > To unsubscribe send an email to oauth-leave@ietf.org >
- [OAUTH-WG] I-D Action: draft-ietf-oauth-status-li… internet-drafts
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Rifaat Shekh-Yusef
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Dan Moore
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Dan Moore
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Paul Bastian
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Paul Bastian
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Paul Bastian
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Christian Bormann
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Paul Bastian
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Paul Bastian
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Christian Bormann
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Warren Parad
- [OAUTH-WG] Re: I-D Action: draft-ietf-oauth-statu… Denis