diff --git a/04.md b/04.md index 8f0b42a1..52ae59b2 100644 --- a/04.md +++ b/04.md @@ -8,11 +8,11 @@ NIP-04 暗号化されたダイレクトメッセージを指す固有のkind`4`は、次のような属性を持っています。 -**`content`**は、ユーザーが書きたい文字列のbase64エンコードを送信者の秘密鍵と受診者の公開鍵を組みあわせて作られる共有暗号で暗号化したものと等しくなければなりません (MUST)。base64エンコードされた初期化ベクトルは、"iv"という名前のクエリ文字列パラメータのようにして添付されます。ここに例を示します。`"content": "?iv="` +**`content`** は、ユーザーが書きたい文字列のbase64エンコードを送信者の秘密鍵と受診者の公開鍵を組みあわせて作られる共有暗号で暗号化したものと等しくなければなりません (MUST)。base64エンコードされた初期化ベクトルは、"iv"という名前のクエリ文字列パラメータのようにして添付されます。ここに例を示します。`"content": "?iv="` -**`tags`**にはリレーがうまく彼らにそのイベントを転送するため、メッセージの受信者を識別するエントリを次のように格納しなけばなりません (MUST)。 `["p", ""]` +**`tags`** にはリレーがうまく彼らにそのイベントを転送するため、メッセージの受信者を識別するエントリを次のように格納しなけばなりません (MUST)。 `["p", ""]` -**`tags`**には、文脈に沿った、より整理された会話ができるよう会話の中の前のメッセージや、明示的に返信しているメッセージを示すエントリを次のように含めても構いません (MAY)。`["e", ""]` +**`tags`** には、文脈に沿った、より整理された会話ができるよう会話の中の前のメッセージや、明示的に返信しているメッセージを示すエントリを次のように含めても構いません (MAY)。`["e", ""]` **メモ**: ECDH実装[libsecp256k1](https://github.com/bitcoin-core/secp256k1)のデフォルトでは、秘密は共有点 (X座標とY座標の両方) のSHA256ハッシュです。Nostrでは、共有点のX座標のみが秘密として使用され、ハッシュ化されません。libsecp256k1を使用する場合は、X座標をコピーする関数を`secp256k1_ecdh`中で`hashfp`引数として渡す必要が有ります。