What a day!
Pkarr is sovereign DNS's TLD, it is here and it is working, will Nostr use it? I have no idea, and even less influence.
What can I say, I built the thing that I told you I would build, and I am now telling you it is the only option, but it requires treating ed25519 keys as the root of identity, like some clients may choose to treat nip05 as such, except it is sovereign unlike nip05.
Now either use it or not, I am trying to make peace with the probability that no one in Nostr will use it because the different key type is too much of an ask.
And I know for sure Fiatjaf will fight against it becoming too successful for the same reason he fought against nip26 (adds too much complexity or whatever, even though it doesn't)
What I am trying to say is, this is not technically feasible, you can pretend that it is, by using some fake DHT like IPFS, but might as well use Purple pages at this point.
If you want to use a real one, the only alternative is Mainline, and what you are suggesting is not doable, Happy to jump on a call to explain it all if you care because text makes me sound like a fanatic, but it is just the technical reality.
Viva my people, what a glorious day!
Pkarr.org is the next step, now is the time to try it, it is ready, going forward there is nothing other than language ports and demos and bells and whistles.
DNS packets over Mainline, can't get any simpler or more conservative or robust than that.
I’d prefer a DHT for mapping npubs & nip-05 identifiers to relays where you can find their content. But purplepag.es is a good stopgap. That said is the crawler working nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft? We’re building stuff and using purple pages to find a users up to date relay list and it’s not working well. Some data is there but others we’d expect is missing.
I seriously would have done whatever it took if it was at all possible to support secp keys, but it is not possible, just... accept it like you accept nip05 and move on, it is the most minimal layer that prilovides robust battle tested credible exit, more and more projects are considering using it from Fedimint, to Iroh (a Hyperswarm alternative that works in all environments including Rust) to even DIDs (regardless of your opinion of DIDs).
Let's get this over with.
I am not even selling you something new, Pkarr is literally DNS packets over Mainline DHT, not a single thing more.
I’d prefer a DHT for mapping npubs & nip-05 identifiers to relays where you can find their content. But purplepag.es is a good stopgap. That said is the crawler working nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft? We’re building stuff and using purple pages to find a users up to date relay list and it’s not working well. Some data is there but others we’d expect is missing.
You can't bootstrap a DHT for the same reason you can't bootstrap Bitcoin, just accept the inconvenience and use Mainline and ed25519 keys, Pkarr is ready for prime time in JS and Rust and bringing TLDs to individuals pkarr.org
Published Pkarr's Rust implementation https://docs.rs/pkarr/latest/pkarr/
#pkarr has a rust implementation now fully compatible with the JS one https://github.com/Nuhvi/pkarr/blob/main/pkarr/examples/relay-client.rs
Yes it already works. But I am rewriting it in Rust so I maintain the right to break some things until the end of the month.
You can try it on web (with server bridging you to the DHt): pkarr.nuh.dev
Or you can try the CLI:
```
npm i -g pkarr
pkarr
```
Or read the TLDR https://github.com/nuhvi/pkarr
And you can also try to resolve my current key in my bio.
Next time stick with REST guys, don't try to outsmart REST.
nostr:note192y4y986wmkmfcdd5kj30xkadxm873e7lcuxpadjfj7jzvkxm94sk7cglx
This week I found two easy ways to speed up Pkarr two orders of magnitudes in the average case. Almost as centralized DNS.
https://nostrcheck.me/media/public/nostrcheck.me_5425545974712244981694331101.webp
Dnstr just assumes that Nostr doesn't have a discovery or centralization problem and go on to use relays anyways.
Pkarr is trying to solve the problems Nostr chooses not to engage with, so it is built on an overlay network that actually engages with these problems.
The gold standard of decentralizing Nostr is the gossip protocol, and even the author of that protocol said ultimately it needs a DHT, and without that it is only fit for the social media use case with following and followers and live conversations carrying these signals.
Pkarr is here for the base case of the Internet, it is trying to do what DNS is already doing perfectly, just decentralize the Root servers.
Dnstr is just answering the question "how can I use nostr to solve X"
Pkarr asked the question "what is objectively the most censorship resistant network to use as a decentralized root server" and built the answer.
But I am aware of the tribalism of devs, so I won't be debating or trying to convince anyone to use anything. Whoever needs Pkarr will use, I am here just to build it.
Pkarr will make federations just as sovereign as p2p.
This week I found two easy ways to speed up Pkarr two orders of magnitudes in the average case. Almost as centralized DNS.
https://nostrcheck.me/media/public/nostrcheck.me_5425545974712244981694331101.webp
Yes Websockets are stupid for anything but multi-player interactive apps, maybe even only makes sense for online shooters games.
Despite their rocky start and the political drama, Bluesky's architecture is golden, and will lend itself for stability and reliability.
The problem is that decentralized identity, encryption, and offline first experience are all completely ignored for the time being.
But you are right, the web is currently doomed to feel like visiting something that isn't yours, so it doesn't lend itself to key holding.
Native apps are much more appropriate for that psychologically not just technically.
The solution (I bet) is that we will have to reinvent browsers, to be more like the original vision that has authoring as a first class experience and tooling.
It is terrible because:
1- users don't hold the keys to migrate without the current pds's consent
2- even when they migrate, they also need the continuous consent of the centralized (and always will be) identity registry.
That being said, there is a movement in Nostr to give custody of keys to servers, without any path for redemption other than reboot with another key, so Nostr isn't really doing much better.
Most of my signal conversations have moved to nostr:npub1exv22uulqnmlluszc4yk92jhs2e5ajcs6mu3t00a6avzjcalj9csm7d828
Do you think the value proposition having no identity or not relying on phone numbers?
Would you still like it if it had stable identity that happens to be a publicKey like did:key or npub?
