Live data from Hacker News

Nostr.how – A Complete Guide to Nostr

nostr.how

81–90 of 140 posts

Re: Nostr.how – A Complete Guide to Nostr

#81

Earlier quoted context omitted.

How would my followers (or whatever they’re called in nostr) know where to get my events from? It seems like optimal strategy is to send to/fetch from every relay possible. Effectively, every relay would host the whole network. In this regard federation seem a little more scalable.

I don't know if clients support this yet but you can transmit a suggested relay with your post that people can add to their list of relays. That suggested relay should be one you control. That way they always have a point of truth for your notes.

I don’t think they do, but definitely looking forward to clients getting smarter about discovery and relay management.

Re: Nostr.how – A Complete Guide to Nostr

#82

I’m the dev behind Nostr.how. I’d love to hear your feedback on how I can make the site more clear/better at explaining Nostr. That said, while I am not the core dev on the protocol or any client/relay it’s been awesome to see the points of confusion from the comments and questions here. Keep them coming - great fodder for new guides.

Search doesn't seem to work for me. There are always no results.

Check out https://nostrview.com/search for a nostr search engine and https://nostr.net for a list of various things built on nostr.

Re: Nostr.how – A Complete Guide to Nostr

#83

I was surprised when I learned it's not really related to Bitcoin. I didn't think Jack would support something that isn't adjacent.

It’s not really related to Bitcoin but it uses the same crypto primitives, schnorr signatures, secp256k1 elliptic curve etc, if you are building for nostr you can reuse the numerous bitcoin libraries. As a result it’s trivial to implement support for lightning network payments.

It’s trivial to implement support for Lightning network payments virtually anywhere at this point. Damus isn’t using any crypto primitives directly to have a pay button.

Re: Nostr.how – A Complete Guide to Nostr

#84
post #55

Earlier quoted context omitted.

It’s something we’re building in real time, as we use it. If you visit the NIPs repo, you will see it changing by the idea. As the clients and relays try things, ideas propagate quickly. In that sense it is extremely exciting.

It is definitely interesting and exciting, at least the end goal. I am still not sold on the architecture but I want to be. So relays are not able to talk to one another and if I want to be able to interact with another user in any way, we have to be sharing a relay, right? These seem like really strong limitations to me and I am having a hard time understanding why they exist. Why not start with some relay-to-relay…

I believe multiple relay operators are currently working on R2R communication. It will probably be pretty common soon.

Re: Nostr.how – A Complete Guide to Nostr

#85

Earlier quoted context omitted.

Mastodon is essentially centralized — you just pick who you trust with full centralized authority before they have a change of heart, fail, begin rent collecting, whatever. Nobody seems to understand how difficult it is to make a system that can guarantee its neutrality within the protocol. (Sorry HN: it requires crypto.)

It may need cryptography. I think the majority of HN likes cryptography. When you say crypto, and apologize for it, I assume you mean the stupid coins and all the nonsense that comes with that group of fools, and that is not required.

How do you guarantee data availability and avoid double spending without Byzantine fault tolerant consensus?

Re: Nostr.how – A Complete Guide to Nostr

#86

Earlier quoted context omitted.

Mastodon is essentially centralized — you just pick who you trust with full centralized authority before they have a change of heart, fail, begin rent collecting, whatever. Nobody seems to understand how difficult it is to make a system that can guarantee its neutrality within the protocol. (Sorry HN: it requires crypto.)

Crypto meaning cryptography yes it's needed. If you a referencing bitcoin like technology used for money no they don't help here. Please enough with this "crypto" ignorance

How do you guarantee data availability and avoid double spending without Byzantine fault tolerant consensus (that is, blockchain crypto)? If you have an answer you will be onto something huge.

Re: Nostr.how – A Complete Guide to Nostr

#87

I read everything there and all NIPs (they look like underage RFCs, but also drunk) and I'm a little confused. - The protocol doesn't define a transport but seem to use WebSockets. How does it handle poor/dropping connections? Does it allow usage of alternate transport protocols? - Messages are defined as JSON but doesn't use much of its structure anyway. Some fields are just arrays of values. And even then some part…

> The protocol doesn't define a transport but seem to use WebSockets.

The protocol transport is over WebSockets.

> How does it handle poor/dropping connections?

The way HTTP underneath it handles poor/dropping connections. It is request-response like HTTP, there isn't state to recover, just try again.

> Does it allow usage of alternate transport protocols?

If you think it is useful, write a NIP for it.

> Messages are defined as JSON but doesn't use much of its structure anyway. Some fields are just arrays of values. And even then some parts are just strings with some other arbitrary syntax. Seems like a poor choice.

Being readable is helpful for debugging. I agree there is less structure than could be used, but it is well-defined and libraries can more strongly type the data and name the fields, for example. One thing you can't easily do is go back and change the protocol, that would create far too much complexity.

> Message signatures are signatures of stringified JSON. Given that JSON is not particularly well defined to guarantee representation stability are implementation differences handled?

The part that is signed is defined well enough that at least dozens (probably near a hundred now) coding implementations are inter-operating on this without issue. Is the definition formal and rigid enough to ensure nobody misinterprets it? Probably not. I've had to ask for clarification and when I got it, I put in a PR to change the NIP. It was accepted right away.

It is not XMPP. Have you read the XMPP RFCs? I couldn't even get through the table of contents of the first one. The guiding principle of nostr is that it is the simplest protocol that has a chance of working.

Re: Nostr.how – A Complete Guide to Nostr

#88

The whole premise of Nostr is that you consider your access point hostile, yet its provider is still offering one. That contradiction just incentivizes bad and toxic actors to participate and dominate this network. That's why, it seems, the developers actively conflate what one would expect from a private communication platform and a social media platform. But this isn't an alternative to Mastodon or Twitter, it's an…

So far, there haven't been many "bad and toxic actors". I have met one bad actor among thousands on nostr and I muted him. I heard there was porn in global chat, but my client doesn't even offer global chat.

People don't consider their relays "hostile", but they don't trust them with things they don't need to trust them with. That's not the contradiction you imagine. Relay operators are trusted with things like spam filtering, illegal content removal, etc. One method is that a proof-of-work is required to start writing to a relay, and your public key can be banned quickly for bad behavior, resulting in another long proof-of-work to try again.

Trusting a relay with account management, for example, is horrible. Trust as little as necessary.

Re: Nostr.how – A Complete Guide to Nostr

#89
post #6

Earlier quoted context omitted.

With Nostr, your identity isn't attached to a relay, so if one relay doesn't like you other relays will still relay your content, while still keeping your followerbase

How would my followers (or whatever they’re called in nostr) know where to get my events from? It seems like optimal strategy is to send to/fetch from every relay possible. Effectively, every relay would host the whole network. In this regard federation seem a little more scalable.

This is a current problem. The solution is sending a small message telling everyone where you post to lots and lots of relays, then just posting to a few of them.

Re: Nostr.how – A Complete Guide to Nostr

#90

I have one question. Does Nostr involve a Blockchain?

IMHO blockchain is an ugly terrible solution to a problem that had no other solution. The chain just gets bigger never smaller, requires expensive proof of work, requires complex synchronization protocols. Why so many people want to copy the worst part of bitcoin for their new billion dollar startup idea has always been beyond me.

No, nostr does not have a blockchain.

Post reply on HN