Nostr: Decentralized Identity for the Internet

Nostr is a protocol enabling censorship-resistant social media.
Bring your audience seamlessly from one app to another.
And earn bitcoin for the content you create!

Why Do We Need Nostr?

Because.. social media is broken.
Centralized oligopolies control the public square of free speech.
These companies control (often in ways they don't even understand) what we read, who we talk to, and what ideas gain traction in our culture.
Social media as we mostly know it today:
⚠️ uses your attention to sell ads
⚠️ uses psychological tricks to keep you addicted
⚠️ decides what content to show you based on a secret profit algorithm you can't inspect
⚠️ can ban you
⚠️ is filled with bots and spam
Traditional social media thrives on engagement, attention and outrage.
This has had negative effects on society.
Trust in media (and institutions) has plummeted, and people are increasingly valuing free speech, something which centralized platforms can't provide.

What is Nostr?

Nostr (Notes and Other Stuff Transmitted by Relays) fixes this!
It's a simple protocol that allows users to sign and share notes (passed around as plain JSON text).
Using websockets, a client software relays these notes to a distributed set of servers (relays).
Or to define Nostr even more simply:
"Signed messages relayed"

Clients, Relays, Public/Private Key Pairs

Nostr is a protocol that you access via a client.
A client can be a web, mobile, or desktop app.
Some popular clients are e.g. Primal and Damus
Users have cryptographic key pairs (public and private key) to sign notes and to verify a note source.
The public key is presented as a string with a prefix "npub", and the private key with a prefix "nsec".
You can also think of your "npub" as a username and "nsec" as a password.
But on Nostr, there is no tech support to recover your password, so you have to take good care of it either with a password manager, browser extension such as e.g. Alby @Alby, or write it down on a piece of paper.
"Npub" looks like this and you can follow users on Nostr on any client by searching for their npub:
You can also search users by a more readable "NIP-05 identifier", such as teemupleb@getalby.com
For a step-by-step guide on how to create an account on Nostr, you can watch this tutorial by @BTCsessions:

Permissionless, Interoperable and Open-Source

Using Nostr and building on it is completely permissionless.
No need to provide phone number, email, ID card etc.
Cool thing about Nostr is that your private key (and your audience) follows you from one client to another.
E.g. if you have built a large following on a microblogging client built on Nostr, you can bring that following to the new video streaming client that just launched.
Nostr is not an app that you sign up for, but an open standard on which anybody can build!
This takes the power of "walled gardens" away from centralized web behemoths!
Also devs can access an existing user base easier in order to bootstrap new apps.

Relays Receive and Send Data

Relays are like back-end servers for Nostr.
They allow Nostr clients to send them messages, and then broadcast those messages to all other connected clients.
Relays are very simple and "dumb".
Their only job is to receive and send Nostr data.
For this reason, you can easily run your own relay with e.g. a Raspberry Pi single-board computer (but of course, you don't have to run your own relay to use Nostr).
Relays don't have to be trusted.
Signatures are verified on the client side.
Because Nostr doesn't rely on a small number of trusted servers to relay data, it's very resilient.
The protocol assumes that relays will disappear and allows users to connect to multiple relays that they can change over time.
If you notice that your Nostr client feels slow, try adding more relays.

Notes

Notes can be text, links and other media types.
They are digitally signed and timestamped.
You can also like, repost, reply etc.
There is no character limit on notes or replies, but if you upload videos, there might be limits (then you can just host the video somewhere else and link to it on Nostr).
Notes can't be edited (encourages accountability!)

NIPs for Interoperability

The Nostr protocol is defined in a set of NIPs (Nostr Implementation Possibilities).
These standards allow different clients to communicate with each other.
Only NIP-01 is mandatory (describes the basic protocol), and others are optional.
NIPs exist to promote interoperability.
It's not a good idea for developers to implement ideas only in their own client app.
It's better to come up with compatible solutions, and NIPs coordinate this process.

Bitcoin Lightning Network to Monetize Content

Nostr uses Bitcoin's Lightning Network to monetize content value.
Users can instantly tip (zap) small micropayments in bitcoin to creators, and their npub works as a Lightning address.
Great idea: let's pay with sats instead than with our personal data and attention!
This value4value model is a revolutionary concept.
Creators don't have to rely on advertising, subscriptions and paywalls, and followers can only pay for the content they like.
Most followers won't tip anything, but some tip a little and the hardest fans tip a lot.
For the first time in history, we can link information to value.
As the volume of information becomes infinite, the supply of bitcoin (value) remains scarce.
Attaching this value to information will highlight the highest quality information (web of trust).
Nostr + Bitcoin search engine that indexes all information on a decentralized internet could be a real Google killer.
Nostr.Band is trying to do something along those lines, indexing the entirety of Nostr and making it searchable.
Nostr infrastructure providers can also monetize their services via Lightning payments.
When Nostr gets more users, relays may have to scale up their infra and charge clients for usage (worry not, there would most likely still be free relays and clients for the end user).

Orange Honeybadger and Purple Ostrich

Nostr doesn't need Bitcoin, and Bitcoin doesn't need Nostr.
They're completely independent protocols.
However, each one makes the other one better.
Bitcoin decentralizes money, and Nostr decentralizes free speech.
With Nostr npub as a Lightning address, Nostr can become a directory for Lightning payments.
The creator of Nostr, "fiatjaf" @fiatjaf and many early Nostr developers are also Lightning developers, which seems to make the synergistic relationship inevitable.
Bitcoin Lightning payments could be integrated to ANY app with Nostr Wallet Connect.
Once an app connection is created, the app can request bitcoin payments through a Nostr relay! 🤯
Open-source and non-custodial!
With Nostr, all messages and commerce could be done in an open-source and self-custodial super app.
Send remittances as an instant message!
Sell goods via a tweet!

Crowdsourced Content Moderation?

What about content moderation?
All humans should have the right to free speech, but no one should be obliged to listen.
Nostr relays can ban users, but these users can always find another relay to publish, or host their own.
Since users are identified by their public key, they don't lose their followers if they get banned from a relay.
Bitcoin tips can also work as a crowdsourced content moderation tool.
If a wide majority of users think that e.g. posting some images is unacceptable, maybe users wouldn't even see those posts because the web of trust doesn't grant them any tips.

Lacking Privacy Features

The downside of Nostr currently is the lack of privacy features.
DMs on Nostr are encrypted, but the metadata (who you DM with and when) is public.
This obviously currently hinders the prospect of secure bitcoin payments on apps using Nostr.
Also, relays and clients can collect users' IP address.
The intention of this feature was to tackle spammers and bots (if enough spammy data comes from a single IP address, that address can be blocked.)
Maybe best to normalize using VPN with Nostr?

Not Just Social Media

Decentralized social media is just the first instance: there are many Nostr-based competitors to established web2 corporate platforms:
Twitch-alternative, GitHub-alternative, Meetup-alternative.. even a P2P bitcoin exchange Mostro!
X (Twitter) could also benefit from becoming a Nostr client.
It could partially solve the content moderation problems it is having:
→ If the user-generated content was on Nostr, maybe X wouldn't have to resort to censorship when facing government pressure?

Easy for Developers

Are you a developer?
Starting out with Nostr is easy.
Any junior dev can build a functioning simple client in a couple of hours.
Here's a great website called Nostr Apps to discover the world of Nostr:
What do you think about Nostr?
Will it replace the internet as we know it today?

Additional Resources

Project Information

This is great!
It should become one of the pinned posts for this territory.
reply
notes, and long form content such as this can also be edited on certain clients. Since this is SN, this publication is set in stone.
reply
21 sats \ 0 replies \ @Hamstr 1 Jun
This is my guide, tailored for the newbie. Easily digestible. #535829
reply
reply
Awesome, missed this site during my research
reply
0 sats \ 1 reply \ @Athena 1 Jun
Thanks? I'm new here, new to bitcoin and decentralisation as well. I've benn listening a lot about Nostr but only your post has made me know what its all about. So, I thank you very much!
I also feel that there must be ample amount of beginner related content that should be visible all the time so as to learn new things as beginners.
reply
I'm glad to hear it was helpful
reply
Awesome work, and thank you! Will share with friends!
reply
Incredible! Nice and informative post.
reply
Nice post. Very informative. Appreciate your work.
reply
Very valuable! Long live Nostr
reply
I think that if it were possible to make Nostr easier to use, that would make it more popular.
reply
This concern comes up a lot. Maybe I speak from my technically savvy Bitcoiner bubble, but generating a public/private key pair on a client like e.g. Primal doesn’t differ much from generating a username and password on a web2 app.
The friction probably comes from people not being familiar with using browser extensions to store keys and sign notes. More abstraction on that front is probably needed.
reply
i use visuals in my guides to help people visualize that. What's second natural to us is still foreign to many. It's okay, just be kind and humble :) We'll get the masses to join soon enough especially if Tiktok gets banned.
reply
This is definitely one post that is simple yet quite elaborate. Thanks for posting it. I've bookmarked it and will recommend to everyone who is new.
reply