[OAUTH-WG] Re: SD-JWT linkability

Watson Ladd <watsonbladd@gmail.com> Sat, 21 December 2024 21:19 UTC

Return-Path: <watsonbladd@gmail.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 884D4C14F6F3 for <oauth@ietfa.amsl.com>; Sat, 21 Dec 2024 13:19:32 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.108
X-Spam-Level:
X-Spam-Status: No, score=-2.108 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eEs35REOxcYs for <oauth@ietfa.amsl.com>; Sat, 21 Dec 2024 13:19:31 -0800 (PST)
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) (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 ietfa.amsl.com (Postfix) with ESMTPS id BDED2C14F614 for <oauth@ietf.org>; Sat, 21 Dec 2024 13:19:31 -0800 (PST)
Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-43624b2d453so32353895e9.2 for <oauth@ietf.org>; Sat, 21 Dec 2024 13:19:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1734815970; x=1735420770; 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=uH5OL7eSIaV5u7CF3r6KzBj3aj1rvmaxzpM8MgsZ8+4=; b=MH3eo72vBTCk4ZDA2ORHgRla4B7zFfQvRGUEDotuyNArkkzcIfo5WrZJaCjhlxKLa+ Nnz7j/O8yYeCEqon7zmCl4Ks14lqCRGXKxW/0p8P7ItIf+6mp4/NQdMjvtCZLl1w3Dx3 XVZn2KFfM2znF7QbTf4LT61U2K5UGgv56GXHQ9xXHlYtq6RjZhW9fn38HyUxF6wTKA77 assaTGC0P2SqjJhs/EPKVnJdsGi199UzjAawt446qqCb105I0k6hIRIco0xq8GYzq0Q7 ePfEOlKpZySELAXHVyruiwXEyodzEkw+jYVhtLWIOIjr+wH6YTuJp0SevgiL47IcRrIp 7CHA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734815970; x=1735420770; 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=uH5OL7eSIaV5u7CF3r6KzBj3aj1rvmaxzpM8MgsZ8+4=; b=kYFDDD6jGmR88x8ALfsaxMHMeQz1LPqDKzrzvmA/QTkXicKzA5XiMs1k2DozkNEoK1 wW7mu4CQuzpOlmkp9dEhqlr1bXYzMSMmwqzzpnkugU5i8g4fz6op5fTUj0koirb4i3MJ SkyWE6w70U5xo5jYE5wKnK6cPHlyaKJKWkyZD1dDmlB7Y96L3HUMsBOKdAYIaKuwdebY SrLtmlmqU6ZI/XxBu+BIndxG553ie4+1reiC72/hmZWtiG01v7cp64O4tmFm5KpyX9tc 5v4mvYrV0gZRGS35A6j740YgwQ0kpBtqUJxXLVIlSp72ZBYLx1rOkmJFIHsuePYLDHwv jv0Q==
X-Forwarded-Encrypted: i=1; AJvYcCXH2Z8+ydNT4nGSEQcQmTYnumOkkCFnN/8w6o71f3wgeOJ118KAooUwN6blAikWj6zYCe6YTA==@ietf.org
X-Gm-Message-State: AOJu0YyZQr6K3xE/KayU1PvWGjrAue67nFQKRbG5ZHYjFUHpxiND8tk3 mb4F0CtZEEaDfIu64SySxlxZLcNGllMGnvoBiw8qzOOctLDRBzpMF30p5F1hp5p4zvKOf82atyv vJktl6PErogiBTnqAah+bW+TFMZrHUQ==
X-Gm-Gg: ASbGncsr4f75gQEWydXRx88RtJ4K0EsBJoHZgxK2ATszh1RUomYkl1RbGbOz5UEoU3a ygTJzZ0jjM/dJtSP3gePVpbTHb8fKcnS/fikrQ/hd6JahrBC987xqFuf9DcXKKJE19dpEpo3r
X-Google-Smtp-Source: AGHT+IGpC436p6p+/aHXnQdTEohkEMrW2llCuUGn4w+My79uI79K2rWx0+UzC4h5qR3jSXMoZ1fYqRA1+kysWOxAkIg=
X-Received: by 2002:a05:600c:3b86:b0:434:f0df:9fd with SMTP id 5b1f17b1804b1-4366835c187mr64603685e9.2.1734815969601; Sat, 21 Dec 2024 13:19:29 -0800 (PST)
MIME-Version: 1.0
References: <CACsn0ckGp4AocD1fQbMCs45P_Z5vjveggzDJw=-Vk5kxinM28Q@mail.gmail.com> <D8C86F2E-E288-4799-98BD-108F553C8CFE@authlete.com> <CACsn0cnKLr0Z-uJRM0TySCXCBbcO8wkDhRFLbsh8K8LBJepTbA@mail.gmail.com> <50282CFE-6DE4-48B7-9080-E2D4E81F9569@authlete.com> <CACsn0ckGOpLR617mFTjVH94kiV3Xi4U6PZT-w=YW9g1_+tZ9Jg@mail.gmail.com> <CH3PR13MB67473768ADB036D89A65FCDDE1072@CH3PR13MB6747.namprd13.prod.outlook.com>
In-Reply-To: <CH3PR13MB67473768ADB036D89A65FCDDE1072@CH3PR13MB6747.namprd13.prod.outlook.com>
From: Watson Ladd <watsonbladd@gmail.com>
Date: Sat, 21 Dec 2024 13:19:18 -0800
Message-ID: <CACsn0c=oVhVO69w=wE1Lbo5Unk888s65Lh-OgqMp7kgVkP8zDQ@mail.gmail.com>
To: Pierce Gorman <Pierce.Gorman@numeracle.com>
Content-Type: multipart/alternative; boundary="0000000000009e70770629ce518e"
Message-ID-Hash: GSJ3AR5UBKLZ6GAKDPQJUYLRVZFSXWYV
X-Message-ID-Hash: GSJ3AR5UBKLZ6GAKDPQJUYLRVZFSXWYV
X-MailFrom: watsonbladd@gmail.com
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: IETF oauth WG <oauth@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [OAUTH-WG] Re: SD-JWT linkability
List-Id: OAUTH WG <oauth.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/Jf93lIPq-29SRyoM_7O1chJUlWw>
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>

On Fri, Dec 20, 2024 at 12:57 PM Pierce Gorman <Pierce.Gorman@numeracle.com>
wrote:
>
> Is there an alternative method you have in mind that avoids the
linkability concerns you've outlined?  Would a short paragraph in the
Security Considerations which warns about specific use case
vulnerabilities, and/or perhaps points to a/the suitable alternative be a
way forward?

I don't see why Security Considerations vs. Privacy Considerations changes
it substantively either way. Editorially I think this is the right place.

I don't think warning about specific use cases is a good idea: we can't
anticipate what all the problematic cases will be.
>
> Pierce
>
> CONFIDENTIAL
> -----Original Message-----
> From: Watson Ladd <watsonbladd@gmail.com>
> Sent: Friday, December 20, 2024 12:07 PM
> To: Joseph Heenan <joseph@authlete.com>
> Cc: IETF oauth WG <oauth@ietf.org>
> Subject: [OAUTH-WG] Re: SD-JWT linkability
>
> EXTERNAL EMAIL
>
> On Fri, Dec 20, 2024 at 9:47 AM Joseph Heenan <joseph@authlete.com> wrote:
> >
> >
> >
> > On 19 Dec 2024, at 21:54, Watson Ladd <watsonbladd@gmail.com> wrote:
> >
> > On Tue, Dec 17, 2024, 1:59 PM Joseph Heenan <joseph@authlete.com> wrote:
> >
> >
> > Hi Watson
> >
> > Just to respond to the suggested text:
> >
> >
> > "When disclosures include information easily understood to be
> > identifying, users intuitive view of what they are revealing largely
> > matches the underlying technical reality. In cases where the
> > information being disclosed is not identifying, SD-JWT MUST NOT be
> > used as this confusion leads to users making the wrong choices.
> >
> >
> > This sentence is really hard to make sense of and I don’t think
implementors will understand it. I’m not convinced I understand it even
with the extra context from the threads. I think a MUST NOT is far too
strong too, and saying ’SD-JWT’ in particular must not be used it too
strong as an SD-JWT where everything is disclosed (or no selective
disclosures are present in the issued credential in the first place) is no
different to other credentials formats that don’t have selective disclosure.
>
> I think this is subsumed by the first sentence. When users are disclosing
information that wasn't identifying, but the mechanism involves
transmitting a unique identifier there is a problem.
>
> >
> >
> >
> > Would adding "When users disclose information that is not identifying,
> > e.g. age, the fact that the mechanism in this draft exposes the unique
> > signature of their credential is not obvious. Users could have made
> > different decisions if they understood this. Therefore," in the middle
> > help?
> >
> >
> > I think that makes it easier to understand, but I disagree with the
premise - I believe there are likely ways to describe this to users and
this needs to be properly researched & tested with real people. As I said,
the MUST NOT is too strong regardless - there are likely cases where the
user recognises that tracking like this is possible/inevitable, and
regardless it seems to imply that SD-JWT has worse properties than (for
example) JWT based credentials, which is something we definitely shouldn’t
do.
>
> Then when people have demonstrated that they can mitigate the risk, we
can write a bis. The point is some mitigation needs to be demonstrated. I
want to put text in that someone can show their boss to say "we shouldn't
implement this because we don't have a demonstrated, working mitigation for
the privacy risks that aren't apparent". Do you have alternate ways to
document this issue that will do that?
>
> >
> >
> >
> > Applications cannot assume Verifiers behave properly (RFC
> > 3514) and MUST analyze the consequences for such linkage with each
> > credential that could be used."
> >
> >
> > This ‘MUST’ is practically impossible for some implementors - for
example, it is impractical for a wallet to make this kind of judgement for
each issued credential.
> >
> >
> >
> > Bingo! Wallets that use SD-JWT can't give users the control over their
> > data that we would expect them to have.
> >
> >
> > I don’t think you have shown this very generalised statement is true,
nor that if it was true that it only applies to wallets using SD-JWT.
> >
> > The wallet needs to be aware
> > of how the requests impact user privacy.
> >
> >
> > The wallet doesn’t need to be aware if it is clear to the user from the
context (and perhaps there are other cases too where the wallet doesn’t
need to be aware). The MUST NOT is too strong, and I’m not sure even a
SHOULD NOT would be appropriate.
>
> Somebody has to look out for the user here. In the web its why we call it
a User Agent. If the Wallet isn't going to be capable of doing that, what
will? What is "clear to the user from the context"? In the case of age
verification it really isn't clear what exactly is being revealed.
>
> >
> > Joseph
> >
> >
> > _______________________________________________
> > OAuth mailing list -- oauth@ietf.org
> > To unsubscribe send an email to oauth-leave@ietf.org
>
>
>
> --
> Astra mortemque praestare gradatim
>
> _______________________________________________
> OAuth mailing list -- oauth@ietf.org
> To unsubscribe send an email to oauth-leave@ietf.org



-- 
Astra mortemque praestare gradatim