Can anybody on here explain the pros and cons of NOSTR vs the DID spec from TBD ?

Seems like the over arching ideas are similar. Just different implementations?

Perhaps the TBD guys have spent more time architecting something cleaner?

But Nostr clearly has a much more active community & actual users?

What else ?

https://developer.tbd.website/docs/web5/learn/decentralized-identifiers/

nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft

nostr:npub1dergggklka99wwrs92yz8wdjs952h2ux2ha2ed598ngwu9w7a6fsh9xzpc

nostr:npub18ams6ewn5aj2n3wt2qawzglx9mr4nzksxhvrdc4gzrecw7n5tvjqctp424

nostr:npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237lmu63q0uf63m

Reply to this note

Please Login to reply.

Discussion

Is this something that can be integrated with Nostr, or are we expected to start from scratch with a new identity key set?

No idea. Doesn’t sound like it, but I’m nowhere near smart enough to answer that

IMO it’s interoperable. Block is working on identity wallet constructs with the belief that users will own many decentralized identities.

To be frank, big tech trails not too far behind with device passkeys. It’s using a similar public/private key combination with private relays.

I believe the big difference architecturally is that web5 is a mesh-like construct.

nostr:npub1wmr34t36fy03m8hvgl96zl3znndyzyaqhwmwdtshwmtkg03fetaqhjg240 nostr:npub1h8nk2346qezka5cpm8jjh3yl5j88pf4ly2ptu7s6uu55wcfqy0wq36rpev

If either of you have any insights, by all means. You’re both a hell of a lot smarter than I am

Nostr and TBD's Web5 have a lot in common. Loosely speaking, DIDs are like npubs and DWN nodes are like Relays.

DIDs vs npubs

- DIDs have the benefits that the Identity itself contains some metadata about the entity, so you could have multiple keys, and endpoints for contacting the entity (endpoints can be your own DWN, which is like a private relay)

- DIDs allow for key rotations, which means they are more secure

- DIDs are more complex

DWN vs Relays

- DWNs are mostly designed for private things, data is encrypted with your DID's key.

- DWNs seem quite complex for me, you can do a lot of stuff with these, like running Apps like you can on Umbrel OS or other personal server OS. So I think about a DWN as Personal server OS + Relay.

So, my take is that I don't know, different tradeoffs that can be summarised in a couple of points:

- more complexity

- more features (are these important?)

- users are required to have a DWN, either self hosted or rented. (Google Cloud is currently helping bootstrapping that network)

- less network effect

I believe this is a great explanation. Thanks.

nostr: npub + relay is much simpler and open than tbd:did + dwn. I also think the signed event relay architecture has massively more potential for network effect that private dwns.

I wrote why I replaced web5 DIDs with npubs recently. I’ve followed web5 for a longer, since the beginning tbh.

The link contains videos.

https://x.com/sheilfer/status/1816209419581153579

“Monetizing UX > subscriptions

I’ve replaced web5 DIDs with a nostr key pair for authentication in my app. The trade off is clear.

Web5 gave me instant accounts, which was great for distribution and made a super smooth user experience when it came to distributing durable “AI experiences” or microapps on social media.

However, authenticating with nostr comes with a network effect. Creating an account is very simple as it only requires a user name, and creates a more visceral “I own my data” experience. So not much lost in terms of time-to-first-AI, but more material offered out of the box.

This ownership of data is important because Bitcoin balances can also be carried across applications with nostr key pairs using the cashu protocol (an ecash protocol that makes Bitcoin more usable.)

However, ultimately, there is nothing that nostr can do that web5 cannot eventually do and I believe that web5 will eventually take the position of being a parent or a container identity for much larger scale work (think X, threads, etc), especially as more web5 developers organize and create incentivizes to build more web5 apps. But that time is not now, and nostr folks are very focused.”

Wow. Appreciate the great explanation!

There’s a lot to this topic. I’m so glad this question has been asked.

I’ve worked with Web5 and those SDKs since its launch. I’m currently building an incubation project with the TBD team called DCX.

I‘ve also worked with Nostr and those SDKs and built hackathon apps that integrated some of the core Nostr features.

After spending time with both, I can say with confidence that the TBD team has a lot of time and put a lot of thought and effort into architecting a cleaner and more scalable.

Nostr does have network, and yes, DIDs can be integrated into Nostr. This is a testament to the flexibility of DIDs and the DID spec. Check out this initial spec with working code examples: https://github.com/bnonni/did-nostr. I’m working on building a live app example of this did:nostr spec to showcase how it works.

TLDR: Nostr keys are a subset of DID keys in terms of functionality. Nostr keys can perform certain functions as good as DIDs such as the basic ability to sign arbitrary data and do authentication. DIDs provide a more scalable solution because they are built with support for other robust features like VCs and DWNs. DIDs are also platform agnostic meaning the second part of the DID uri can be swapped out with any storage solution you want (i.e. did:dht, did:nostr, did:btc, did:ion, did:web).

In the end, these two things are tools. The question becomes: which tool solves my problem more effectively? 🤔 my answer was / is DIDs using Web5.