We are beginning the development process for transmitting Nostr events in a peer-to-peer fashion, away from relays. This will start with Gift-wrapped DMs, Private Attachments, Private zaps, Private Text Notes, and Private Reactions; and will be the preferred transmission choice if both users are online, falling back to relays when they are not. Our Push Notification system already transmitted over 500,000 GiftWrapped Nostr events that relays will never see. With a full P2P this will get even better and will open the doors for voice and video calls directly inside Amethyst. Side-stepping relays won't be easy or quick. And I am sure we will get strong pushback from relay operators. But we will get there. And while this might start as an Amethyst feature, it will be a NIP and other clients will be able to join the privacy train.

Nostr is just starting.

Reply to this note

Please Login to reply.

Discussion

Now it's just nost I guess

Nostp

How exactly is it possible to remove the R ? Im confused.

Notes and

Other

Stuff

Transmitted over

Relays

It’s a joke about losing the relays

Good joke

I know thay haha, i mean like how exactly can nostr work peer 2 peer instead of with relays.

They are not sure yet. We should leave the nerds alone while they figure it out though

easily

Its the first im hearing of this development.

What are some of the possible drawbacks from side stepping relays?

You won't see stuff on all devices or clients, unless the clients share with each other which might be in the plans though.

Also, peer to peer is not hiding behind a relay so people you DM with could see your IP, if that matters.

Doesn’t it mean ruining the whole point of nostr which is being interoperable and not centralized ?

Wouldn’t ruin the “whole” point, I think it would be usecase specific, notes would always need relays, calling, and maybe even DMs don’t really need relays. Solutions to problems often have a way of sidestepping politics of ideas.

Even less of an illusion for "global"

p2p is harder especially for offline and prevent ip exposure

content privacy or complete privacy?

Okay relay operators, go ahead and shut down your relays. 😉

This will be interesting.

Thank you for your constant work Vitor 🫂

Pura vida 😍

👏👏👏👏👏👏👏👏

Do you have any thoughts about the technologies used in keet and Holepunch in this context?

Amazing. The ultimate mesh network.

A rajouter à la note de nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 pose la question du pourquoi nostr a de plus utilisateurs ou d'un microglobing. Avant de faire du marketing à mon avis il fait d'abord rechercher les qualités et défauts du produit, se poser la question du pourquoi certains quittent le navire même doté d'un esprit communautaire indéniable, pour pouvoir le promouvoir. Il me manque qu'il serait intéressant de faire une mise à plat de tout ce qui a été construit depuis décembre, la substance des notes est indispensable puis l' organiser... J'espère qu'ils ne vont pas vers un déploiement sans vraiment la substance qui fait le produit qualitatif pas seulement l'étendard liberté cool liberté et Bitcoin.. Qu'il laisse la porte ouverte aux feedbacks des utilisateurs

I love this idea. P2P

This isn’t a bad idea. Additionally you could consider using a blending of the two whereas the relays still serve purpose, either by segmenting data between both transmissions, carrying an authentication, or many other things. I’m not saying you would be required to, but by keeping relays involved you could have secondary layers for encryption, already running use cases or features. I’ll be waiting to see!

You’re always working on it, and we appreciate you brother!

🧡🫂💜🔱

IPFS uses Bitswap as a reputation system to decide which peers to sync with. It can be gamed with DDoSing.

How do you decide which peers to sync with on Amethyst P2P? There are so many users.

> How do you decide which peers to sync with on Amethyst P2P? There are so many users.

It can be done, here's just an example:

It should be possible to generate an onion address keypair algorithmically from the recipient's Nostr keypair, in a manner that is reproducible on sender-side using only the public key. Roughly similar to how Bitcoin HD wallets (xprv/xpub) work.

There are probably some privacy footnotes with this method, but would give you 100% accurate peer discovery without an intermediary.

Just to be clear, none of this exists. It's only an example of how it could be done.

👀

are the energy and bandwidth requirements for this higher or lower? Are you planning on using negentropy for sync?

Does that mean that my IP address would be available to any other user on Nostr?

The visibility of the IP address is what I am testing right now. We can always make it go through an internal Tor implementation, which I am also testing right now. But Tor won't work for voice and video calls later. But I think that use case is less sensitive of IP leakage since the user approves the call when receiving it.

Lots to do yet.

you could wait till keet.io is open sourced and integrate it

With arti you can configure tor to work fine for video calls on a phone.

Are you building from scratch or reusing existing infra?

E.g. Briar has solid implementation for passing messages over Bluetooth or local WiFi, Holepunch has interesting P2P streaming, SimpleX has good no-user-id concept, lightning has onion routing, Tor or I2P are the standard...

I'm very interested in P2P event transmission, but mobile device networking with ICE presents significant challenges, especially given the complexities of global networks

In the way I see it, it's about the protocol to check if two people are online and then send the event over there, falling back to relays if it doesn't. The most basic version should work for this simplistic scenario. Then we can improve it over time.

So if both parties online it would be P2P, and relays if offline?

That's what I said :)

Im liking it!💪

Thanks for always innovating.🙏

It's a good idea. And basically how torrents work anyways

Could you please elaborate on “the protocol to check” ?

So, would your IP be shared with your peers?

That doesn't initially look too good for privacy.

Looking forward to learning more about this 'protocol'.

🫂

Actually, I'm just glad 😅 I don't need these events on my relay because they may be related to shady dealings

sexy dealings

Nostr is ideal as a platform and catalog for sex workers 🤔

other stuff

#brothelstr

nostr:note1mpz6xxdg955jrhk8y9yhgt85r9yav9tmuqrw95tashcwujl3w0ys9vpszx

Pure P2P is terrible for privacy. Governments can detect activity between two distinct IPs and build a social graph of the interactions. How to prevent this kind of thing? Will there be some trustworthy proxy between peers?

What if both users are on Tor?

That can help a lot. Another idea would be to push some relay software so that people can receive some sats to run it. So, if you want more privacy, you can pay sats for rerouting your traffic. Tor is great, but the latency is unbearable for real-time video communication.

I have a lot of bandwidth and hardware power not in use. Many also do. We should find a way to use that in Nostr's favor.

having sats as the basis to use a feature generally wont work as most people dont have them

this is what briar does, using the internet via tor and local networks without

Interesting. Looking forward to see what you cook up.

From the nostr readme: “it does not rely on P2P techniques, and therefore it works”

does not rely but is also compatible with p2p

nostr dev is also permissionless so no statements about the protocol are law

The great thing about nostr is that it is not p2p. This seems like a step backwards and there are many p2p protocols in development already. Still looking forward to see what you are building. 💪

We can use one of those methods to transfer nostr events. Let me know if I should look at anything you like out there.

Definitely check out keet / holepunch. When it comes to p2p I am always worried about users privacy. It’s easy to doxx information like your location to your peers.

Are you going to publish more information about your plans soon?

holepunch.to veilid.com github.com/freenet/freenet-core

veilid and freenet are designed with better privacy

https://www.youtube.com/watch?v=Kb1lKscAMDQ

So, a turn server? Very little info about the architecture here, but since you said relay operators would hate it, now I'm wondering why would I hate it? Don't see a reason why.. 😎 The thing is, I know you can't do this without servers to bounce the traffic, and push notify uses too much Google servers to feel very OSS nostr. If you keep your server stack opensource and configurable then relays can help run the network and decentralize. If not, you're gonna lock yourself into being the one server and I don't think you really want that..

Turn services would be a really cool concept to nostrize to facilitate P2P connections. I'd run some along side relays for sure, because then I don't have that data resting and clients can p2p any number of things..

this is my assumption too. looking forward to seeing some architecture documents, not sure how this achieves privacy.

No servers (otherwise we should just use relays).

The proposal is to do phone to phone directly.

sounds too good to be true! how do phones talk p2p. share the wizardry good sir

keet.io

🤷‍♂️ must be magic

So how do you traverse the NAT?

Yes, how?

Ok, this is what I am testing.. Dont take this as a final solution.

First: IPv6. On IPv4, you have to deal with NAT travel + firewall holepunch. With IPv6, the NAT stuff is gone. All you need is a simple STUN server to open the connection.

Second: We can use Nostr to signal people's IPv6+port to one another.

Once that is done, both sides start sendind UDP messages over IPv6 to each other. The first 2 messages should be rejected because of the firewall, but after that the door is open. We try this until we hear a package back.

Now, the beauty of Nostr is that somebody is always online. Which means other phones can behave as STUN servers to open people's firewals more easily.

The goal is to use network effects to avoid the need for central servers. Market participants can add their computers or phones to the pool by just replying the Nostr signaling requests.

It's like a STUN server as a DVM.

Lots to test, but that was the idea.

what if.. forget about STUN for a second, it isn't gonna work for most peers (esp mobile carrier networks). You could support ipv* by 'relays' running coturn and forcing the use of the turn server vs. stun would not expose IP info between the peers. Coturn has all the stun options, so if a peer was willing, they could opt in to the IP disclosure and achieve a true P2P connection.

multi hops could also be implemented, by using wireguard networks with relays being a 'hop' server.

https://github.com/coturn/coturn

Yeah that's the easy way to do it. But I think we can do it without coturn. Most of what coturn implements is for the old nat stuff. There days everyone has an IPv6. Só it should be easier.

🤔

But it is a fallback for the p2p if everything else fails.

given how popular vpns are im not sure why anyone would want to connect p2p 🐻‍❄️🤔

"These days everyone has an IPv6" - don't think that's the case at all. Most countries seem to be running at around 50-60% deployment, and that's only showing allocated IPv6 that doesn't mean configured and in use.

That seems different than what I have but if that is true let's hope we can help them finish the transition.

Let's hope you can. It's been in deployment for ~20 years!

Maybe you're mixing cellular and fixed line services. On cellular, the figures are likely higher but on fixed line they're also likely lower. Mobile users aren't, most the time, using a cellular connection though, they're using WiFi.

https://ipv6-test.com/stats/

I have implemented the calling service in 0xchat, but using the traditional technical solution:

Relay signaling+WebRTC+STUN+TURN.

I’m looking forward to your experimental results. :)

Which servers are you using for stun and turn?

Google’s STUN and our own built STUN/TURN service, followed by support users to input their owned services, similar to the approach of Simplex

cool idea, subscribed!

peers in a p2p network are servers and can act as relays, there is already a few p2p relay networks

You can't traverse NAT without a server to setup your connection. Especially on mobile networks. One of your 'peers' must open their firewall. By doing so, in my book, it becomes a server. But the semantics may have changed, I dunno why people think servers are so lame. They're just computers that are up and online.

peers in p2p are servers

from the lead dev of holepunch.to https://x.com/mafintosh/status/1259596991857930243 there is distributed holepunching aka nat firewall traversal

Yes, it uses a lot of techniques I'm well familiar with, techniques that don't really work anymore. Like STUN. Mobile networks especially, you're just gonna end up sending all that traffic through a turn relay (which is fine).

https://en.m.wikipedia.org/wiki/Traversal_Using_Relays_around_NAT

https://webrtc.org/getting-started/turn-server

as p2p apps become popular incompatible shit 'networks' will face tremendous pressure to become proper networks

I wish. A majority of the world is on a mobile carriers network.. I just don't see how it would apply any pressure, can't even get people to use a desktop browser anymore.

many mobile networks work p2p, mobiles also have wifi, starlink lol

there will be nsa datacenter peers to use, its what american tax victims pay for

Nostr is just getting started. The plebs are rebuilding the internet from bottom up, top down, left and right.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcpp4mhxue69uhkummn9ekx7mqzyprqcf0xst760qet2tglytfay2e3wmvh9asdehpjztkceyh0s5r9cqcyqqqqqqg5cvj3m

Perplexity.ai prompt

"Rewrite for someone who isn't smarter than a 4th grader."

Nostr is a way to send messages to your friends. They are working on making it even more private by sending messages directly between you and your friend, instead of going through a middleman called a relay.

This will make it harder for other people to see your messages.

They are also working on adding voice and video calls. It might take a while to make this change, but it will be worth it.

This will be a feature for other apps too, not just Nostr. It's important to keep your messages private so that only the people you want to see them can see them.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcpz3mhxue69uhhyetvv9ujuerpd46hxtnfdupzq3svyhng9ld8sv44950j957j9vchdktj7cxumsep9mvvjthc2pjuqvzqqqqqqyjkmnhd

This feels like something fundamentally different from the Nostr protocol. Is that the goal?

I’m open to being convinced but P2P is a different model than client and relay. Is this just for a limited set of features?

nostr is already p2p compatible

the notes can be distributed via any means because they are self authenticating

But it’s the difference between a distributed and decentralised network. Distributed is P2P and it has even more trade offs than decentralised networks.

There are no free lunches

Then we will navigate those trade-offs and let users choose what they prefer. :)

I’m open to being convinced but what do we need this for? Is it just private DMs?

Only use it for the use cases that make sense. For everything else there's m̶a̶s̶t̶e̶r̶c̶a̶r̶d̶ relays.

Private DMs, Private DM Attachments, private Zaps, and private reactions on top of Voice and Video calls.

Have you written out the architecture anywhere yet? Would love to dive in and understand

No, I am just testing things out for now. WebRtc seems to work, but I want to get rid of these servers they use for signaling and use giftWrapped msgs in Nostr for that.

I'm might have multiple layers. Bluetooth, WIFI for those physically close to one another and some version of WebRtc for the rest.

Interesting 🤔 well I look forward to more info

reminds me of Microsoft's Skype

nostr is already distributed and not p2p except for relays

trade offs are being worked on, we also have more compute and network resoirces than ever

then you either dont understand nostr or distributed

i am not going to bother with that silly article btw tho it likely agrees with me

https://www.vocabulary.com/dictionary/distribute

'To distribute is to disperse widely, hand out, or spread around'

how are nostr notes distributed? how can nostr notes be distributed? are nostr notes on a wide variety of servers? are nostr notes handed out widely to relays? can i put nostr notes on a usb stick and give them to a friend? can that friend send those notes from that usb stick to a relay? can 500 other relays download those notes from that relay? can 1million people download those notes from those relays?

how is nostr distributed?

data is very cheap especially on local networks, the lunch is cheap

No strong opinions about P2P here, just want to emphasize my respect to your work and enthusiasm. You will get something cool done.

Before nostr was created I imagined a decentralized social media platform where everyone hosted their own content.

To illustrate the idea. Imagine user one would host their own conrent and the content of anyone they follow. User one's followers will host their own content along with the people the users they are following.

This creates an incentive to be mindful of who you follow and for those with the greatest following to have the greatest reach. In that network, hitting the follow button represents a physical commitment to host content (either on a cloud service or a personal server).

I am not technical enough to understand exactly what is meant by giftwrapping, but I thought I would post this in case it sparked an idea.

Thanks for your continued work and dedication 🙏

This Nostr proposal is not that different from what you are saying. The only difference here is the signatures. I was working on a version of a P2P system like you described back in 2008. It is possible. It's hard, very hard, but possible.

Very cool man. I'm here for the experiments and the developments.

Onwards towards freedom 🤙

This is my vision as well. I really liked the proposal with rendez-vouz beacons and webrtc for those side channels. What spec are you thinking of using?

So, passing over Bluetooth and internal WIFI is very easy (which was my first test a few weeks ago). I just started doing some WebRTC tests and looking at some server alternatives and signaling needs. It works but I am very early in this whole adventure.

I looked at Rendez-vouz as well and I was wondering can't we just pass the signaling through our usual relays instead? Maybe we still need some type of STUN server to get the phone's IP and as long as two users can use different STUN servers, it could work.

What I want to avoid is replacing our replays with a different "relay". If we need to use a server to transfer some info we can just use our regular relays instead to avoid another dependency/attacking point.

Yes I think using nostr relays to setup rendezvous is a great idea, with hole punching something like this https://itnext.io/p2p-nat-traversal-how-to-punch-a-hole-9abc8ffa758e

What lower level protocol are you thinking of using? UDP messages? TCP with message framing added back? WebSockets? If we are starting a new protocol, can we go binary?

We will need to go binary for voice and video calls. But for the messages that are just simple nostr events, I am not sure if it makes sense since the event is already in text.🤔

Interesting, but this is where keet also suffers. Without backups of the whole thing, edge case events make the whole thing feel clunky.

Either rely on relays or not, give the option to restore all in one, or not at all.

This is why I think we can succeed. The relay infrastructure will always be there to be a fallback. The P2P stuff is an additional layer of privacy to be used when 2 phones are able to reliably connect with one another.

I could see P2P transmission as being super neat for near-instant messaging. Not sure if it is a good idea for broadcasting notes to all followers, but there are definitively use cases where I would love that.

Please do consider documenting it - even if not in the nips repo - for easier referencing when developing something based on this! ^^

IMO Nostr lives and dies from it's documentation. It is why there are so few Matrix clients, because the Matrix docs are a PITA...

dYeah, it's not for public notes. The idea is to focus on private ones, which is generally just encrypted p2p anyway :)

What’s the resource expectation for users ? And how will impact scalability at all corners of the world when it hits mainstream spread ?

If it fails it goes back to relays. So, it shouldn't have any impact. It's just additional privacy when the user are able to connect to one another.

Hot take: a protocol centered around the internet is inherently more open than a protocol centered around relays on the Internet. One includes the other.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcppemhxue69uhkummn9ekx7mp0qgsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqrqsqqqqqpds3v5q

Relays are public and shouldn't involve with private things yes. I support this.

What if I use both Amethyst (mobile) and Primal (desktop)?

Primal will not be in sync with my private communications.

User 1 sends the event to User 2 via P2P instead of pushing through a relay. Then User 2 can send to any relay it wants for backup and to share with other clients the same user uses.

Amethyst would just send it to your own write relays for backup for now. And we could have an option to turn that off for the privacy-conscious users. In that case, no event received via P2P ever leaves the phone.

Let me get this straight, will only private events be p2p?

Because in your initial note you say that this movement starts with private events, which made me understand that in the future all events would be p2p.

If only private p2p events and public notes continue to be transmitted via relays, at this point I support the idea. I believe that this way the scroll feed experience does not change.

Correct. Only private events will be P2P (because they are already encrypted in a P2P way). I just have way more private event types coming up, like legally-binding contracts: https://github.com/nostr-protocol/nips/pull/755

I think I understand now. So I really don't see any problem for the relay operators, nor for the feed experience 🤷‍♂️

Looking forward to the new private events 🚀

+1. I don’t see why any of us would be bothered by this. Relay operators don’t want your private stuff anyway.

The details of course are in the implementation. I think its a lot harder to pull off then you’ve made it sound in this note :)

Ask and you shall receive! Privacy and reduced liability , value 4 value .

What a time to be alive

I think a simplex-like queue abstraction on top of nostr would be the best of both worlds

I have not found a reason to use Simplex if you are doing WebRTC. Instead of Nostr -> SimpleX -> WebRTC, you might as well just do Nostr -> WebRTC. It's one less point of attack.

The point of simplex is the async queues which you can’t replace with p2p tech. Nostr is missing the ephemeral push-pull queue idea

Async queues could fit nicely into relays. The queues are a really interesting solution in my opinion and I wonder where is that applicable in Bitcoin or Nostr space...

I agree async queues could just be implemented in Nostr but I don't see a need for async queues at the moment. But maybe I am missing something...

It enables ephemeral asynchronous notes without p2p

I understand. But I don't have a use for that yet. It's a nice to have in my bucket.

P2P is a must though. The whole point of p2p is to transfer private content without any servers involved.

You pretty much always need servers to holepunch connections at the very least. Not to mention its also pretty rare to have two clients online at the same time to establish p2p comms. Even in that case you may still need bridge servers.

Given these difficulties a temporary queue of messages would be much more reliable and just as private, if auth was required from the get go.

You need servers for P2P signaling, yes. But that signaling doesn't need async queues. I also question the assumption that two users are not online. They might not start online, but as soon as one messages the other, both stay online for the length of the conversation. And if you do push notifications, like we do, you can get the other user online in seconds. If both are online they don't need relays at all.

What's the niche of the vanilla SimpleX client for Nostronauts from your point of view? #asknostr

Cool

My initial reaction is Nostp2p is not Nostr. Looking forward to more details on this.

Sounds like combining the best of both decentralized approaches, great take. I think Nostr should stay open to innovations like this.

I don’t know what this means but it sounds provocative

My bad got the quote wrong 😂

This nip is given me a boner

Love Amethyst 🫂💜👍🫡

would this make nostr client/s less data hungry?

Gossip model + clients as relays

nostr:note1dnpanu8aarvkk89ynrvu2wrmw9tzl9dx22tydcppxazqpusz8pls9rv9rz

Is there any use case for using IPFS as data storage for Nostr?

All for Nostr privacy improvements. This will probably be one of those fundamental design choices which look obvious in hindsight and baffling that it wasn't included in the first or second drafts of the protocol. Then again this could fail spectacularly with users' phones filling up to the brim or connections almost always falling back to relays, with months and months of dev hours wasted for basically nothing. But what do I know, I'm just your friendly hoodlum in these cyphers. Interested to see how all this unwinds.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcpz3mhxue69uhhyetvv9ujumn0wd68ytnzvupzq3svyhng9ld8sv44950j957j9vchdktj7cxumsep9mvvjthc2pjuqvzqqqqqqystrw4y

"Nostr is just starting" -- nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z @ ~Fall Equinox 2023

Listen closely if you didn't do already.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcpz3mhxue69uhhyetvv9ujumn0wd68ytnzvupzq3svyhng9ld8sv44950j957j9vchdktj7cxumsep9mvvjthc2pjuqvzqqqqqqystrw4y

Yeah baby!

I look forward to your progress.

How did Napster do it?

Is this similar to the way Napster/Limewire worked?

nostr:note1dnpanu8aarvkk89ynrvu2wrmw9tzl9dx22tydcppxazqpusz8pls9rv9rz

nostr:note1dnpanu8aarvkk89ynrvu2wrmw9tzl9dx22tydcppxazqpusz8pls9rv9rz

good or bad?

quote tweets on primal sucks

ON FIRE!!

nostr:note1dnpanu8aarvkk89ynrvu2wrmw9tzl9dx22tydcppxazqpusz8pls9rv9rz

Is this comparable to something like holepunch?

🤔🤔🤔🤔🤔

This is a big challenge, support. Nostr now allows anyone to see who you're talking to through your public key, even if you can't see what we're talking about. It's not nice to have a private chat party in a glass room in the square where everyone can see. Better protection of privacy would be a huge step forward.💜🫂

You must look at veilid. https://veilid.com/docs/overview/

"Veilid is an open-source, peer-to-peer, mobile-first, networked application framework.

The framework is conceptually similar to IPFS and Tor, but faster and designed from the ground-up to provide all services over a privately routed network.

The framework enables development of fully-distributed applications without a 'blockchain' or a 'transactional layer' at their base.

The framework can be included as part of user-facing applications or run as a 'headless node' for power users who wish to help build the network."

Absolutely!

Is this available in China? Push service against GFW…

does anyone know they should save their data themselves ? This is the only point that bother me in this 😉

nostr:note1dnpanu8aarvkk89ynrvu2wrmw9tzl9dx22tydcppxazqpusz8pls9rv9rz

Nostr is about censorship resistance and at least for me, the most challenging mode of censorship resistance is censorship resistant broadcast. Avoiding meta data leak in encrypted transmission is a different problem to solve and nostr trying to solve the former would have to compromise on that to solve the latter. Therefore I believe Gift-wrapped DMs and "full P2P" is potentially harming nostr.

Is there a thread that discusses this? Would love to be a fly on the wall for this 🧐

Hmm. How are you going to achieve this and stay interoperable with other clients? I assume the fallback transmission you mentioned? Also, would this be utilizing nostrdb, so that users essentially use their own relay and communicate to other's via their own local relays? Is there a gossip model being used? So many questions. Is there an external discussion that I can see and randomly yell into?

I think it’s fair to say amethyst is not going to be very compatible with other clients going forward. I highly doubt anyone would build around his centralized push server as a core protocol mechanism.

I am not going to use the push server for P2P. There is going to be no server. Thats the whole point.

Plizz no hard forks

Man I need someone to explain this to me like I’m 5

Simple, if two users are using compatible P2P implementations, they can transfer their events via P2P, if not it goes through relays as usual. On a conversation via DMs for instance, I would assume the first DM comes in via relays and then moves to P2P when the person replies. The likelyhood of the two users being online is higher there. Then no additional DM goes through relays anymore, increasing privacy.

Of course, each user can receive the message via P2P and still send to relays for backup, but that is the receving user's choice, not the sender.

Thanks.

Lots to test yet. We will see if can get this to an interesting level.

всех распустить...

This is great Vitor! 👏👏👏👏👏

Wow,

respect!

This sounds amazing!

really looking forward to the future of #NOSTR

Means we can take over everything in communication with any possible device that has access to the inet.

Sounds like fun.

nostr:nevent1qqsxes7e7r773kttrjjf3kw98pahz430jkn999jxuqsnw3qq7gprslcppamhxue69uhkummnw3ezumt0d5pzq3svyhng9ld8sv44950j957j9vchdktj7cxumsep9mvvjthc2pjuqvzqqqqqqy63zq9p

Bullish. Relays can be a point of failure. P2p is the way

interesting