1. Verantwortlicher
Jilence, Jonas Kelm, c/o autorenglück.de, Franz-Mehring-Str. 15, 01237 Dresden,
Deutschland.
E-Mail: [email protected]. Weitere Pflichtangaben
stehen im Impressum.
2. Was JilChat ist
JilChat ist ein Client für den Twitch-Chat. Der Chat selbst kommt von Twitch und geht an Twitch — JilChat ist dabei die Anzeige, nicht die Quelle. Wir betreiben zusätzlich einen eigenen Dienst für Push-Benachrichtigungen, Direktnachrichten, Uploads und das Abo JilChat Pro. Nur um diese eigenen Funktionen geht es in den folgenden Abschnitten.
3. Konto und Identität
Die Anmeldung läuft ausschließlich über Twitch OAuth. Ein eigenes Passwort gibt es nicht. Von Twitch erhalten und speichern wir:
- Twitch-User-ID
- Login-Name und Anzeigename
- URL deines Twitch-Profilbilds
Dazu legen wir eine eigene JilChat-Konto-UUID an und stellen ein JWT als Sitzungsnachweis aus. Beides dient allein dazu, deine Einstellungen dem richtigen Konto zuzuordnen.
Zugriffstoken und Sitzungstoken liegen nur auf deinem Gerät: auf Android in verschlüsselten Preferences (abgesichert über den Android Keystore), auf iOS im Schlüsselbund mit gerätegebundener Schutzklasse. In dieser Form werden sie nicht in Backups übernommen und nicht auf ein anderes Gerät übertragen.
4. Twitch-Chat
Chat-Nachrichten werden live von Twitch empfangen und an Twitch gesendet. JilChat führt kein dauerhaftes eigenes Archiv des Twitch-Chats. Was im Chat steht, unterliegt den Regeln und der Datenschutzerklärung von Twitch — siehe Abschnitt 11.
5. Push-Benachrichtigungen (nur mit JilChat Pro)
Wenn du Push-Benachrichtigungen einrichtest, speichern wir auf dem Server:
- dein Gerätetoken — FCM auf Android, APNs auf iOS
- die Kanäle, die du dafür abonniert hast
- deine Highlight-Wörter
- die Einstellung, ob bei Erwähnungen und/oder bei Highlight-Wörtern benachrichtigt wird
Abonnierte Kanäle und Highlight-Wörter liegen im Klartext auf unserem Server. Das ist der datenschutzrechtlich empfindlichste Punkt dieser Erklärung, und wir nennen ihn deshalb ausdrücklich: Damit der Dienst eine eintreffende Chat-Nachricht mit deinen Wörtern abgleichen kann, muss er die Wörter lesen können. Eine verschlüsselte Ablage würde das serverseitige Abgleichen unmöglich machen. Wer Highlight-Wörter wählt, die Rückschlüsse auf die eigene Person zulassen, sollte das wissen. Deine Wörter kannst du jederzeit in den Einstellungen ändern oder löschen; die Push-Funktion lässt sich vollständig abschalten.
Zur Erkennung verarbeitet unser Dienst Nachrichten der von Nutzenden ausgewählten Kanäle kurzzeitig im Arbeitsspeicher. Nachrichten, die nicht passen, werden nicht gespeichert.
6. Direktnachrichten
Direktnachrichten sind Ende-zu-Ende verschlüsselt. Verwendet wird HPKE mit DHKEM(P-256, HKDF-SHA256), HKDF-SHA256 und AES-256-GCM. Unser Server sieht ausschließlich Chiffretext und kann ihn nicht entschlüsseln — er hat den passenden Schlüssel nicht.
Auf dem Server liegen pro Gerät nur:
- eine zufällige Geräte-ID
- der zugehörige öffentliche Schlüssel. Der private Schlüssel wird auf dem Gerät erzeugt und wird niemals an uns übertragen.
Zur Genauigkeit gehört ein Detail: Damit die Benachrichtigungs-Erweiterung eine eintreffende Nachricht auch bei gesperrtem Bildschirm entschlüsseln kann, ist der private Schlüssel auf iOS mit einer Schutzklasse abgelegt, die ihn in ein verschlüsseltes Gerätebackup einschließt. Aus einem solchen Backup kann er auf ein neues Gerät zurückgespielt werden. Mit der iCloud synchronisiert wird er nicht, und an unsere Server geht er auf keinem Weg.
Das Serverpostfach ist reiner Zwischenspeicher: Sobald dein Gerät eine Nachricht abgeholt und quittiert hat, wird sie sofort vom Server gelöscht. Nachrichten, die nie abgeholt werden — etwa weil ein Gerät nicht mehr benutzt wird — werden spätestens nach 30 Tagen automatisch entfernt. Das Postfach lässt sich in den Einstellungen jederzeit von Hand leeren.
Der Nachrichtenverlauf liegt ausschließlich lokal auf deinem Gerät. Wir führen keine Kopie davon.
7. Hochgeladene Inhalte
Bilder und Sprachnachrichten, die du im Chat teilst, werden auf JilChat-Infrastruktur (Cloudflare R2) abgelegt und über einen Kurzlink geteilt. Gespeichert werden die Datei selbst, technische Metadaten und der Link.
Wer den Link hat, sieht den Inhalt — die Links sind nicht durch eine Anmeldung geschützt, weil sie im Twitch-Chat für alle Mitlesenden funktionieren müssen. Teil sie entsprechend bewusst.
- Bilder laufen automatisch nach 7 Tagen ab.
- Sprachnachrichten laufen automatisch nach 3 Tagen ab.
Abgelaufene Dateien werden durch einen stündlichen Aufräumlauf endgültig gelöscht. Früher löschen kannst du eine eigene Sprachnachricht direkt in der App; für Bilder genügt eine Mail an [email protected] mit dem Link. Bei der Löschung des Kontos werden alle noch vorhandenen Uploads mit entfernt.
Auf das Mikrofon greift die App ausschließlich zu, während du eine Sprachnachricht aufnimmst. Es gibt keine Aufnahme im Hintergrund.
8. Käufe (JilChat Pro)
Der Kauf selbst läuft vollständig über den jeweiligen Store. Zahlungsdaten sehen wir nicht — weder Kartennummern noch Rechnungsadressen. Die kennt allein Google beziehungsweise Apple.
- Google Play: Wir verarbeiten den Kauf-Token und eine pseudonyme Konto-ID
(
obfuscatedAccountId) und prüfen den Kauf über die Google Play Developer API. - App Store: Wir verarbeiten die Transaktionskennung aus StoreKit und prüfen sie über Apples App Store Server API.
Daraus leiten und speichern wir ab: den Abo-Status, die Zahl bezahlter Perioden und die daraus verdienten Milestone-Badges.
9. Feedback
Schickst du Feedback aus der App, speichern wir deine Nachricht, deinen Twitch-Login, die App- und Build-Version, die Betriebssystemversion und die Geräteklasse. Ein Diagnosebericht wird nur angehängt, wenn du den entsprechenden Schalter ausdrücklich aktivierst.
10. Diagnose und Tracking
- Firebase Crashlytics für Absturzberichte.
- Firebase Cloud Messaging für die Zustellung von Push-Nachrichten.
- Apple MetricKit-Performanceberichte — nur mit deiner ausdrücklichen Einwilligung, siehe unten.
Performanceberichte (freiwillig, standardmäßig aus). Stimmst du zu, übermittelt die iOS-App höchstens einmal täglich einen technischen Bericht, den das Betriebssystem selbst auf deinem Gerät erstellt (Apple MetricKit). Er enthält Messwerte zur Darstellung und Ausführung: Bildrate beim Scrollen, CPU-Zeit, Startdauer, Speicherverbrauch, dazu Gerätemodell, iOS-Version sowie App- und Build-Version.
Der Bericht enthält keine Chat-Inhalte, keine Nachrichten, keinen Namen, kein Twitch-Konto und keine Kennung, die dich identifiziert. Er dient ausschließlich dazu, Ruckler und Leistungsprobleme auf Geräten zu finden, die wir selbst nicht testen können. Du kannst die Übermittlung jederzeit in den App-Einstellungen unter „Feedback“ abschalten; wir fragen die Einwilligung einmal beim ersten Start ab, und ohne aktive Zustimmung bleibt der Bericht auf dem Gerät.
Darüber hinaus: kein Analytics-SDK, kein Werbe-Tracking, keine Werbe-IDs, keine Weitergabe von Daten zu Werbezwecken und kein appübergreifendes Tracking. Die Performanceberichte stammen vom Betriebssystem, nicht von einem eingebundenen Analysedienst.
11. Drittanbieter, die beim Chatten kontaktiert werden
Für Emotes, Badges und Cosmetics ruft die App je nach aktivierten Funktionen direkt bei diesen Anbietern ab. Dabei wird technisch deine IP-Adresse übertragen; es gelten deren eigene Datenschutzerklärungen:
- Twitch — Datenschutzerklärung
- 7TV — Datenschutzerklärung
- BetterTTV — Datenschutzerklärung
- FrankerFaceZ — Datenschutzerklärung
- Chatterino-Badges — Badge-Listen der Chatterino-Community
- ffz:ap — Zusatzbadges für FrankerFaceZ
Dazu kommen als Auftragsverarbeiter: Google (Firebase Cloud Messaging, Crashlytics, Google Play Developer API), Apple (APNs, App Store Server API), Cloudflare (R2-Speicher) sowie der Hoster von API und Webseite.
12. Rechtsgrundlagen
- Art. 6 Abs. 1 lit. b DSGVO (Vertrag): Konto, Anmeldung, Bereitstellung der App-Funktionen, Abwicklung von JilChat Pro, Direktnachrichten, Uploads.
- Art. 6 Abs. 1 lit. a DSGVO (Einwilligung): Push-Benachrichtigungen samt Kanälen und Highlight-Wörtern, Mikrofonzugriff, das Anhängen von Diagnoseberichten an Feedback, die Übermittlung von Performanceberichten (Apple MetricKit). Eine Einwilligung ist jederzeit für die Zukunft widerrufbar — in der Regel durch Abschalten der Funktion in den Einstellungen.
- Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse): sicherer und stabiler Betrieb, Missbrauchsabwehr, Absturzdiagnose, Bearbeitung von Löschanträgen über die Webseite.
13. Speicherdauer
- Konto- und Einstellungsdaten: bis zur Löschung des Kontos.
- Push-Token, Kanäle, Highlight-Wörter: bis du die Funktion abschaltest oder das Konto löschst.
- Direktnachrichten im Serverpostfach: bis zur Quittung durch dein Gerät, längstens 30 Tage.
- Bilder: 7 Tage. Sprachnachrichten: 3 Tage.
- Abo-Daten: bis zur Löschung des Kontos.
- Feedback: bis zur Erledigung, spätestens bis zur Löschung des Kontos.
- Performanceberichte: 90 Tage, danach automatisch gelöscht. Sie werden getrennt vom Feedback und ohne Bezug zu deinem Konto gespeichert.
- Löschanträge über die Webseite: bis zu 6 Monate nach Abschluss, dann automatisch gelöscht.
- Technische Serverlogs: nur so lange, wie es für einen sicheren Betrieb erforderlich ist.
14. Übermittlung in Drittländer
Google (Firebase Cloud Messaging, Crashlytics, Google Play), Apple (APNs, App Store), Cloudflare und Twitch sind US-Anbieter beziehungsweise verarbeiten Daten auch außerhalb der EU. Die Übermittlung stützt sich auf die Standardvertragsklauseln der EU-Kommission nach Art. 46 Abs. 2 lit. c DSGVO und, soweit einschlägig, auf den Angemessenheitsbeschluss zum EU-US Data Privacy Framework nach Art. 45 DSGVO. Trotz dieser Garantien lässt sich ein Zugriff durch dortige Behörden nicht in jedem Fall ausschließen.
15. Deine Rechte
Dir stehen, soweit die gesetzlichen Voraussetzungen vorliegen, zu:
- Auskunft über die zu dir gespeicherten Daten (Art. 15 DSGVO)
- Berichtigung unrichtiger Daten (Art. 16 DSGVO)
- Löschung (Art. 17 DSGVO)
- Einschränkung der Verarbeitung (Art. 18 DSGVO)
- Datenübertragbarkeit (Art. 20 DSGVO)
- Widerspruch gegen Verarbeitungen auf Grundlage berechtigter Interessen (Art. 21 DSGVO)
- Widerruf erteilter Einwilligungen mit Wirkung für die Zukunft (Art. 7 Abs. 3 DSGVO)
Wende dich dafür an [email protected]. Unabhängig davon steht dir ein Beschwerderecht bei einer Aufsichtsbehörde zu (Art. 77 DSGVO), etwa beim Sächsischen Datenschutzbeauftragten oder der Behörde an deinem Wohnsitz.
16. Konto und Daten löschen
In der App: Einstellungen → Konto löschen. Ohne installierte App führt der Weg über jil.chat/de-DE/delete-account. Dort steht auch im Einzelnen, was gelöscht wird, was bleibt und wie lange es dauert.
Gelöscht wird das JilChat-Konto — dein Twitch-Konto und ein laufendes Store-Abo bleiben davon unberührt.
17. Webseite jil.chat
Beim Aufruf der Webseite fallen technisch notwendige Serverlogs an, insbesondere IP-Adresse, Zeitpunkt und angeforderte Ressource. Die öffentliche Webseite setzt keine Analyse- oder Werbe-Cookies und keine Cookie-Wall. Der nicht öffentliche Administrationsbereich verwendet ein technisch notwendiges Sitzungscookie.
Im Formular auf der Löschseite verarbeiten wir den angegebenen Twitch-Namen, deine Kontaktadresse und eine optionale Nachricht. Zur Abwehr massenhafter Anträge speichern wir zusätzlich einen Hashwert deiner IP-Adresse — nicht die Adresse selbst —, der mit der Bearbeitung des Antrags wieder entfällt.
18. Änderungen dieser Erklärung
Wir passen diese Erklärung an, wenn sich Funktionen, Dienstleister oder rechtliche Anforderungen ändern. Maßgeblich ist die jeweils hier veröffentlichte Fassung; das Datum oben kennzeichnet sie.