NIP-17 („Private Direct Messages“) je návrh protokolu Nostr, ktorý špecifikuje, ako posielať úplne súkromné priame správy medzi dvomi používateľmi.
Používa symetrické šifrovanie definované v NIP-44 a voliteľne „pečate“ a „darčekové balenie“ z NIP-59, takže samotný relay ani iní účastníci nevidia obsah správy – vidia iba zašifrovaný blob a metadáta, kto komu správu posiela. GitHubrust-nostr.org
Kľúčové prvky NIP-17
Prvok 8408_d376e4-48> |
Popis 8408_3a851f-b9> |
---|---|
Typ eventu (kind 4) 8408_b1ecfb-69> |
Šifrovaný DM sa publikuje ako event typu 4; pole |
Šifrovanie 8408_62a937-6a> |
Odosielateľ a príjemca vypočítajú symetrický kľúč z ECDH (súkromný kľúč odosielateľa × verejný kľúč príjemcu) – schéma definovaná v NIP-44. Tak vznikne end-to-end šifrovanie bez potreby PKI. GitHubrust-nostr.org 8408_21f562-31> |
Relay 8408_efe398-d3> |
Správy sa publikujú na bežné Nostr relé; relé nemusí rozumieť obsahu, stačí ak vie preposielať eventy. Klient príjemcu správy si z databázy relé vytiahne všetky kind 4, ktoré sú adresované jeho verejnému kľúču. 8408_b7eb6a-12> |
Voliteľné „seals“ 8408_0d47cf-b4> |
Ak sa správa prenáša cez nedôveryhodné relé, môže byť ďalšia vrstva šifrovania/pečatenia podľa NIP-59 (tzv. sealed envelope). GitHub 8408_0e9f48-fb> |
Prijímanie DM 8408_8f38c6-92> |
Používateľ si môže v kontakte (NIP-02) alebo v zozname relé (NIP-51) uložiť, na ktorých relé chce DM prijímať. NIPs (Nostr Improvement Proposals) 8408_01da2f-57> |
Prečo je to dôležité
- Súkromie – obsah správ je prístupný len dvom protistranám; operator relé nepozná plaintext ani predmet.
- Jednoduchosť – nepotrebuje sa nastavovať extra „inbox server“; stačí bežné Nostr pripojenie.
- Rozšíriteľnosť – keďže ide o bežné eventy, správy môžu obsahovať akékoľvek binárne dáta (obrázky, súbory) po ich zakódovaní.
V praxi
Klienti ako Damus, Amethyst alebo Flash už NIP-17 implementujú – po výbere príjemcu jednoducho vyplnia text, klient ho zašifruje a publikuje ako kind 4. Prijímateľ uvidí „novú správu“, dešifruje ju lokálne a odpovie rovnakým spôsobom.
Stručne: NIP-17 je základný stavebný kameň end-to-end šifrovaných DM na Nostr-e – definuje formát eventu, krypto-handshake a príjem na relé, čím dáva používateľom možnosť chatovať súkromne bez centrálneho servera.