電子メール アドレスに `=?iso8859-1?B?`...`?=` が表示されると何が起こりますか?

電子メール アドレスに `=?iso8859-1?B?`...`?=` が表示されると何が起こりますか?

=?iso8859-1?B?電子メール アドレスに...のようなものが使われています?=。これは RFC で定義されていると思います。どこで定義されているか説明できる人はいますか? すべてが Unicode になった今、これは時代遅れになっているのでしょうか?

答え1

これは、8 ビット データを 7 ビット ASCII に適合させるために MIME 形式の電子メール メッセージ (基本的にすべて) で使用される RFC 2047「エンコードされた単語」形式です。HTTP GET やクエリ文字列とは関係ありません。

Encoded-word はヘッダーに対して、Content-Transfer-Encoding はメッセージ本文に対して適用されます。どちらも Base64 または Quoted-Printable 形式を使用して 8 ビット データを 7 ビット ASCII データに変換し、どちらもメッセージ内で通常使用されます。

ただし、通常、このようなエンコードされたテキストはメール アプリで表示されません (メッセージ ソースを表示する場合を除く)。UI では常にデコードされた状態で表示されます。メール アプリに生のエンコードされた単語が表示される場合、正しくデコードできなかった可能性が高いです (例: 送信者が間違った文字セットを指定した場合)。

この形式は Unicode によって廃止されたわけではなく、異なるタスクを実行し、すべての文字セットに等しく適用できます。実際、Unicode テキストが としてエンコードされるのを頻繁に目にするでしょう=?utf-8?...

しかし、それは5月SMTP の「8BITMIME」拡張機能によって廃止されます。多くの電子メール機能と同様に、これは一部のネットワークが「8 ビット クリーン」ではなく、上位ビットの値を破棄したり、変更したりする可能性があった時代のものです。これは、TCP/IP 上で実行される最新の SMTP ソフトウェアでは当てはまりません。

答え2

おそらく、これはプラグインの設定が誤っているか、プラグインの記述が不適切であるソフトウェアから生成された電子メールです。「=」と「?」は、GET パラメータがどこかの関数に渡されている (そして誤って解釈/配置されている) ことを示していると考えられます。

例えば以下を参照:(https://magento.stackexchange.com/questions/37663/plugin-email-sender-incorrectly-uses-iso-8859-1) では、OP がバグに基づく同様の改変を引用しています。

出典: =?iso-8859-1?Q? (...) =[メールアドレス]

関連情報