Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NIP-60 Zap Gates - Interoperable distributed zap / pay walls #542

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

Egge21M
Copy link
Contributor

@Egge21M Egge21M commented May 19, 2023

We propose this flow for protecting resources (visuals, audio, text, html/iframes etc.) on web servers and unlocking them using NIP-57 zaps. This nip also proposes a new kind for sharing pointers and metadata for these resources throughout nostr.

Notes: We are aware that there is currently an ongoing discussion about using url vs u for tagging URI/URL. ZapGates started out with url like in NIP-94, but we changed it to u after feedback from @melvincarvalho. This PR is marked as a draft until at least NIP-98 is merged, because it heavily relies on it. Its probably fair to assume that this will by then.

Additional resources:

@fiatjaf
Copy link
Member

fiatjaf commented May 20, 2023

Looks good from a quick glance, but I hope we get more feedback from other people that may be interested in this.

@Egge21M
Copy link
Contributor Author

Egge21M commented May 21, 2023

Looks good from a quick glance, but I hope we get more feedback from other people that may be interested in this.

Yeah, would be great to get some feedback from @verbiricha or @pablof7z or anyone else building a content focused client.

@verbiricha
Copy link
Member

Pablo will have more insight than me here since zapstr implements a similar thing to this. cc @v0l

@flox1an
Copy link

flox1an commented Jun 2, 2023

Is the note limited to a single resource (i.e. only one u tag) or multiple resources? IMHO it would be good to be able to post multiple images as a set, or images in combination with a video. It would be more convenient for the zapper to unlock those resources as a package with a single zap.

https://lightning.video/ for example even has multiple unprotected preview images.

@Egge21M
Copy link
Contributor Author

Egge21M commented Jun 2, 2023

Is the note limited to a single resource (i.e. only one u tag) or multiple resources? IMHO it would be good to be able to post multiple images as a set, or images in combination with a video. It would be more convenient for the zapper to unlock those resources as a package with a single zap.

https://lightning.video/ for example even has multiple unprotected preview images.

Yeah that's a great point. I guess it wouldn't be difficult to make it work. Multiple files would then be tied to the same zapgate event and a zap would be unlocking access to all the listed resources.

@arthurfranca
Copy link
Contributor

@Egge7 I've added zap gates integration to #547 NIP-96 File Storage PR. But i used the NIP-94 1063 event instead of the 1211 one you use here. A 1063 with an amount tag should be considered a zap gated file (similar to how simply a aes-256-gcm tag indicates an encrypted file).
Used url from 1063 instead of u tag. The preview tag is a little different (has a third argument with MIME type).

Could you update your PR?

@Egge21M
Copy link
Contributor Author

Egge21M commented Jul 4, 2023

@Egge7 I've added zap gates integration to #547 NIP-96 File Storage PR. But i used the NIP-94 1063 event instead of the 1211 one you use here. A 1063 with an amount tag should be considered a zap gated file (similar to how simply a aes-256-gcm tag indicates an encrypted file).

Used url from 1063 instead of u tag. The preview tag is a little different (has a third argument with MIME type).

Could you update your PR?

Awesome! I'll look at it asap and update the PR accordingly.

@basantagoswami
Copy link
Contributor

I like the idea. Another use case of it can be to create crowdwalls like it's done for The Biz podcast. The content gets unlocked for everyone once it's accumulated enough sats. I need to think how we might integrate it with NIP-75 Zap Goals.

But I am also worried about creating more and more non nostr services that interact with the nostr protocol in very specialized ways (not as clients with key pairs, or relays).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants