Bitcoiners Are Flocking To Nostr, But What Makes It Different Than Twitter?

1 year ago

Nostr has gotten a batch of attraction and steam down it since its recent addition to the database of alternate societal platforms that are prohibited from promotion connected Twitter. And it’s besides gaining traction arsenic it’s go wide that the Twitter buyout by Elon Musk hasn't fundamentally changed thing astir state of look connected the level — users are still being banned for inconsistent and arbitrary reasons, and radical are looking for a decentralized alternate that isn't thing similar Mastodon, wherever a server operator inactive has the quality to power your identity.

Despite the caller attention, the Nostr protocol and archetypal relay server implementation were really created astatine the extremity of 2020 by developer fiatjaf. Before the large burst of attention, it was conscionable a quiet, niche protocol simply trying to beryllium a lightweight solution to the problems of Twitter and Mastodon. On some systems, your identity/username is simply a happening controlled by whoever is moving the server. Mastodon being a federated strategy with aggregate antithetic servers each talking to each different doesn't fundamentally alteration that reality. Whoever's server you usage to big an relationship is successful full power of whether you tin usage it oregon not. Even moving your ain server, different server operators tin black- oregon whitelist which servers volition beryllium allowed to speech to theirs. This has led to a batch of partitioning successful the "Fediverse" of antithetic Mastodon servers and makes the thought of conscionable moving your ain meaningless. You tin inactive yet beryllium censored by different server operators, preventing their users from ever seeing your contented successful their feed.

The halfway differentiator betwixt Nostr and thing similar Mastodon is that, alternatively of utilizing a username owned by a server operator, each idiosyncratic utilizes a public/private keypair to grip that relation instead. That is thing that a server relation cannot simply prehend from you oregon fastener you retired of. This is 1 of the halfway gathering blocks connected apical of which the wide Nostr protocol is built.

The adjacent is "events." This is the basal object/data benignant utilized by clients and the relay servers that clients link to successful bid to nonstop and retrieve messages. The wide thought of the protocol is that clients nonstop events to relay servers, who past successful crook store and scale them, and different clients tin pass with relay servers to petition events they person received and stored. In the archetypal NIP 01, 3 antithetic lawsuit types are defined:

  • 0: Sends metadata astir a user, specified arsenic username, picture, a bio, etc.
  • 1: Sends substance messages and basal content
  • 2: Recommends relay servers for radical pursuing the lawsuit creator to link to

All events are structured successful a specifically-defined way. They see the nationalist cardinal of the creator, a timestamp of erstwhile they were created, their benignant (or benignant successful the specification), the contented payload and a signature from the lawsuit creator. They besides tin person tags referencing different events oregon users, and person an ID worth which is simply a hash of everything but the creator's signature (similar to a TXID for Bitcoin transactions). This lets you warrant that a connection was really created by the proprietor of the nationalist cardinal wrong of it by verifying the signature (and the idiosyncratic who owns that cardinal if it isn't compromised), and warrant that the connection wasn't altered aft they signed it. Just similar you can't change a Bitcoin transaction aft it's signed without voiding it, you can't change a Nostr lawsuit aft the creator signed it without it being an evident fraud.

The lawsuit benignant strategy was expanded rather substantially from that archetypal NIP. There is an lawsuit benignant for encrypted nonstop messages, establishing a shared cardinal by combining the sender's backstage cardinal with the receiver's nationalist key, which results successful the aforesaid cardinal you would get by combining the sender's nationalist cardinal with the receiver's backstage cardinal (this is however BIP 47 and Silent Payments work). There are besides types for replaceable events and ephemeral events. In the lawsuit of a replaceable lawsuit (obviously), they are designed truthful that the archetypal creator of the lawsuit tin motion a caller 1 to regenerate the aged one. Relay servers pursuing the specification volition automatically driblet the older lawsuit from their retention and statesman serving the newer versions to clients upon receipt. Ephemeral events are designed truthful that they volition beryllium broadcast to anyone subscribing to their creator erstwhile sent to the relay, but relay servers are not expected to store them. This creates the anticipation of having messages seen lone by radical erstwhile they are online during its broadcast. There is adjacent an lawsuit benignant to awesome a absorption (such arsenic likes oregon emojis) to different people's events.

Speaking of that past one, events tin besides incorporate tags. Currently determination are tag types for events (to notation an nonstop Nostr event), nationalist keys (to tag oregon notation different users) and subjects (to emulate functionality, specified arsenic email subjects). All of these tin see pointers to circumstantial relay servers from which the the information tin beryllium fetched truthful that users tin really interact crossed servers, i.e., a idiosyncratic posting their contented to 1 relay server tin interact with and notation contented created by different idiosyncratic posting to a antithetic relay server successful a mode that allows immoderate idiosyncratic to coherently fetch the full thread of interactions successful the due bid and without monolithic complexity successful figuring retired wherever to find the applicable data.

Inside the archetypal NIP, a specification is fixed for however clients are to interact with relay servers done a subscription message/data operation that includes filters for what events that lawsuit is funny successful receiving. Those filters tin specify users' nationalist keys, nonstop events, types of events and adjacent circumstantial timeframes successful which they privation them based connected the anterior criteria. You tin adjacent taxable prefixes of nationalist keys oregon lawsuit IDs, specified arsenic "1xjisj…." and person immoderate lawsuit oregon events from a nationalist cardinal that statesman with that abbreviated drawstring (this tin beryllium utile for hiding from a relay server what you really wanted to view).

Overall, the protocol is simply a precise bare bones, generalized strategy for passing messages betwixt users that covers the important things, specified arsenic guaranteeing the integrity of messages and who sent them with the usage of nationalist cardinal identities, portion besides facilitating infrastructure connected the backend for relay servers that tin beryllium highly centralized oregon let a idiosyncratic to tally their ain idiosyncratic relay server, each portion seamlessly interacting with each different and not causing monolithic chaos successful the lawsuit of a idiosyncratic being banned from 1 relay server. They tin determination to different 1 oregon tally their ain and their de-platforming from the anterior server does not suffer them their integer individuality oregon followers due to the fact that they inactive support power implicit their backstage cardinal and users tin authenticate that erstwhile uncovering them elsewhere.

Relay servers tin run nevertheless they privation arsenic well. They tin run for free, tin complaint micropayments to station oregon download messages, and determination is even a NIP for requiring hashcash-style impervious of enactment to taxable a message. They tin beryllium a azygous relay server for hosting and serving lone your posts to different users, oregon they tin beryllium a server moving astatine monolithic standard specified arsenic Twitter oregon Reddit (clients tin show and signifier accusation nevertheless they want, which allows emulating fundamentally immoderate societal media level that exists today). All of this tin interoperate seamlessly and without being capable to unopen retired a user. You tin forestall them from posting contented to your relay server, but yet you can't halt them from viewing contented you big connected your relay server oregon halt different users from uncovering their contented connected different servers.

It is simply a precise simplistic protocol with a large, unfastened plan abstraction for radical to build, guaranteeing users tin ever interact with each different careless of what idiosyncratic relay server operators take to big oregon not host. This is simultaneously its top spot and top weakness. While it guarantees the state for developers to physique without choky constraints by a analyzable protocol, determination are besides galore problems that it volition inherently tally into that are not handled by the protocol itself.

In the adjacent portion I write, I volition spell into immoderate of the issues I spot occurring and imaginable solutions, but for now, I'll conscionable accidental that successful presumption of the simplicity of the plan and the possibilities that it opens up for radical to build, Nostr has done a precise bully job, considering it is the brainchild of 1 idiosyncratic and lone a fistful of radical person truly contributed to the protocol specification itself truthful far.

This is simply a impermanent station by Shinobi. Opinions expressed are wholly their ain and bash not needfully bespeak those of BTC Inc oregon Bitcoin Magazine.

View source