Oddbean new post about | logout
 https://image.nostr.build/eb58a3cf31b13a517e5c21e12b48520c9dc56e2dc34a97c1768b25dffdaf3033.jpg

Setting up Nostr account NIP-05 verification

Nostr (short for "Notes and Other Stuff Transmitted by Relays") is a decentralized, censorship-resistant social network protocol designed for secure and private communication. It enables users to post notes and interact with others without relying on any centralized platform, unlike traditional social media platforms.

NIPs, or Nostr Implementation Possibilities, define the set of specifications or guidelines that clients and relays can follow to ensure the interoperability of all parts. This is the case with [NIP-05](https://github.com/nostr-protocol/nips/blob/master/05.md), which defines an account verification mechanism by mapping Nostr public keys to DNS-based identifiers that resemble an email address.

Unlike the blue checkmark on X.com, NIP-05 can be easily implemented by users for free. To get your account NIP-05 verified, you will need the following:

- Nostr public key in hex format
- Domain name that you own and manage (e.g., example.com)
- Nostr account name in an email-like format (e.g., johnnycage@example.com)
- Web server or a place to host a file from the domain name

For the Nostr public key in hexadecimal format, you can use the key converter tool at this link: [https://damus.io/key/](https://damus.io/key/). Copy your user public key (npub) from your client and paste it in the link above to convert the key to hex format: `i.e., 5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36`

Please note that some clients may not recognize your public key in hex format, and you may need to use your npub key instead.

Create a nostr.json file and paste the following:
```
{
"names": {
  "johnnycage":"5c83da77af1dec6d7289834998ad7aafbd9e2191396d75ec3cc27f5a77226f36"
	}
}

```


Upload the file to the web server and modify your DNS so your domain example.com is redirected to it. As a result, you should be able to access the file like this: [https://example.com/.well-known/nostr.json](https://example.com/.well-known/nostr.json)

As a final step, go to your Nostr client and configure your Nostr address for verification. In the case of the Amethyst client, this is done under Profile -> Nostr Address -> johnnycage@example.com. Once validated, a checkmark symbol should appear next to your chosen Nostr address.  

Keep in mind that not all nostr clients behave the same, so you will need to adjust these steps based on your client of choice.

For more information about NIP-05, head here: [https://github.com/nostr-protocol/nips/blob/master/05.md](https://github.com/nostr-protocol/nips/blob/master/05.md)

#nostr #nip #grownostr #howto 
 You don't need a Web server anymore. Cloudflare free tier can serve static files via workers 👍  
 Don't forget about the CORS headers, otherwise web clients can't verify. 
 Very important point, thanks for pointing it out.  In my case I am serving nostr.json file via nginx ingress controller in a kubernetes cluster and the file is stored in S3 Minio