What is Nostr and why is it exploding? A guide for Hiveans.

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@brianoflondon·
0.000 HBD
What is Nostr and why is it exploding? A guide for Hiveans.
---

***This is a value for value post: see the explanation in the footer.***

---

As many of you know, I've been described as "Hive's leading expert on Lightning". I'm never sure about anything like that but it could possibly be true. I've certainly put in the hours (have I done 10,000 hours of studying Lightning? Maybe).

**Nostr is NOT part of Lightning or even Bitcoin**, but it is being developed by many Devs who have been deep in the Lightning BTC dev community for a long time.

I believe Nostr was the brainchild of a developer called [Fiatjaf](https://astral.ninja/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6). I've linked to his Nostr profile on a site called Astral.ninja. The first evidence of Nostr I find is back in Nov 2020 [github](https://github.com/nostr-protocol/nostr/commit/6158017db0b12686218113232fff175a45953e2f).

<div class="pull-right">

![Twitter's blog post banning overt promotion of identities on other sites.](https://files.peakd.com/file/peakd-hive/brianoflondon/23u6YguacGiGnhk2y8yTFfhj9SDJvnLA86eTgJFmgEqA2PdffSK5E7HvyuhFfEfJAPwKQ.png)

</div>

## Why did Nostr get noticed now?

On December 19th Twitter put out a [tweet linking to a blog post](https://web.archive.org/web/20221219013904/https://help.twitter.com/en/rules-and-policies/social-platforms-policy) which said this:

>December 2022
>Twitter is where the public conversation is happening, and where people from all over the globe come to promote their >businesses, art, ideas, and more. We know that many of our users may be active on other social media platforms; however, going >forward, Twitter will no longer allow free promotion of specific social media platforms on Twitter.
>
>What is a violation of this policy?
>
>At both the Tweet level and the account level, we will remove any free promotion of prohibited 3rd-party social media >platforms, such as linking out (i.e. using URLs) to any of the below platforms on Twitter, or providing your handle without a URL:
>
>Prohibited platforms:
>
>Facebook, Instagram, Mastodon, Truth Social, Tribel, Post and Nostr
>

Right there at the end of a list which starts with the multi-billion user Facebook is Nostr. A protocol which barely more than a few thousand people had heard of or used. This blog post barely lasted 12 hours before it was deleted and the policy recinded.

But that was enough. A few days prior to this, Jack Dorsey, one of the founders of Twitter, had donated 14 BTC (approx. $235,000) to Fiatjaf for him to hand out as he saw fit:

https://twitter.com/jack/status/1603535971114487816?s=20&t=jsvyfANH44jwrVXehDgLDg

That tweet set off an explosion of interest and resulted in hundreds of tweets like the following, which were used to verify a public key based identity on Nostr:

https://twitter.com/jack/status/1603945963944480768?s=20&t=jsvyfANH44jwrVXehDgLDg

Here's mine:

https://twitter.com/v4vapp/status/1605959605283999748?s=20&t=jsvyfANH44jwrVXehDgLDg

I actually had an earlier tweet but I deleted it, I just don't want the hassle of being banned from Twitter again!

## Nostr is a communications protocol

Here's the description of Nostr from the [nostr.com](https://nostr.com) site:

>**What is Nostr?**
>
>A decentralized network based on cryptographic keypairs and that is not peer-to-peer, it is super simple and scalable and therefore has a chance of working.

From the main porotocol github page, Nostr stands for ["Notes and Other Stuff Transmited by Relays"](https://github.com/nostr-protocol/nostr) and is:

>The simplest open protocol that is able to create a censorship-resistant global "social" network once and for all.
>
>It doesn't rely on any trusted central server, hence it is resilient; it is based on cryptographic keys and signatures, so it is tamperproof; it does not rely on P2P techniques, therefore it works.

## Nostr is a message passing system

At its heart Nostr establishes a protocol or format for sending short messages around which are signed by a public/private key pair (very similar to but far simpler than the key system we have on Hive).

Knowing what I know about Fiatjaf which comes mostly from [my interactions with him on Twitter](https://twitter.com/search?q=(from%3Afiatjaf)%20(%40v4vapp)&src=typed_query), he has the typical closed minded approach to incentivisation and tokenisation of a Bitcoin Maximalist. The time he appeared on a Bitcoin podcast and was supposed to receive streaming sats, his Lightning node wasn't configured to receive the payments:

https://twitter.com/fiatjaf/status/1563555361914638336?s=20&t=DCFbtk6zbpbDDZ4PSfxWaw

As usual I was called a "shitcoiner".

## Nostr doesn't have what Hive has

Nostr's approach is basic and naive. Mostly because it is built and used right now by Bitcoin Maximalists, they have a religious aversion to any form of in built tokenisation for an incentivisation system.

The closest they've come is code in the clients that recognises a Lightning invoice and renders it, if you have a suitable Lightning wallet on your device, you can click and pay it. This is, of course, a scammer's dream. There was a lot of fun to be had posting invoices and waiting to see if someone else would randomly pay them though I think that's died down now.

<div class="pull-right">


![Damus Invoice Screen](https://files.peakd.com/file/peakd-hive/brianoflondon/23tbMLELun8kWj6izJR3wAu1KPHjcSHuM1m1BBH69sRfwFyVL1wb91FFEksnhg2S1i8Bi.PNG)

</div>

<div class="pull-left">

![Lightning Invoice on Nostr](https://files.peakd.com/file/peakd-hive/brianoflondon/23tvXvBM8pDhcBJvshqqTxw6aumAvCUktLfWPxBaHhDCk6tT7x3x15yvRdixDej1hv8Gz.png)
</div>



### Public Relays

Nostr relies on people running relays. These store and forward messages. There is no incentive at the moment to run these and no way to formally collect payment for doing so. This will be built "with Lightning" at some point. But as with all things Bitcoin, the base layer protocol (which when we're talking about Lightning is 2 layers removed from Nostr), gives no reward for anything except mining.

One key part of brilliance of Bitcoin was rewarding the infrastructure runners to keep it running. But there's nothing in there for anyone else. Paradoxically, it is this innovation, pivotal for Bitcoin's success, which is regarded as completely unusable for anything other than Bitcoin by the Bitcoin maximalists. Lightning adds routing fees, but these are proving to give marginal reward for the risk and capital investment necessary to run a Lightning node. 

### Spam Spam Spam

They've also had to deal with the first load of spam. It's trivially easy to create a public/private key pair and then start sending any old rubbish out to a selection of relays. Some kind of financial cost or even a proof of work system is being talked about to stop this.

### Censorship resistance

There is talk of censorship resistance but this relies on the persistant existance of relays to carry your messages. There is also no real way for end users to download and store all their own messages yet. If you chose an arbitrary set of relays, your messages will be spread around them, but with no guarantees about long term storage.

<div class="pull-right">


![Damus App store rejection](https://files.peakd.com/file/peakd-hive/brianoflondon/AJdASjacfKRaoMKrqpzUAa4B2t7dcrs8rskutuXxDmiXDQZusPB75VFoCpnATBY.png)


</div>

### Damus and the App store

Damus is the most developed and pretty Nostr client but it's currently only available as a iOS TestFlight app. The first try at getting into the App Store failed for the predictable reasons: no capacity to censor, block or filter "objectionable content".

Good luck with that: to be honest this is a critical problem for all of use working on truly independent Web 3.0 projects. The Google and Apple grips on the App store fronts will hurt all of us.

## Try it out

If you want to try it out, you probably should start wiht a web based version. The only decent mobile client is called [Damus](https://damus.io/) and only available on iOS but it's a beta version and the testing slots are all full.

Go to [astral.ninja](https://astral.ninja) instead.

Create a new public/private key pair and make sure you keep a note of these somewhere. You'll need them. Now if you know what you're doing editing JSON and you want to do something a bit fancy you can get a "verified tick" like mine:

![Nostr Verified](https://files.peakd.com/file/peakd-hive/brianoflondon/23uQLdkNJdV89D3ztpR4FMPdNKdNx23MVuKgZLCowWCnKpmmfNrzu2rVc4T5cAo17RWmx.png)

To get one of these go to @ausbitbank's [site and log in with HiveKeychain](https://hive.ausbit.dev/). Go to your own profile page and look for the section on the left hand side of the page called "Posting Json Metadata".

If you are logged in you should see a little pen, click this, which will let you edit this. What you need to do is insert a key/value pair for your Nostr public key. Perhaps if a few of you ask, @ausbitbank will make this easier.

UPDATE... @ausbitbank made it easy(er)

A note about Nostr keys: you have ONE public key but it can appear in 2 formats (because nothing is ever easy on Nostr). These are BOTH my public keys, one starts with `npub` and one is in HEX. It doesn't matter which one you put into Hive, but I would suggest you use the one which starts with npub:

`npub18hz8xs2tafx7rhclzukrr94gypcemw6ch2hcwe9eak4q03k4a8wq2wfmgv`
`3dc473414bea4de1df1f172c3196a820719dbb58baaf8764b9edaa07c6d5e9dc`

What you should NEVER do is share a key which starts with `nsec`.

![Just find the Nostr button below the edit box and paste your PUBLIC key in there.](https://files.peakd.com/file/peakd-hive/brianoflondon/23tRxJ7Qc9D3XqsNxdR5LsZA7PkyirwUo8amxYdEqCjpHk55Y7rb6B65jhfsMMAcu4K92.png)


![Adding Nostr public key to Hive profile](https://files.peakd.com/file/peakd-hive/brianoflondon/23swdkW9XcRzSPdkjDEZPfRt6HM15rfH8AWwKkSMwtvzaNXE44TSSgcQPgz8DNaFnajcN.png)


Once you've done that, go back to [astral.ninja](https://astral.ninja) and find the profile editor.


![Profile on Nostr](https://files.peakd.com/file/peakd-hive/brianoflondon/EoATWNbkxwcWXD3VpfRRyGConq34dgaSNHQz5AuzH5WULYJnNWwYXpa4tgHNJpqdjMu.png)

On Nostr you can fill in both the NIP-05 Identifier field and the Lightning Address or LUD-06 Identifier with the same thing: **your_hive_name@v4v.app**

You can copy what I've done using my Hive image as my avatar if you like substituting your own Hive name:

`https://images.hive.blog/u/brianoflondon/avatar`

In the NIP-05 Identifier and the Lightning Address boxes you need to add the bit which I've built once again removing `brianoflondon` and putting in your Hive name:

`brianoflondon@v4v.app`

When you do that, Nostr clients will make a call to my server like this:

`https://api.v4v.app/.well-known/nostr.json?name=brianoflondon`

Which will return your public key and give you that verification mark.

### Any Questions?

If there is more appetite for information about Nostr, I'll answer comments and perhaps post again, let me know!


-------

## Value for Value

For the last few months while building @v4vapp I was generously supported by the DHF. Going forward I have a much more modest support which covers direct server costs and a little of my time.

If you apprecieate the work I do on and around Hive, you can express this directly: upvoting posts on Hive is great. Also consider a direct donation (there's a Tip button on Hive or a Lightning Address) on all my posts.

**[Support Proposal 244 on PeakD](https://peakd.com/me/proposals/244)
[Support Proposal 244 with Hivesigner](https://hivesigner.com/sign/update-proposal-votes?proposal_ids=%5B244%5D&approve=true)
[Support Proposal 244 on Ecency](https://ecency.com/proposals/244)
[Vote for Brianoflondon's Witness KeyChain or HiveSigner](https://vote.hive.uno/@brianoflondon)**

-------

<div class="pull-right">

![Send Lightning to Me!](https://files.peakd.com/file/peakd-hive/brianoflondon/AK3gcbmQA5oP28nnfgu5MiW8JCXw1XA6tYghwFWbSkPW2P6hXto5i7TDRTkPRVa.png)
</div>

- [Get Fountain for Podcasts and 3speak shows](https://fountain.fm/refer/brianoflondon-76b73a585e)
- [Find me on Telegram](https://t.me/brianoflondon)
- [V4VAPP Support on Telegram](https://t.me/v4vapp_support)
- [Vote for Brianoflondon's Witness KeyChain or HiveSigner](https://vote.hive.uno/@brianoflondon)
- [Vote for Brianoflondon's Witness direct with HiveSigner](https://hivesigner.com/sign/account-witness-vote?witness=brianoflondon&approve=1)
- [Find my videos on 3speak](https://3speak.online/user/brianoflondon)
- [Verify my ID and Send me a direct message on Keybase](https://keybase.io/brianoflondon)
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,