nips icon indicating copy to clipboard operation
nips copied to clipboard

NIP-39 external identities in metadata

Open pseudozach opened this issue 2 years ago • 14 comments

This PR aims to standardize an identity field in kind0 metadata such that users can set their online identities as claims and clients can independently verify it however they see fit. ~~No suggestions are made on how clients verify user's claims as that can change per platform.~~

@Semisol please check and let me know if this looks good or if you prefer to be removed from author list. background discussion link: https://t.me/nostr_protocol/77441

~~Currently this NIP is supported on 1 client nostr.directory for github identity claims.~~

Seeking comments and review.

pseudozach avatar Jan 28 '23 00:01 pseudozach

I've said this on Telegram, but let me say again that I think these fit better in tags.

fiatjaf avatar Jan 28 '23 02:01 fiatjaf

Will this NIP provide a namespace for the identity types? For websites those can be fully-qualified domains perhaps.

There should be a way to go from "type": "github" to "github.com", or from "bitcoin" to the commonly used "bitcoin" as opposed to "bitcoin cash" or another fork. Who will decide which network maps to the "bitcoin" type for NIP-39? Whoever owns the .com domain, the github account, something else? Does an account at "twitter.net" or "twitter.eth" qualify to be an identity type of "twitter"?

gkbrk avatar Jan 28 '23 13:01 gkbrk

I'll try to rewrite this.

Semisol avatar Jan 28 '23 15:01 Semisol

I've said this on Telegram, but let me say again that I think these fit better in tags.

is the benefit of tags just that it makes them easily queryable from relays?

pseudozach avatar Jan 28 '23 17:01 pseudozach

is the benefit of tags just that it makes them easily queryable from relays?

Tags are part of the event, also signed and authenticated, and they are already parsed without having to parse JSON from the content string. Even without being queryable, it is more structured than a string that needs to be parsed as JSON first.

gkbrk avatar Jan 28 '23 17:01 gkbrk

https://gist.github.com/Semisol/3bfe26b41d670abfb958e4b841de1413

Semisol avatar Jan 28 '23 19:01 Semisol

https://gist.github.com/Semisol/3bfe26b41d670abfb958e4b841de1413

This is much better IMO, especially the limited scope of claim types and clearly showing exactly where to look for the proofs.

gkbrk avatar Jan 28 '23 20:01 gkbrk

I like it, we can query by alternative identity? Very good. Relays may even want to verify these things by themselves before accepting an event if they are strict like @atdixon's https://github.com/atdixon/me.untethr.nostr-relay.

fiatjaf avatar Jan 28 '23 20:01 fiatjaf

looks good

eskema avatar Jan 29 '23 16:01 eskema

these change requests are just to make it more consistent and clear, the NIP itself is pretty good

Semisol avatar Jan 30 '23 19:01 Semisol

this feels a lot like the w3c's rel=me used in activity pub. i think there may be a way to also have an interop with that here too. it would be a way to accelerate the network effect in adoption of this feature in the future.

majestrate avatar Feb 01 '23 15:02 majestrate

Anywhere to see an example of the format for the proof?

What are the steps to add other platform besides GitHub, Mastodon, Twitter and Telegram?

aleixisp avatar Feb 10 '23 14:02 aleixisp

Anywhere to see an example of the format for the proof?

What are the steps to add other platform besides GitHub, Mastodon, Twitter and Telegram?

https://microformats.org/wiki/rel-me

my understanding is that it's done in the html document itself:

<a href="https://github.com/majestrate" rel="me">github</a>
<a href="scheme://host/whatever" rel="me">other</a>

additionally rel=me seems to be more flexible wrt being able to reference external resources despite this format existing only in html documents.

majestrate avatar Feb 10 '23 16:02 majestrate

as for proofs, rel=me is not "valid" unless all your references full mesh with each other.

majestrate avatar Feb 10 '23 16:02 majestrate

"Mastodon" should be changed to "Fediverse" and the icon replaced with the proposed icon here: https://commons.m.wikimedia.org/wiki/File:Fediverse_logo_proposal.svg Calling it the Mastodon network is inaccurate and seems to happen far to often. I expect to hear an arguement along the lines of "nobody knows what the Fediverse is but they know what Mastodon is". I dislike this arguement as it keeps people ignorant vs educating that the Fediverse consists of far more than just Mastodon instances. I'm not sure if this is the place to suggest this change, apologies if not. EDIT: maybe ignore the part about the icon change as that may be something that needs to addressed in Amethyst if it is changed and corrected.

jawsh207 avatar Mar 26 '23 04:03 jawsh207

"Mastodon" should be changed to "Fediverse" and the icon replaced with the proposed icon here: commons.m.wikimedia.org/wiki/File:Fediverse_logo_proposal.svg Calling it the Mastodon network is inaccurate and seems to happen far to often. I expect to hear an arguement along the lines of "nobody knows what the Fediverse is but they know what Mastodon is". I dislike this arguement as it keeps people ignorant vs educating that the Fediverse consists of far more than just Mastodon instances. I'm not sure if this is the place to suggest this change, apologies if not. EDIT: maybe ignore the part about the icon change as that may be something that needs to addressed in Amethyst if it is changed and corrected.

Please make a PR if you could

Semisol avatar Mar 26 '23 11:03 Semisol

"Mastodon" should be changed to "Fediverse" and the icon replaced with the proposed icon here: commons.m.wikimedia.org/wiki/File:Fediverse_logo_proposal.svg Calling it the Mastodon network is inaccurate and seems to happen far to often. I expect to hear an arguement along the lines of "nobody knows what the Fediverse is but they know what Mastodon is". I dislike this arguement as it keeps people ignorant vs educating that the Fediverse consists of far more than just Mastodon instances. I'm not sure if this is the place to suggest this change, apologies if not. EDIT: maybe ignore the part about the icon change as that may be something that needs to addressed in Amethyst if it is changed and corrected.

Please make a PR if you could

Attempted to but not sure what I'm doing wrong.

jawsh207 avatar Mar 28 '23 02:03 jawsh207