NIP-17: プライベートダイレクトメッセージ
NIP-17は送信者のプライバシーのためにNIP-59のgift wrappingを使用したプライベートダイレクトメッセージを定義します。送信者が公開されるNIP-04 DMとは異なり、NIP-17メッセージは誰がメッセージを送信したかを隠します。受信者は外側のgift wrapで見えます。
仕組み
メッセージは複数の暗号化層でラップされます:
- 実際のメッセージコンテンツ(kind 14)
- コンテンツを受信者に暗号化するseal
- 送信者のアイデンティティを隠すgift wrap
外側のgift wrapはランダムな使い捨てキーペアを使用するため、リレーや観察者は誰がメッセージを送信したかを判断できません。
メッセージ構造
- Kind 14 - 実際のDMコンテンツ(sealの内部)
- コンテンツにNIP-44暗号化を使用
- DM会話内のリアクション(kind 7)をサポート
プライバシー保証
- リレーは送信者を見ることができない(gift wrapの使い捨てキーペアで隠される)
- 受信者は見える(gift wrapの
pタグ内) - メッセージのタイムスタンプはウィンドウ内でランダム化される
- リレー上で可視のスレッディングや会話グループ化がない
NIP-04との比較
NIP-04 DMはコンテンツを暗号化しますがメタデータは公開されたまま:
- 送信者pubkeyは公開
- 受信者pubkeyは
pタグ内 - タイムスタンプは正確
NIP-17はより複雑な実装を犠牲にして送信者を隠します。
主要ソース:
言及箇所:
関連項目: