Wie verhindert man, dass Mail Nachrichten mit dem alten charset=windows-1252 codiert?

Einige meiner Kollegen, die Mail verwenden, und ich selbst senden widerwillig und ohne Kenntnis dieses Fehlverhaltens Nachrichten, die mit einem Zeichensatz von Windows-1252 codiert sind:

Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
[...]
Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\))
X-Mailer: Apple Mail (2.1874)

Ich sehe das gleiche Problem bei vielen verschiedenen Mail-Versionen. Dies ist ein ernsthaftes Problem, da für einige Antispam- und Antivirenfilter Nachrichten, die mit dieser historischen Codierung codiert sind, als von SPAM-Quellen oder Viren stammend identifiziert werden.

Natürlich habe ich einen einfachen Weg gefunden, das Format auszuwählen, das zum Kodieren einer Nachricht verwendet wird. Diese Funktion ist jedoch nicht für Personen geeignet, die mit Zehnteln oder Hunderten von Nachrichten zu tun haben.


Wie ist es möglich, das Senden von Nachrichten mit diesem historischen und Malware-symptomatischen Format zu vermeiden? Wie ist es möglich, das für alle gesendeten Nachrichten verwendete Format eindeutig und einfach auszuwählen?

→ Tom: Wie hoch ist das Verhältnis von Spam und Viren, das Sie relativ zu legitimen E-Mails erhalten, wenn Sie nur mit Windows-1252 verschlüsselte Nachrichten betrachten?
Fast mein gesamter Spam ist arabischer und anderer nicht-lateinischer Müll in UTF-8. Aber mein Punkt ist folgender: Jeder, der einen Spam-Filter betreibt, der Win-1252-Nachrichten ablehnt, wird am Ende eine große Anzahl legitimer Nachrichten ablehnen, die von den Windows-Standardeinstellungen generiert werden, daher kann ich mir nicht vorstellen, dass ein Filter auf diese Weise ausgeführt wird. Stattdessen würde es andere Kriterien verwenden und die Codierung ignorieren.
Als typisches Beispiel haben bei einem Satz von > 20.000 E-Mails nur 4 % eine Kopfzeile mit charset=windows-1252, und davon sind 74 % reines SPAM oder Malware, und 26 % stammen von Mail auf ≠ Versionen von MacOS X.
Danke, Daniel. Es scheint, dass ich bezüglich des Verhaltens von Windows sehr hinter der Zeit zurückgeblieben bin. Es wurde eine Referenz gefunden, die darauf hinweist, dass der E-Mail-Standard noch vor 5 Jahren ios-8859-1 anstelle von win-1252 war. Ich wäre an der Technik interessiert, mit der Sie die Zeichensatz-Header analysiert haben, und würde sie gerne in meiner E-Mail ausprobieren.
→ Tom: mit Mail, Preferences > Rules > Add Rule, einen neuen Header zur Umfrage erstellen Edit Header List…und mit eingeben Content-Type. Definieren Sie dann Ihre Regel als Content-Type ContainsWindows-1252. Um sie einfach zu zählen, wählen Sie eine Aktion Move Messagein einem temporären Postfach aus.

Antworten (2)

Soweit ich weiß, besteht die einzige Möglichkeit, die Codierung zu garantieren, darin, sicherzustellen, dass jede Nachricht ein Unicode-Dingbat enthält (z. B. in der Sig). Dadurch wird sichergestellt, dass die Nachricht als UTF-8 ausgegeben wird. Dingbats liegen im Unicode 2700-Bereich, zB ✈ . Sie müssen dies aus dem Zeichen-Viewer hinzufügen, nicht indem Sie einfach zu einer "Dingbat"-Schriftart wechseln, die möglicherweise nicht Unicode ist.

Das Deaktivieren von intelligenten Anführungszeichen und Bindestrichen scheint dieses Problem zu beheben. Wählen Sie beim Verfassen einer Nachricht Bearbeiten -> Ersetzungen -> Intelligente Anführungszeichen (und Intelligente Bindestriche).

Durch das Deaktivieren dieser beiden Funktionen wird eine Menge unkontrollierter Codierung mit entfernt windows-1252, aber nicht alle. Zum Beispiel eine Nachricht, die nur Folgendes enthält: (=⌥⇧]).