Markus Michalski FAQ

ALTCHA Spam-Schutz

ALTCHA Spam-Schutz für Shopware 6.7: Proof-of-Work-Widget, Honeypot, Mindest-Ausfüllzeit, Gibberish- und Wegwerf-E-Mail-Prüfung sowie Rate Limiting für Registrierung, Kontakt und Newsletter

English Version

Zurück zu Shopware 6 Plugins

ALTCHA Spam-Schutz

Shopware
PHP

Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.

Live Demo: Teste dieses und weitere Plugins live — ohne Installation, ohne Risiko: demo.markus-michalski.net

Überblick

Mehrstufiger Spam-Schutz für die Shopware-6-Formulare Kundenregistrierung, Kontakt und Newsletter-Anmeldung. Ein ALTCHA-Proof-of-Work ersetzt dabei das klassische Captcha: Der Browser des Besuchers löst im Hintergrund eine kleine Rechenaufgabe, die der Shop selbst stellt und prüft. Dazu kommen Honeypot-Feld, Mindest-Ausfüllzeit, optionale Gibberish- und Wegwerf-E-Mail-Prüfung und ein IP-basiertes Rate Limiting.

Datenschutz: Alle Prüfungen laufen auf deinem eigenen Server. Das Widget wird aus dem Plugin ausgeliefert, nicht von einem CDN geladen, und IP-Adressen werden nur als HMAC-SHA256-Hash gespeichert. Der Server ruft lediglich die Wegwerf-Domain-Liste ab, ohne Besucherdaten zu übertragen. Details stehen auf der Seite Datenschutz.

Beim Aktivieren schaltet das Plugin die in Shopwares nativer Captcha-Konfiguration aktiven Captchas ab und stellt sie beim Deaktivieren wieder her.

graph TD
    A["Besucher sendet ein Formular ab"] --> B["Prüfkette im Shop"]
    B --> C{"Alle aktiven Schichten bestanden?"}
    C -->|"Ja"| D["Formular wird verarbeitet"]
    C -->|"Nein"| E["Abgelehnt, Grund steht im Shopware-Log"]

Jede Schicht lässt sich einzeln abschalten und pro Verkaufskanal konfigurieren. Die genaue Reihenfolge steht unter Technische Details.

Dokumentation

Seite Inhalt
Installation Installation über Store oder Composer, Update, Scheduled Tasks, Deinstallation
Konfiguration Alle Einstellungen, Gibberish-Erkennung, Wegwerf-E-Mail-Prüfung, Rate Limiting, Praxisbeispiele
Storefront-Integration Geschützte Formulare, Widget-Einbindung, Twig-Funktionen, Theme-Overrides, eigene Formulare
Datenschutz Gespeicherte Daten, Aufbewahrung, Logs, ausgehende Anfragen
API Challenge-Endpunkt der Storefront und Endpunkt der Domain-Ansicht im Admin
Fehlerbehebung Typische Probleme mit Symptom, Prüfung und Lösung, Einschränkungen, FAQ
Technische Details Prüfreihenfolge als Diagramm, Datenbank-Tabellen, Sicherheitskonzept, Plugin-Struktur

Features

Feature Beschreibung
ALTCHA Proof-of-Work PBKDF2-Challenge, vom Shop signiert und geprüft, mit lokal ausgeliefertem Widget
Honeypot-Feld Unsichtbares Fallenfeld, das automatisiert ausfüllende Bots verrät
Mindest-Ausfüllzeit Ein signierter Zeitstempel lehnt Absendungen ab, die schneller eintreffen, als ein Mensch tippen kann
Gibberish-Erkennung (optional) Sprachunabhängiger Score von 0 bis 100 für Name, Betreff, Nachricht und Adresse, mit reiner Protokoll-Stufe zum Einstellen
Wegwerf-E-Mail-Prüfung (optional) Lehnt Adressen bekannter Wegwerf-Anbieter ab, mit durchsuchbarer Liste und Ausnahmen pro Verkaufskanal
Rate Limiting Datenbankgestütztes Sliding-Window-Limit pro IP-Hash und Formular
Replay-Schutz Eine gelöste Challenge wird genau einmal akzeptiert
Challenge-Endpunkt-Schutz Eigenes Rate Limiting schützt den Endpunkt /altcha/challenge
Mehrere Verkaufskanäle Jede Einstellung ist pro Verkaufskanal überschreibbar

Anforderungen

Anforderung Version Hinweise
Shopware ~6.7.0 Ausschließlich Shopware 6.7
PHP >=8.2
APP_SECRET nicht leer Challenges, Formular-Token und IP-Hashes werden damit signiert

Lizenz

Kommerzielle Lizenz - Einzelinstallations-Lizenz inklusive aller Verkaufskanäle und Entwicklungs-/Staging-Umgebungen. Das mitgelieferte ALTCHA-Widget und die gebündelte ALTCHA-PHP-Bibliothek stehen unter der MIT-Lizenz, die Wegwerf-Domain-Liste unter CC0.

Support

Für Kunden, die dieses Plugin über den Shopware Store erworben haben, erfolgt der technische Support ausschließlich über das offizielle Shopware Support-Ticket-System im Shopware-Account. Für allgemeine, projektbezogene oder kommerzielle Anfragen außerhalb des Store-Frameworks: support@markus-michalski.net.