Nostr Verification
The nostor protocol introduces a verification technique with
nip-05. This allows
clients to post a metadata element on events of kind 0
. This metadata uses key
nip05
and a value of an internet identifier of local@domain
.
Any client can then make a request to
https://<domain>/.well-known/nostr.json?name=<local>
. The response maps a set
of names to public keys used in other nostr events. Clients can indicate to
users that the public key is attributed to the given domain. This is useful to
associate a public key to a known identity. For example you can find mine at
https://ben.campbells.io/.well-known/nostr.json
.
This file is a JSON object with two properties. The first is the “names”
property which maps a user name to a public key. This key must be provided in a
hexadecimal format. If you have a bech32
key you can use
https://nostrcheck.me/converter/ to convert
your identifier into an hex format.
In addition, you can provide relays to associate with the public key. This is
useful for clients to use a identifier like benc@ben.campbells.io
to
determine which relays to pull events from.
When working this out for myself I found that Hugo did not do well mapping the
query parameter to a specific file. I needed to just create a
static/.well-known/nostr.json
file omitting the query parameter. Hugo and AWS
amplify will strip the query param and serve the static list of verifications.
Give me a follow at benc@ben.campbell.io
or
npub193q9lgp34868wzj2amqxkj2ely5kn4zkq5j7dp9mt94402spsdcqcz7fh8
if you participate in nostr.