mirror of
https://github.com/nostr-protocol/nips.git
synced 2025-03-29 03:02:07 +01:00
nip-39 digital identites in metadata
This commit is contained in:
parent
3b1cd96798
commit
6fdda92a66
36
39.md
Normal file
36
39.md
Normal file
@ -0,0 +1,36 @@
|
||||
NIP-39
|
||||
======
|
||||
|
||||
Digital Identities in Profile
|
||||
-----------------
|
||||
|
||||
`draft` `optional` `author:pseudozach` `author:semisol`
|
||||
|
||||
## Abstract
|
||||
|
||||
Nostr protocol users may have other online identities such as usernames, profile pages, keypairs etc. they control and they may want to include this data in their profile metadata so clients can parse, validate and display this information.
|
||||
|
||||
## `identities` field in metadata content
|
||||
|
||||
A new optional `identities` field is introduced for `kind 0` metadata event contents in addition to name, about, picture fields as included in [NIP-01](https://github.com/nostr-protocol/nips/blob/master/01.md):
|
||||
```json
|
||||
{
|
||||
"id": "123",
|
||||
"pubkey": "xxx",
|
||||
...
|
||||
"content": {
|
||||
"name": "asd",
|
||||
...
|
||||
"identites": [
|
||||
{"type": "twitter", "claim": "Semisol_Public", "proof": "https://twitter.com/Semisol_Public/status/xxx"},
|
||||
{"type": "github", "claim": "semisol", "proof": "https://github.com/Semisol"},
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
`identities` field is an array of objects that include:
|
||||
* `type` may be the name of the service, website, a protocol or other identity system like `bitcoin` or `paynym` depending on what's being claimed.
|
||||
* `claim` should be the name of the digital estate like the profile name or bitcoin address.
|
||||
* `proof` should point to a URL that includes a way to prove that the digital identity being claimed is indeed controlled by the pubkey that signed this event.
|
||||
|
||||
Clients should validate the information locally when possible or crawlers can remotely check the claim being made before displaying the claims as verified to other users e.g. the linked twitter proof indeed includes a statement such as "I control pubkey xxx" where xxx is the pubkey that published this kind 0 event.
|
Loading…
x
Reference in New Issue
Block a user