For dead simple one off pay and receive, delivery via a Nostr DM - for sure, no URL. Only a common relay URL/domain is needed. But if your event has an image or video (and you’d prefer not just to be a secret sharing approach, like a ‘anyone with this private link can read this file’ approach), then how do you control who can access the image or video in this scenario - without the risk of someone sharing the access publicly? Obviously downloading and reposting is possible too - however it’s impractical at large scale (like where is the YouTube clone that rips all their content?). Largely tied to demand (like ripping movies/series).
For example two, how does the user access the service? A relay URL? A URL/domain to configure for translation APIs? Depends how your service is delivered. If you use a Nostr event request and response approach, using like a HTTP Nostr API to access it, sure that can work - I’m less convinced it’s suitable for many use cases, as Nostr events have real overhead many performant/scalable APIs don’t need. Maybe in 5-10 years the overhead will be negligible.
For situations that require repeated/future access (did pay, is current member, access not expired, etc), where there is an access check mechanism, it needs some centralisation (if again you care about its distribution). Maybe some key exchange encryption can work - however it doesn’t have the same properties as being having a centralised gateway.
I may be overlooking something, and I’m hoping other methods exist - I just don’t know of any that have the same or better attributes than a URL/Domain approach today.
Domains/URLs are really just pointers, I entirely agree. Controlled distribution is just one use case they support well.
These are all valid questions. My point is that nostr events can be entry points to access the lower level service delivery mechanism. You subscribe on nostr, and you ask for access endpoint on nostr, and then you connect and use it. Next time, the endpoint may change, URL is no longer the address, it's a lower-level implementation detail below nostr event. That's where we're going, I think.
Thread collapsed