[Uri-review] Re: Provisional URI scheme registration request: "nostr"

Melvin Carvalho <melvincarvalho@gmail.com> Thu, 23 July 2026 19:36 UTC

Return-Path: <melvincarvalho@gmail.com>
X-Original-To: uri-review@mail2.ietf.org
Delivered-To: uri-review@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id C321311DA8E0C for <uri-review@mail2.ietf.org>; Thu, 23 Jul 2026 12:36:11 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1784835371; bh=N+Vq0C8n+wb3flCsbdd0o4jZo9zDVeb7/PNN914pj+o=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=bBS7/IS+GMscLvlf0LzGIeQmbzxdLFkZbdLzhdo8+qTSEtffaV4SP30KTZ+CanxGS Bc8rUF/XcKIDHhkkDJVrVQyJGeHaPexY9oCxSAhS7IoGCroW2uv0DFd4rPFzoowfcx m4UuzvgiLywlFrrGfSWcdr+NNMN/2inbeqxppxIk=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, 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=gmail.com
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 dQZaxqU1YSOL for <uri-review@mail2.ietf.org>; Thu, 23 Jul 2026 12:36:11 -0700 (PDT)
Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) (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 64E1911DA8E05 for <uri-review@ietf.org>; Thu, 23 Jul 2026 12:36:11 -0700 (PDT)
Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-2cc7e86e7aeso12514745ad.2 for <uri-review@ietf.org>; Thu, 23 Jul 2026 12:36:11 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1784835370; cv=none; d=google.com; s=arc-20260327; b=VzR+vvU+47xtFsW/2r/ornYnVn/AXT9jlI6A52Gv44njtoUnnqiEHD6PJv90mmiW79 qwYQcH43miu4po/It1s7j+QpvFRWeUI+32kWzk1419VeltyAO6B+sxSGOWwXLiKeUxWd zc9LMOkvuADADjggGvth/jYGmZ4HCS+UXsbzpoVXTXAW3KLL8utgicuXMS6BxhLtdMH9 27pJtVkds8eBTjKH47oeTc8o+EG20FKf9k/h7WwcxssL76wCMHO59OHiE36vb/y1eGjd 1t6oLNfA65iZlg0gEym8QbxxtYzgn8Pa1CC5ttSa1NpoM+iKayfW1VIoO6V0mSeyJVst KHYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=N+Vq0C8n+wb3flCsbdd0o4jZo9zDVeb7/PNN914pj+o=; fh=r9hiARbzMDi1IW57u0STCFsaChwn/xRJgR1br5IQdEE=; b=I+r1w2+wvJzxkhfBAi4izat/05vZwC/2Qd/8a458L7amk9f4Pr2BOCqLzAbIZLZm5X pcsyy6Lvwr+MCaEN3VYF7MrkrLhW8lEo8TV3ucCna7PZH4IrhH6qAnulZVpwVYsYvpfp 7F0Rpenvq7n98VscEql+QjbxDtBGlw6ERavf+m9TaOojBPKZ3uV1iNpQbPmh7nNrkRQI UBKzUs+bAOLJPKNIfLLszFs6qBnwCodt/KIF41vMKxExsuIhbLE537s/w2yTlBx/xVaU 5pq3Ik9oUbZ7OW4ogQzfhAyuHdk8VLzzVAbOSzlz2/1cRCAIHLSXiT3mn4vcj96bbrr5 cxHg==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784835370; x=1785440170; darn=ietf.org; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=N+Vq0C8n+wb3flCsbdd0o4jZo9zDVeb7/PNN914pj+o=; b=OmsQlMXE+nbFNj/4hfyErSw3dSKvq4P5nkX+HIUqv6CwmZ8ZTHdVx2HQCgl28bjWL7 tk0D52HJiCe+aWvjAGGZSNjbJIMTPA0fL8WYWIwRDN+LMLcyxGU6jlaWJjH2K1Ae11uU 5mwKq/MxQYcuF+bVZ3IqYyiWZWau2dSwCzy05pSFMU/C9HErcqxizvIVQSiujZ72H5RF n2f+qPVrVqS1ck+JeqY5N56+47sUUH2uX3ull7Z/TTt3IZLEeTV9VRbgN0RLaq1KEanS s67ghWVp8klIyf6hs1sEOa9sO2d7FplMAn/E2O3Vox8vBIaiFtlL4vFozJyS9vaqqkR9 NLuQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784835370; x=1785440170; h=content-type: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:content-type; bh=N+Vq0C8n+wb3flCsbdd0o4jZo9zDVeb7/PNN914pj+o=; b=LxJvlOYJYcZ62cdHxr25PtQhUluv2P2Tmv0h7SLZO0z9v1ENdNg5dJMEYSf6LyihL3 jmYL1VPjAccxufgXUyIYROfuRuiCPSGHLug44eDFE9jfiFNYx7qPmrPlRrrCxgcsw1KW OaTxaRFN2Al9K+9wgEHd5EQe6vnWB0k6p+KdtMdOxJSopx/VMnl1i/wMWq8LLcYTNBnF hGkuw+O5M6bCyOUELCn6dqwcghSGOmZbQnY1pCWiq3C5YK4mX5NurU1kerouC+pYl/KM 7NuBK8qyAxZv6XX8qk0r39R8cGU8uN/K+ywyXp2+yMLDwmX6J+pTvBE94We33LyGlN4D Qqiw==
X-Forwarded-Encrypted: i=1; AHgh+RouQk9LrfclhD5h9v/OnLzHpRlxhoZrzZt7gRI9O7PxBWrsiQPNOHtiywk5zSfjAi95PnlJmt/7u+EE@ietf.org
X-Gm-Message-State: AOJu0YyzuI2O6+UtSzymtFoNvvxInF7B1ku/ZuVj1wObKVo22ZwxFdxk 4H/tsVCxbLL4LiLtjHtEy0f04vlvaoi8q05SGL5jA/PMzejb1rPUc+6EOzDdGgcmpc1KlN5h6Lr sGJIV+dSnS1x1gxHtk5xt+unguCdF3hs=
X-Gm-Gg: AR+sD10rfU/4Ls0GPLPuS9KA5YNaaWXiivIL2cWNWCTTQbApP9HCz4vMEoNW2+w2hXx hm00K11G7ts96ivkXxk41LYkUsAhpmVbd15WTjYkkHwVubtrCwUJD/F69HCS3NaKhoE9Al/3cSH gbR+MOC/hsRiS/swW1w5GUP/cWq8Ylx+n8iDoRQmBq4AsDk+q3AKVSsVjy9Snrv9LULwaNctC1U AQlltS1++XpTnso2qopheyEqTbGpFzJEOZcsGiUbPKCxYMgM38jAKen+wDOatG8JjeIPdfjpRGp fQoE3uAQXmzXOrm3WkqBjTtL8RYs3SMD2wyId+GN8iyWmfsa7qkg9A+YzNJjfggRCMkQBLF09f3 Uoyk=
X-Received: by 2002:a17:903:468c:b0:2cb:2b84:f431 with SMTP id d9443c01a7336-2cfa6f875fdmr49967025ad.47.1784835370434; Thu, 23 Jul 2026 12:36:10 -0700 (PDT)
MIME-Version: 1.0
References: <a6f233fa20651a0e7f883b159cd7d9a2@alexgleason.me> <CAKaEYhJKY8-E3uj4YwcfLt18L3iphwijz5xck7OL5RHUPLmynw@mail.gmail.com> <036237df475f10ac40b1a6d30e877721@alexgleason.me>
In-Reply-To: <036237df475f10ac40b1a6d30e877721@alexgleason.me>
From: Melvin Carvalho <melvincarvalho@gmail.com>
Date: Thu, 23 Jul 2026 21:35:59 +0200
X-Gm-Features: AUfX_myoSHTl0d9DylLNwv-tu3OeY7IZpdlWZXgte3N5njCKcoNdeht4eqUoVOI
Message-ID: <CAKaEYh+2ZDa56Zv4TU3-KoGcXzuNwL4Kb2rGwiQ2UdhqiWtcgA@mail.gmail.com>
To: alex@alexgleason.me
Content-Type: multipart/alternative; boundary="0000000000003cc69506574c5eae"
Message-ID-Hash: ZDSW34MAAOKO3ZD6NFQKBOR2GYZ5X2GU
X-Message-ID-Hash: ZDSW34MAAOKO3ZD6NFQKBOR2GYZ5X2GU
X-MailFrom: melvincarvalho@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-uri-review.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: iana@iana.org, uri-review@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Uri-review] Re: Provisional URI scheme registration request: "nostr"
List-Id: Proposed URI Schemes <uri-review.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/uri-review/HPNN19Lh_OXFFEjXQlxI6K1fEiE>
List-Archive: <https://mailarchive.ietf.org/arch/browse/uri-review>
List-Help: <mailto:uri-review-request@ietf.org?subject=help>
List-Owner: <mailto:uri-review-owner@ietf.org>
List-Post: <mailto:uri-review@ietf.org>
List-Subscribe: <mailto:uri-review-join@ietf.org>
List-Unsubscribe: <mailto:uri-review-leave@ietf.org>

čt 23. 7. 2026 v 21:01 odesílatel <alex@alexgleason.me> napsal:

> Hey Melvin!
>
> Good to hear from you, and sorry I didn't give you a heads up before
> submitting this. Should have.
>
> Quick answers: the bech32 form is intentional. NIP-19 recommends hex
> for storage and the wire protocol, but URIs are the display and
> sharing case bech32 was made for (checksum, self-describing prefix).
> Clients compare by decoding to the underlying key or id, not by
> comparing strings. You are right that NIP-21 should say that
> explicitly and I'll propose it upstream.
>
> On did:nostr, I see them as complementary layers rather than competing,
> but I'd like to get the mapping right. Want to work out the text
> together
> in the did:nostr repo or the NIPs repo, whichever fits better?
>
> Best,
> Alex
>

Hi Alex,

Sounds like a plan.

I appreciate that forms such as `nostr:nevent...` are already deployed
across multiple clients, so the practical approach is to document their
existing semantics clearly. There may also be a separate question about
whether Bech32m would have been preferable to Bech32 for these encodings,
but changing that now may be difficult. It could still be worth documenting
the design choice and compatibility constraints.

Because the top-level `nostr:<NIP-19>` form was already in use, the idea
fiatjaf and I originally discussed was a non-conflicting structured form
such as:

`nostr:event:<64-character-lowercase-hex-event-id>`

The corresponding `did:nostr` form could potentially be:

`did:nostr:event:<64-character-lowercase-hex-event-id>`

At an architectural level, these are name-oriented identifiers rather than
network locations. In that limited sense, they occupy similar territory to
a form such as `urn:nostr:event:<event-id>`, although each URI scheme has
its own syntax and resolution semantics.

It would be good to align the representations, mappings and comparison
rules as far as practical. Happy to work in both repositories. Perhaps we
could open an issue in each, cross-reference them, and see how much common
language we can establish.

Best,
Melvin