[Atp] Re: Early Attempt at ATP Charter Text

Bryan Newbold <bryan@blueskyweb.xyz> Fri, 14 November 2025 01:15 UTC

Return-Path: <bryan@blueskyweb.xyz>
X-Original-To: atp@mail2.ietf.org
Delivered-To: atp@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 15F6D89222C1 for <atp@mail2.ietf.org>; Thu, 13 Nov 2025 17:15:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: 0.399
X-Spam-Level:
X-Spam-Status: No, score=0.399 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, FROM_SUSPICIOUS_NTLD=0.499, HTML_MESSAGE=0.001, PDS_OTHER_BAD_TLD=1.999, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=blueskyweb.xyz
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 Z-FwQ4DusICg for <atp@mail2.ietf.org>; Thu, 13 Nov 2025 17:15:57 -0800 (PST)
Received: from mail-qv1-xf32.google.com (mail-qv1-xf32.google.com [IPv6:2607:f8b0:4864:20::f32]) (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 9E7168922256 for <atp@ietf.org>; Thu, 13 Nov 2025 17:15:53 -0800 (PST)
Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-880499b2bc7so13928726d6.3 for <atp@ietf.org>; Thu, 13 Nov 2025 17:15:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=blueskyweb.xyz; s=google; t=1763082953; x=1763687753; 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=QdWpfjfppGN4BdS0rmIFsPMVfzTJib5jtquRSPQlHSg=; b=H/rPmnMQ+0rDjNUrtVZTKtA+zw4oIdSuY8ZhDgH6DfL+ZfUWYlHLnCuDjNZULLqrYJ RZuTmFmN6RG3bsiP8RadJwbs4pEsCE5hIiHKaBRmcdGb9ZIBUzLIo18KqwYE75/pSs42 W8pjisC0JpxjAU9Ry/yMSfRB12slpWPk4xAZyUtD66YWeT5ToiKT6XDUftNrY8TEPWTA 0D7gQ8ctJ+5pzFNN/cz/qDswjySpJM72BbIsAErh9W8Zv5G/caSU96YejVzGRsN25Bk5 GXCJ5NVOqnNc/edb8w/dsrTBpz88doDBFQXngnoQxKWX6cNxuyPjvTSRWsphc7+0Lu6O nbNA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763082953; x=1763687753; 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=QdWpfjfppGN4BdS0rmIFsPMVfzTJib5jtquRSPQlHSg=; b=FvjnH6x38ZV/EtWTTGKnkfuhqqFS3H1RQDctNyIA+DjHR4kWFZK7tBkEKTwzZlcoU9 LV/diKkV+L/0FPsN5PqFq68iS7ma7/lsWZwiScGiG3amxZxpdTkgrC80sVdH26HB3WyM RuQpek2a6udHoowpIQrCsFb/vgPX2SvxqjNRbuOBfLlyaSCxSfN4RVkvhQmU/JPETKLI X+51Sw7QTUyJsO2L0dlZffLw3iBafu7E1gF/KLFs9jvnBBEdyMoI9sSmBcecLXXdac3b ZL9VN2DCUhhXpes3XjLeUUgDikmyTFPF3jWsqZ7/VNGWBNO5R+WVabPwEo9xn7lOxKpu Wwrw==
X-Gm-Message-State: AOJu0YwSK3Hr9KX8cM76raVuVJCoBDCUiAQfSlT5+PTg3RxzkEAc9Nil LR0RR5/yAO8AX5Ge4wv0LZKCFpufqOAjY27HATAm5YlFafIbWA+Do+67De1f8KaOFQ/8/4CHZjk UBSZpy9zmznfPYZaUZPIl2FaY2zUGmayVNAQ+G2X5
X-Gm-Gg: ASbGncsDU7WJh0X9336DOxMq+VetympQL4hyyvIvZgTti3reM6+nQeZc0kWPYJEV68m gFBwl07cUr3LkorcW4F0jWV/80m7ob0HPIRzWmhB5+WBjf+pizVAzo9nh3V/q+DO1vsLZ/35SfB w5GRWwtba9e23DkVA1BepoyQJJYV1Auqt8D7faVuhxqNNUaa8JeVypbEIIgwFsfRTLKKiNWVvqm JLN2WG61lhe2v7Ev9I919OhllOCmLlVO+uKwFIw6C1hl7sMuHMbbpWgEcxR8KSnJENXbrM=
X-Google-Smtp-Source: AGHT+IEQ1GC3n2Ufj6T9QbxwO91M0lE/WEfUwS/cc5Eyp0QIwBfO4SIKvl6p+IdQKCFniXXld2+TpWfAVLbAEkAdFXA=
X-Received: by 2002:a05:6214:b6a:b0:880:4310:7e02 with SMTP id 6a1803df08f44-882925c1a9fmr18662566d6.21.1763082953054; Thu, 13 Nov 2025 17:15:53 -0800 (PST)
MIME-Version: 1.0
References: <CABFYohgnJEs13RfU1s7PvwrW-wR2a8xT1aOAz1hM2N+5NWZUcw@mail.gmail.com> <CAMzqgowrr2en3eKCzd1T1JaeuQ3si32qx-FWouOy+3QinhEYOA@mail.gmail.com>
In-Reply-To: <CAMzqgowrr2en3eKCzd1T1JaeuQ3si32qx-FWouOy+3QinhEYOA@mail.gmail.com>
From: Bryan Newbold <bryan@blueskyweb.xyz>
Date: Thu, 13 Nov 2025 17:15:42 -0800
X-Gm-Features: AWmQ_blymhPh-xRMlQwHY4SeuztFdyY04u4_dGZ4rBJ2KkihOIfEe29yKHuf9Zg
Message-ID: <CABFYohiTaD8jRRee8Tw-EpXHEx4hVvu+CrKybkSTVOLXwrhPHw@mail.gmail.com>
To: Orie <orie@or13.io>
Content-Type: multipart/alternative; boundary="00000000000020683c064383bd1e"
Message-ID-Hash: FY2VMAMINOCPE656AF3AEQTTHA37FMZJ
X-Message-ID-Hash: FY2VMAMINOCPE656AF3AEQTTHA37FMZJ
X-MailFrom: bryan@blueskyweb.xyz
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: atp@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Atp] Re: Early Attempt at ATP Charter Text
List-Id: Authenticated Transfer <atp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/atp/gRJBgQHKY3p1zBmzoJ97PBmNLi0>
List-Archive: <https://mailarchive.ietf.org/arch/browse/atp>
List-Help: <mailto:atp-request@ietf.org?subject=help>
List-Owner: <mailto:atp-owner@ietf.org>
List-Post: <mailto:atp@ietf.org>
List-Subscribe: <mailto:atp-join@ietf.org>
List-Unsubscribe: <mailto:atp-leave@ietf.org>

On Wed, Nov 12, 2025 at 8:56 AM Orie <orie@or13.io> wrote:

> If you use more than just an identifier to public key binding from DIDs (
> if you use https://www.w3.org/TR/did-1.0/#services ) ...
> You need a way to handle this that is not locked to your out of scope
> identity layer.
>
> I would suggest putting anything that you have that relies on things that
> are in the DID Document, in scope, so that the working group can develop a
> complete system that works with and without DIDs.
>

For reference, the current things that get pulled from the DID document
(described in https://atproto.com/specs/did#did-documents)

- account "handle" is indicated in 'alsoKnownAs' array
- one or more public keys are declared in the 'verificationMethod' array.
AT uses the id fragment (eg, #atproto) to reference specific keys for
different purposes
- one or more service locations declared under the 'service' array, again
using id fragment (eg, #atproto_pds) for specific purposes

The DID document might contain other fields and entries for non-AT
purposes, and that is fine (eg, the DID does not need to be used
exclusively with AT). Some protocol-level or application-level features use
additional keys or service entries (eg, #atproto_labeler for moderation
labeling, or #bsky_feedgen for Bluesky app feed providers). All of these
fields should be mutable (support updates), to enable key rotation and
migration between service providers (network locations).

I can certainly imagine other identity frameworks providing the same degree
of flexibility as DIDs do, and that we can specify what the requirements
are in the abstract. For the charter, maybe that paragraph could be
iterated on as:

---
The output of this working group will not mandate any single identity
system implementation. It will instead describe an interface boundary and
requirements for identity systems to fulfill that interface. These include
the ability to register public keys for multiple distinct purposes, service
endpoint URLs for multiple distinct purposes, and multiple alternative
account URIs. All fields must be mutable to enable key rotation and
migration between service providers.
---

To bump back up to the big picture, this does feel a bit like describing
something that walks and talks like DIDs and the DID document structure,
without actually requiring DIDs and the DID document structure. I think for
full functionality and interoperation in the network, the identity
requirements are going to look an awful lot like DIDs. Signing and
verifying data repositories is a simpler subset of that flexibility.

--bryan