mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-12-23 00:45:53 -05:00
chat is just one example
this is a generic "group events" system
This commit is contained in:
parent
e84206b60c
commit
10aa362edc
16
112.md
16
112.md
|
@ -1,12 +1,12 @@
|
|||
NIP-112
|
||||
=======
|
||||
|
||||
Encrypted Group Chat
|
||||
--------------------
|
||||
Encrypted Group Events
|
||||
----------------------
|
||||
|
||||
`draft` `optional` `author:earonesty`
|
||||
|
||||
This NIP defines new event kinds for encrypted group chat with optional forward secrecy guidelines.
|
||||
This NIP defines new event kinds for encrypted group events, with chat as the primary example, and with optional forward secrecy guidelines.
|
||||
|
||||
This NIP builds on the encryption from NIP-44, the gift-wrap of NIP-59 and the distributed chat channel management of NIP-28. It is similar to NIP38, with the exception that gift-wrap is used on every message, and issues like metadata leakage and optional forward secrecy are addressed.
|
||||
|
||||
|
@ -18,7 +18,7 @@ It reserves 8 event kinds (1059, 400-406) for immediate use.
|
|||
- `400` - wrapped kind: create encrypted channel
|
||||
- `401` - wrapped kind: invite to encrypted channel
|
||||
- `402` - wrapped kind: change channel metadata
|
||||
- `403` - wrapped kind: send encrypted message
|
||||
- `403` - wrapped kind: send encrypted chat message
|
||||
- `404` - wrapped kind: moved to new channel
|
||||
- `405` - wrapped kind: delegate new owner
|
||||
- `406` - wrapped kind: accept owner delegation
|
||||
|
@ -36,7 +36,7 @@ All events called "wrapped-kind XX" refer to these kind 1059 gift wrapped events
|
|||
|
||||
## Wrapped Kind 400: Create Encrypted channel
|
||||
|
||||
Create a Encrypted chat channel.
|
||||
Create a Encrypted event channel.
|
||||
|
||||
In the channel creation `content` field, Client SHOULD include basic channel metadata (`name`, `about` and `picture`).
|
||||
|
||||
|
@ -102,7 +102,7 @@ Clients MUST specify an "e" tag to identify the channel id.
|
|||
Clients SHOULD mark the "e" tag to recommend a relay where the original event can be found.
|
||||
Clients MAY replace the "r" tag set with a full list of new relays.
|
||||
|
||||
There need be no overlap between the "e" relay and the "r" list. For example, if a chat channel is moving its relay set to a new set.
|
||||
There need be no overlap between the "e" relay and the "r" list. For example, if a group's channel is moving its relay set to a new set.
|
||||
|
||||
```json
|
||||
{
|
||||
|
@ -208,11 +208,11 @@ For [NIP-10](10.md) relay recommendations on replies and on channel creation inf
|
|||
Future extensibility
|
||||
--------------------
|
||||
|
||||
We reserve wrapped-event kinds 407-419 for other events related to chat, to potentially include new types of media (photo/video), delegation, moderation, mute, hide, etc.
|
||||
We reserve wrapped-event kinds 407-419 for other wrapped group events, such as delegation, moderation, mute, hide, etc.
|
||||
|
||||
Motivation
|
||||
----------
|
||||
This is the easiest way to allow the use of group chat with select group of people, while hiding metadata.
|
||||
This is the easiest way to allow the use of group events with select group of people, while hiding metadata, and preserving nostr's censorship resistence
|
||||
|
||||
Optional Forward Secrecy
|
||||
------------------------
|
||||
|
|
Loading…
Reference in New Issue
Block a user