NIP-59 : Gift Wrap
NIP-59 définit le gift wrap, un moyen d’encapsuler un événement afin que les relays et les observateurs extérieurs ne puissent pas identifier le véritable expéditeur à partir de l’événement externe qu’ils reçoivent.
Structure
Un événement gift-wrapped comporte trois couches :
- Rumeur : l’événement cible sans signature.
- Sceau (kind
13) : la rumeur chiffrée pour le destinataire et signée par le véritable expéditeur. - Gift Wrap (kind
1059) : le sceau chiffré à nouveau et signé par une clé aléatoire à usage unique.
Le sceau doit avoir des tags vides. Le gift wrap externe porte généralement le tag p du destinataire pour que les relays puissent l’acheminer.
Ce qu’il dissimule
Le gift wrap dissimule l’expéditeur aux relays et aux observateurs réseau car l’événement externe est signé par une clé jetable. Le destinataire, cependant, peut toujours déchiffrer le sceau interne et identifier quelle clé permanente l’a signé. Le gain en confidentialité est donc la protection des métadonnées sur la couche de transport, pas l’anonymat vis-à-vis du destinataire.
La spécification recommande aussi de randomiser les horodatages du wrapper et, lorsque c’est possible, d’utiliser des relays qui exigent une authentification et ne servent les événements encapsulés qu’au destinataire prévu. Sans ces comportements de relay, les métadonnées du destinataire peuvent quand même fuiter.
Notes opérationnelles
Le gift wrap n’est pas un protocole de messagerie en soi. D’autres protocoles, comme les systèmes de messagerie privée, l’utilisent comme brique de base.
Les relays peuvent choisir de ne pas stocker les événements encapsulés longtemps car ils ne sont pas utiles publiquement. La spécification permet aussi la preuve de travail sur le wrapper externe lorsque les implémentations souhaitent une résistance supplémentaire au spam.
Cas d’utilisation
- Messages directs privés (NIP-17)
- Notes réservées aux amis (proposition NIP-FR)
- Charges utiles de notifications push (proposition NIP-9a)
- Tout scénario nécessitant la confidentialité de l’expéditeur vis-à-vis du réseau
Sources principales :
Mentionné dans :
- Newsletter #8 : Plongée approfondie NIP
- Newsletter #1 : Actualités
- Newsletter #1 : Mises à jour NIP
- Newsletter #3 : Récapitulatif de décembre
- Newsletter #15 : PRs ouverts
Voir aussi :