You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+74-10Lines changed: 74 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,31 +5,57 @@ Das [REDAXO](http://www.redaxo.org)-Addon sorgt dafür, dass alle E-Mailadressen
5
5
6
6
## Funktionsweise
7
7
8
-
Durch die Integration des email_obfuscator Addons von RexDude stehen verschiedene Verschleierungsmethoden für E-Mailadressen zur Verfügung:
8
+
Durch die Integration des email_obfuscator Addons stehen verschiedene Verschleierungsmethoden für E-Mailadressen zur Verfügung:
9
9
10
-
1.__ROT13 Einhorn-Markup__: Diese Methode findet alle E-Mailadressen und ersetzt deren `@` durch spezielles Einhorn-Markup: `<span class="unicorn"><span>_at_</span></span>`. Dadurch kann die E-Mailadresse nicht mehr so einfach von Bots ausgelesen werden und sollte ziemlich gut vor Spam geschützt sein. Weiterhin werden auch alle mailto-Links erkannt und verschlüsselt.
11
-
Beim Aufruf der Seite werden alle geschützten E-Mailadressen und mailto-Links mittels __JavaScript__ wieder entschlüsselt und in die ursprüngliche Form gebracht. __CSS-Styles__ sorgen dafür, dass die geschützten E-Mailadressen auf der Website richtig angezeigt werden, also mit `@` statt Einhorn. Damit fällt der Wechsel von verschlüsselt nach unverschlüsselt nicht auf, und auch in Umgebungen ohne JavaScript wird eine verschlüsselte Adresse richtig dargestellt.
12
-
__Bitte beachten__: Diese Methode benötigt für die Einhorn-Markup Methode __jQuery__ für die JavaScript-Funktionalität!
10
+
### Sichere Methoden (empfohlen)
13
11
14
-
2.__ROT13 JavaScript Verschlüsselung__: Um die Email-Adressen zu schützen, wird die E-Mailadresse durch ein JavaScript ersetzt, das die E-Mailadresse ins Dokument schreibt. Zur Verschleierung wird die Technik "ROT13 Encryption" angewendet.
12
+
1.__XOR Verschlüsselung (Standard)__: Diese moderne Methode verwendet XOR-Verschlüsselung mit einem festen Schlüssel, um E-Mailadressen sicher zu verschleiern. Die verschlüsselten Daten werden in `data-*` Attributen gespeichert und automatisch per JavaScript entschlüsselt. Diese Methode ist exponentiell sicherer als die veralteten ROT13-Verfahren und bietet zuverlässigen Schutz vor Spam-Bots.
13
+
__Vorteile__: Starke Verschlüsselung, kein jQuery erforderlich, unterstützt mailto-Parameter wie `?subject=Betreff&body=Nachricht`
14
+
15
+
2.__XOR Verschlüsselung mit dynamischem Schlüssel__: Diese besonders sichere Variante generiert für jede Seite/jeden Artikel einen anderen Verschlüsselungsschlüssel basierend auf der Artikel-ID. Dadurch wird die gleiche E-Mailadresse auf verschiedenen Seiten unterschiedlich verschlüsselt, was die Sicherheit maximiert.
16
+
__Vorteile__: Höchste Sicherheitsstufe, kontextabhängige Verschlüsselung, kein jQuery erforderlich, unterstützt mailto-Parameter
17
+
18
+
### Veraltete Methoden (unsicher, nicht empfohlen)
19
+
20
+
3.__ROT13 Einhorn-Markup__ ⚠️ __Veraltet, unsicher__: Diese Methode findet alle E-Mailadressen und ersetzt deren `@` durch spezielles Einhorn-Markup: `<span class="unicorn"><span>_at_</span></span>`. ROT13 ist ein einfacher Caesar-Cipher, der von modernen Tools leicht geknackt werden kann.
21
+
__Bitte beachten__: Diese Methode benötigt __jQuery__ für die JavaScript-Funktionalität! jQuery wird seit Version 2.0 des Addons nicht mehr benötigt.
22
+
23
+
4.__ROT13 JavaScript Verschlüsselung__ ⚠️ __Veraltet, unsicher__: Diese Methode ersetzt E-Mailadressen durch JavaScript-Code mit ROT13-Verschlüsselung. ROT13 bietet keinen ausreichenden Schutz mehr gegen moderne Spam-Bots.
15
24
__Bitte beachten__: Diese Methode macht alle E-Mailadresse ohne klickbaren Link klickbar!
16
25
17
-
3.__CSS Methode ohne JavaScript__: Um die Email-Adressen zu schützen, wird die Technik "CSS display:none" angewendet.
26
+
5.__CSS Methode ohne JavaScript__: Diese Methode verwendet "CSS display:none" zur Verschleierung und funktioniert ohne JavaScript.
18
27
__Bitte beachten__: diese Methode entfernt den mailto-Link und verwandelt Adresse in name[at]domain.tld. Die Adresse ist damit nicht mehr klickbar.
19
28
20
-
4.__ROT13 JavaScript Verschlüsselung mit CSS Methode__: Um die Email-Adressen zu schützen, werden die Techniken "CSS display:none" und "ROT13 Encryption" angewendet. Die CSS Methode kommt im `<noscript>` Tag zum Einsatz, falls JavaScript im Browser des Besuchers deaktiviert ist.
29
+
6.__ROT13 JavaScript Verschlüsselung mit CSS Methode__ ⚠️ __Veraltet, unsicher__: Kombiniert ROT13-Verschlüsselung mit CSS-Fallback für deaktiviertes JavaScript.
21
30
__Bitte beachten__: Diese Methode macht alle E-Mailadresse ohne klickbaren Link klickbar!
22
31
__Bitte beachten__: diese Methode entfernt bei deaktiviertem JavaScript den mailto-Link und verwandelt Adresse in name[at]domain.tld. Die Adresse ist damit nicht mehr klickbar.
23
32
33
+
### Unterstützung für mailto-Parameter
34
+
35
+
Alle Verschlüsselungsmethoden unterstützen jetzt vollständig mailto-Links mit Parametern:
Die Parameter bleiben nach der Entschlüsselung vollständig erhalten und funktionsfähig.
41
+
24
42
## Installation
25
43
26
-
Das Addon ist nach Aktivierung gleich funktionsfähig, und du brauchst keine weiteren Einstellungen vorzunehmen. Die benötigten Styles und Scripte werden automatisch geladen.
44
+
Das Addon ist nach Aktivierung gleich funktionsfähig und verwendet standardmäßig die sichere __XOR Verschlüsselung__. Du brauchst keine weiteren Einstellungen vorzunehmen. Die benötigten Styles und Scripte werden automatisch geladen.
45
+
46
+
⚠️ __Wichtiger Sicherheitshinweis__: Falls du eine ältere Installation aktualisierst, die noch die veralteten ROT13-Methoden verwendet, solltest du in der Konfiguration auf eine der neuen XOR-Methoden wechseln, um die Sicherheit deiner E-Mailadressen zu gewährleisten.
27
47
28
48
Solltest du das benötigte CSS oder JavaScript manuell einbinden wollen, musst du in der Konfiguration das automatische Laden deaktivieren.
29
49
50
+
### Keine jQuery-Abhängigkeit mehr
51
+
52
+
Ab Version 2.0 des Addons wird __kein jQuery mehr benötigt__. Das JavaScript verwendet moderne Vanilla-DOM-APIs und ist mit allen aktuellen Browsern kompatibel. Bestehende Installationen funktionieren weiterhin ohne Änderungen.
53
+
30
54
31
55
32
-
### Hinweise zur __ROT13 Einhorn-Markup__ Methode: CSS und JavaScript manuell einbinden
56
+
### Hinweise zur manuellen Einbindung: CSS und JavaScript
57
+
58
+
⚠️ __Wichtig__: Die folgenden Hinweise gelten nur für die veraltete __ROT13 Einhorn-Markup__ Methode. Die modernen XOR-Methoden benötigen kein jQuery und funktionieren mit dem Standard-JavaScript des Addons.
33
59
34
60
Du kannst die Styles und Scripte auf zwei Arten einbinden: Entweder du lädst die Files, die das Addon bereitstellt, oder du kopierst deren Inhalte in deine bestehenden CSS- und JavaScript-Files.
35
61
@@ -70,6 +96,27 @@ Kopiere die Inhalte der CSS-Datei und der JS-Datei jeweils in deine Sourcen:
70
96
Bei Variante a) oben ist dies nicht notwendig.
71
97
72
98
99
+
## Sicherheit und Migration
100
+
101
+
### Warum XOR statt ROT13?
102
+
103
+
Die neuen XOR-Verschlüsselungsmethoden bieten exponentiell bessere Sicherheit als die veralteten ROT13-Verfahren:
104
+
105
+
-__ROT13__ ist ein einfacher Caesar-Cipher, der von modernen Tools und Spam-Bots leicht automatisch geknackt werden kann
106
+
-__XOR-Verschlüsselung__ mit Base64-URL-Safe-Kodierung ist deutlich komplexer und widerstandsfähiger gegen automatisierte Angriffe
107
+
-__Dynamische Schlüssel__ (XOR dynamic) machen die Entschlüsselung ohne Kontext praktisch unmöglich
108
+
109
+
### Migration von alten Methoden
110
+
111
+
Wenn du eine bestehende Installation verwendest:
112
+
113
+
1. Gehe zur Email-Verschlüsselung Konfigurationsseite im REDAXO Backend
114
+
2. Wähle __"XOR Verschlüsselung (Sicher, empfohlen)"__ für Standardsicherheit
115
+
3. Oder wähle __"XOR Verschlüsselung mit dynamischem Schlüssel (Sehr sicher, empfohlen)"__ für maximale Sicherheit
116
+
4. Speichere die Konfiguration
117
+
118
+
Keine Code-Änderungen, Template-Updates oder jQuery-Installation erforderlich. Alle bestehenden mailto-Links mit Parametern funktionieren sofort korrekt.
@@ -86,4 +133,21 @@ Bei Variante a) oben ist dies nicht notwendig.
86
133
87
134
Das Addon filtert _alle_ E-Mailadressen im Code anhand eines Musters und verschlüsselt diese. In manchen Situationen ist das nicht unbedingt gewollt, z. B. wenn E-Mailadressen als HTML-Attribute oder in Formularen verwendet werden. Dort werden vom System natürlich die reinen, unverschlüsselten Adressen erwartet, und leider kann das Addon solche Umgebungen nicht eigenständig erkennen.
88
135
89
-
⚠️ Beachte bitte, dass du in manchen Umgebungen die E-Mailverschlüsselung unterbinden solltest, entweder durch Ausschließen bestimmter Templates oder Artikel in der Konfiguration, oder aber durch ein manuelles Whitelisting von Adressen wie im Abschnitt oben beschrieben.
136
+
⚠️ Beachte bitte, dass du in manchen Umgebungen die E-Mailverschlüsselung unterbinden solltest, entweder durch Ausschließen bestimmter Templates oder Artikel in der Konfiguration, oder aber durch ein manuelles Whitelisting von Adressen wie im Abschnitt oben beschrieben.
137
+
138
+
### Unterstützung für komplexe mailto-Parameter
139
+
140
+
Das Addon unterstützt jetzt vollständig komplexe mailto-Links mit allen gängigen Parametern:
0 commit comments