CCN Invitation Event
Signed-off-by: dannym <danny@arx-ccn.com>
This commit is contained in:
commit
ccbb1fa262
1 changed files with 48 additions and 0 deletions
48
kinds/9999 - CCN Invitation.md
Normal file
48
kinds/9999 - CCN Invitation.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
# Kind 9999: CCN Invitation
|
||||
|
||||
## Description
|
||||
Kind 9999 is used for invitation codes to join a CCN. This event type facilitates a secure invitation process where a CCN member can generate and broadcast an invitation code that can be used by potential one-time new members to join the network.
|
||||
|
||||
## Event Structure
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "<32-byte hex string>",
|
||||
"pubkey": "<32-byte hex string>",
|
||||
"created_at": <unix timestamp in seconds>,
|
||||
"kind": 9999,
|
||||
"tags": [
|
||||
["i", "<sha512 hash of the invite code>"]
|
||||
],
|
||||
"content": "",
|
||||
"sig": "<64-byte hex string>"
|
||||
}
|
||||
```
|
||||
|
||||
## Tag Specifications
|
||||
|
||||
| Tag | Value | Description |
|
||||
|-----|-------|-------------|
|
||||
| i | `<sha512 hash of the invite code>` | The SHA-512 hash of the randomly generated 32-byte invite code |
|
||||
|
||||
## Workflow
|
||||
|
||||
1. A CCN member generates a random 32-byte invite code
|
||||
2. The member broadcasts a kind 9999 event with the SHA-512 hash of the invite code in the "i" tag
|
||||
3. The invitee receives the invite code (typically via QR code or direct message)
|
||||
4. The invitee generates their nsec (private key)
|
||||
5. The invitee sends a direct message to the CCN with their invite code
|
||||
6. Upon receipt of a message where the SHA-512 hash matches a valid invite code, the CCN (actioned by the inviter only) broadcasts an accept invite event
|
||||
7. The CCN (actioned by the inviter only) sends the CCN seed to the invitee via direct message
|
||||
8. The CCN invalidates the used invite code
|
||||
|
||||
## Invite Code Format
|
||||
|
||||
The invite code is encoded as a bech32m string with the prefix "eveinvite" and contains:
|
||||
- The CCN's npub (32 bytes)
|
||||
- The random invite code (32 bytes)
|
||||
|
||||
## References
|
||||
|
||||
* NIP-01: Basic protocol flow description
|
||||
* NIP-17: Private Direct Messages
|
Loading…
Add table
Reference in a new issue