Zum Hauptinhalt springen

Sicherheits-Posture

Für Vertrauen gebaut, nicht für Show

Wir sind keine Sicherheitsfirma, aber ConKarma hält Daten — Kinder, Partner, tägliche Rituale — die ehrliche Antworten zu unserem Schutz erfordern. Diese Seite ist die ungeschönte Version.

Zuletzt überprüft:

Wie die Anmeldung funktioniert

Wir behandeln dein Passwort als Geheimnis, das wir nie im Klartext sehen, speichern den stärksten Hash den die Spezifikation hergibt, und rotieren Refresh-Tokens, damit ein gestohlenes Cookie die Session, aus der es kam, nicht überlebt.

  • Passwörter werden mit argon2id (RFC 9106 m=19 MiB Profil) gehasht. Ältere bcrypt-Hashes werden bei der nächsten Anmeldung transparent aktualisiert — keine erzwungenen Passwort-Resets.
  • Sessions verwenden rotierende Refresh-Token-Familien. Wird ein gestohlenes Token wiedergegeben, invalidiert die ganze Familie und das legitime Gerät muss sich neu authentifizieren — keine stille Kompromittierung.
  • Konfigurierbare Account-Sperre nach wiederholten Fehlversuchen. Wird automatisch beim ersten korrekten Login aufgehoben, sodass ein Tippfehler dich nicht aussperrt.
  • Anmelden mit Apple und Anmelden mit Google nutzen direktes OpenID Connect — goia_api verbindet sich selbst mit Apple und Google, ohne einen Drittanbieter als Auth-Vermittler dazwischen. Wir erhalten nur die Kennung des vorgelagerten Anbieters, Ihre E-Mail-Adresse und das Bestätigungs-Flag — niemals Ihr Anbieter-Passwort.

Anmeldesicherheit

Jede Anmeldung läuft durch einen zweiten Faktor. Jede Anmeldung von einem neuen Gerät meldet sich bei dir. Eltern bleiben für Unter-18-Jährige im Bild, ohne dass dabei sonst etwas durchsickert.

  • Zwei-Faktor-Authentifizierung bei jeder Anmeldung: 6-stelliger Code per E-Mail, 30-Tage-Fenster für vertrauenswürdige Geräte, damit Wiederholungen am selben Gerät nicht erneut abfragen.
  • E-Mail-Echtzeitwarnung, wenn auf dein Konto von einem neuen Gerät zugegriffen wird: Gerätetyp, ungefähre Stadt + Land, Zeitstempel. Ein Tippen sperrt das Gerät und erzwingt einen Passwort-Reset.
  • Anmeldungen von Unter-18-Jährigen von neuen Geräten warnen auch Eltern-Mitglieder ihrer Zelle. Transparent: Minderjährige sehen in den Einstellungen, welche Eltern verdrahtet sind.
  • Backup-Codes: 8 Einmal-Codes bei der ersten Einrichtung, aus Einstellungen → Sicherheit erreichbar, bei Bedarf neu generierbar. Wiederherstellungsweg, wenn der E-Mail-Zugang verloren geht.
  • Passwort-Speicher: argon2id, der Industrie-Standard-Speicher-harte Hash. Vertrauenswürdige-Gerät-Tokens sind getrennt von Session-Tokens.
  • Limitierte Verifikation: 5 fehlgeschlagene Codes lösen 15 Minuten Sperre aus.

Wenn etwas seltsam aussieht

Wenn eine Anmeldung aus einem Land kommt, das wir auf deinem Konto in den letzten 30 Tagen nicht gesehen haben, schreiben wir dir. Die E-Mail hat einen Ein-Klick 'War ich nicht', der die Session widerruft und dich direkt zur Passwort-Zurücksetzung führt.

  • Unknown-Location-E-Mail-Alerts (einer pro Land pro 30-Tage-Fenster — eine Reise spammt dich nicht).
  • Liste aktiver Sessions mit Pro-Gerät-Widerruf aus der App. Du kannst ein verlorenes Telefon abmelden, ohne das Passwort zu ändern.
  • Detail fehlgeschlagener Anmeldungen (Zeitstempel, Ländercode — nie rohe IP) sichtbar im Sicherheits-Log der App.

Nur echte Apps

Mobiler Traffic wird als Kommen aus einer echten ConKarma-Installation auf einem echten Gerät bestätigt. Curl-gegen-die-API-Versuche werden sanft abgelehnt — was eine ehrliche API-Oberfläche tun sollte.

  • Firebase App Check auf iOS und Android. Der Token ist bei jedem API-Aufruf vom Mobil erforderlich.
  • Mobile TLS-Pinning über das signierte Manifest in /.well-known/mobile-pins.json. Neue Pins werden mit einem Offline-Schlüssel signiert und mit sechs Wochen Überlappungs-Fenster rotiert, damit ein Update niemanden aussperrt.

Erwachsenen-Features sind für Analytics tabu

ConKarma hat zwei Zonen: eine Serene-Zone (alles familienfreundlich) und eine Ember-Zone (die 18+-Features). Ember-Seiten feuern bewusst keine Drittanbieter-Analytics-Events. Wir sammeln serverseitig aggregierte Prometheus-Counter für Kapazität und Uptime; nichts darüber hinaus.

  • Erwachsenen-Oberflächen (Mutproben, Wünsche, Fantasien, intime Tagebücher, der private Tresor) laden nie Google Analytics.
  • Biometrisches Entsperren ist erforderlich, um Ember-Oberflächen in der App zu betreten. Das System läuft ab und sperrt erneut, wenn du die App wechselst.
  • Der Screenshot-Schutz versteckt Ember-Inhalte vor dem App-Switcher des OS und vor jedem Bildschirmaufnahme-Overlay.
  • Geräteweise Aktivierung der Erwachsenenzone: standardmäßig AN für dein primäres Gerät, AUS für jedes andere. Du aktivierst es ausdrücklich pro Gerät, und die serverseitige Prüfung schlägt im Zweifel geschlossen fehl.
  • Erneute Abfrage bei Inaktivität: Die biometrische Sperre fällt nach 5 Minuten Inaktivität innerhalb von Ember oder nach 30 Sekunden im Hintergrund zurück. Beides ist über Einstellungen → Datenschutz konfigurierbar.
  • Nullung des Arbeitsspeicher-Caches: Wenn du von Ember zurück zu Serene wechselst (oder die App in den Hintergrund schickst), wird jedes zwischengespeicherte Bild aus dem Speicher entfernt — Verteidigung in der Tiefe gegen Speicher-Inspektions-Tools.
  • Ausschluss von Spotlight, Apple Intelligence und AppIntents: Erwachseneninhalte werden niemals an Spotlight, das On-Device-LLM, AppIntents, den Smart Stack oder Sperrbildschirm-Widgets übergeben.
  • Zwei-Augen-Admin-Zugriff: Kein Mensch bei XTZ Group kann Inhalte der Erwachsenenzone einseitig einsehen — jede Überschreibung erfordert die signierte Freigabe eines zweiten Admins, protokolliert in einem unveränderlichen Audit-Log.
  • Konfigurierbare 3-Jahres-Aufbewahrung für Erwachsene: Zeilen der Erwachsenenzone werden standardmäßig nach 3 Jahren automatisch gelöscht. Das Fenster ist nutzerseitig konfigurierbar (90 Tage bis 10 Jahre) über Einstellungen → Datenschutz. Hard-Delete, sobald das Fenster abgelaufen ist.
  • iCloud-Backup- und DSGVO-Export-Kontrollen: Zwei Opt-in-Schalter in Einstellungen → Datenschutz halten Erwachseneninhalte standardmäßig aus Geräte-Backups und aus deinem Datenexport heraus — damit versehentlich geteilte Backups oder Exporte sie nicht offenlegen.

Vollständige Zonen-Isolationsgarantien lesen →

Consent-Infrastruktur + Konflikt-Werkzeuge

Schwere Gespräche und Adult-Zone-Consent gehen beide durch strukturierte, kuratierte Oberflächen — niemals durch eine KI-Pipeline. Die Daten dahinter bleiben lokal oder paar-privat; nichts über eine Safeword-Aktivierung oder eine Geschwister-Wiedergutmachung verlässt das Geräte-Paar.

  • Konflikt-Werkzeuge — KI-Pipeline ausgeschlossen: jeder Geschwister-, Paar- und generationenübergreifende Wiedergutmachungs-Flow ist kuratierter Inhalt + strukturierte Formulare. Der Text, den ein Kind antippt, stammt aus unserem redaktionellen Set, nicht aus einem Modell.
  • Consent-Infrastruktur — Ember: das Limits-Dokument, das Safeword-Binding und die Aftercare-Check-ins leben auf Ember-E2E-Primitiven. Das Limits-Dokument erreicht niemals unsere KI-Pipeline.
  • Persönliches Ausblenden + Zell-Ebene-Kontrollen: das BE löscht die zugrunde liegenden Daten nicht, wenn du eine Funktion ausblendest. Jede dauerhafte Flag-Operation erfordert ein Zwei-Augen-Admin-Gate, in ein unveränderliches Audit-Log geschrieben.

Ember-Einwilligungsinfrastruktur

Erwachsenen-Tarif-Oberflächen werden nicht mit einem generischen 'Ich stimme zu'-Kontrollkästchen geliefert und nennen das Einwilligung. Ember ist um drei tragende Primitive strukturiert – das Grenzdokument, das Safeword und Aftercare-Check-ins – die auf demselben E2E-Schlüsselpaar wie der Rest der Erwachsenenzone leben. Reife Formulierung durchgängig; Handlungsfähigkeit, nicht Paternalismus.

  • Grenzdokument: jeder Partner erstellt und bearbeitet sein eigenes, nur vom anderen Partner in derselben Paar-Cell einsehbar. Erreicht nie unsere Analyse-Pipeline; wird von keiner KI gelesen; wird serverseitig nie über den verschlüsselten Blob hinaus repliziert.
  • Safeword-Bindung: eine gemeinsam genutzten Safeword-Phrase, die sofort jede Ember-Oberfläche zurück zu Serene versetzt + eine nur-für-Paare-protokollzeile schreibt. Aktivierungen sind nur für beide Partner sichtbar; XTZ-Group-Betreiber können sie nicht lesen.
  • Aftercare-Check-ins: von einem Partner nach einer Ember-Session geplant, opt-in pro Partner, Antworten bleiben paar-privat. Kein Engagement-Zähler, kein Streak, keine Aufforderung.
  • Reife Formulierung: Texte und Prompts behandeln erwachsene Leser als Erwachsene. Wir infantilisieren die Oberflächen nicht mit Euphemismen; wir stützen uns auch nicht auf Schockwert, um transgressive zu wirken.

Doppelblind-Einwilligungs-Matching

Wenn zwei Partner erkunden, welche Fantasy-Kategorien sich überschneiden, läuft das Matching vollständig auf dem Gerät mit zwei strukturellen Invarianten, die wir nicht brechen werden: nie-Nein-enthüllen (wenn einer der Partner Nein tippt, sieht keiner von beiden diese Tatsache) und Null-Egress-KI (kein Modell irgendwo im Inferenz-Pfad).

  • Nie-Nein-enthüllen-Invariante: ein Ja/Ja-Paar erscheint in der geteilten Match-Liste. Jede andere Kombination (Ja/Nein, Nein/Ja, Nein/Nein) gibt nichts zurück – keiner sieht, wer Nein gesagt hat, und keiner sieht, dass dem anderen der Prompt überhaupt gezeigt wurde. Das ist Anti-Druck-Strukturdesign, keine Einstellung, die man abschalten kann.
  • Null-Egress-KI-Invariante: Die Matching-Berechnung ist eine lokale Mengen-Schnittmenge. Keine Modell-Inferenz, keine Einbettungs-Suche, kein KI-Scoring von Kategorien oder Paarungen. Die Kategorien selbst sind kuratierter redaktioneller Inhalt, nicht generiert.
  • Paar-private Ergebnisse: Die Match-Liste ist End-zu-End-verschlüsselt mit dem gemeinsamen Schlüsselpaar des Paares. Serverseitig sehen wir Zählungen (Kapazitätsplanung), aber nie die Kategorien selbst.
  • Überprüfbare Invarianten: Die beiden oben genannten Invarianten werden im On-Device-Code-Pfad ohne Toggles und ohne Admin-Override durchgesetzt. Ein Plattformbetreiber kann ein Paar nicht in Telemetrie auf dieser Oberfläche einwählen – es gibt keine Telemetrie zum Einwählen.

Take It Down Act-Compliance – öffentlicher Meldekanal

Das Bundes-TAKE IT DOWN Act (2025) verlangt von Plattformen, die Nutzercontent hosten, innerhalb von 48 Stunden auf Takedown-Anfragen für nicht-konsensuelle intime Bilder zu reagieren. ConKarmas öffentlicher Meldekanal + Verfahren ist unter /legal/takedown-notice veröffentlicht; dieser Abschnitt ist die Sicherheitshaltungs-Zusammenfassung.

  • Kanal: legal@conkarma.app (Betreff-Zeile Take It Down-Hinweis / DMCA-Hinweis / Dringend – CSAM-Bericht).
  • Zusage: 48-Stunden-SLA vom Empfang einer gültigen Anfrage bis zur Entfernung oder Deaktivierung des Zugriffs.
  • Abdeckung: NCII (echt oder KI-generierte Deepfakes), DMCA-Urheberrecht, CSAM (erhöhte Priorität + NCMEC-Bericht) und breitere rechtswidrige-Inhalte-Berichte.
  • Gegenbenachrichtigung: DMCA-Gegenbenachrichtigungs-Pfad über denselben Kanal; gesetzliches 10–14 Werktage Wiederherstellungsfenster ohne Gerichtsbeschluss.
  • Prüfung: Jeder Hinweis + jede ergriffene Maßnahme wird für die gesetzlich vorgeschriebenen Zeiträume protokolliert und aufbewahrt. Bösgläubige Hinweise können den Absender der zivilrechtlichen Haftung nach dem Gesetz, DMCA §512(f) und unseren Nutzungsbedingungen aussetzen.

Pro-Bundesstaat-Regulierungs-Dial

Wo US-Bundesstaaten oder andere Gerichtsbarkeiten Gesetze erlassen, die einschränken, was eine Plattform anbieten kann (Altersverifikationsregime, Inhaltskategorie-Einschränkungen, Aufzeichnungsmandaten), passen wir das Verhalten regional an, statt uns vom Markt zurückzuziehen. Der ehrliche Kompromiss: das Gesetz eines Bundesstaates gestaltet, wie die Oberfläche für Nutzer in diesem Bundesstaat aussieht, nicht was wir für richtiges Produktdesign halten.

  • Regionserkennung: basiert auf dem vom Nutzer angegebenen Land + (für die USA) dem in den Einstellungen konfigurierten Bundesstaat, nicht allein auf IP-Geolocation. Nutzer können die abgeleitete Region überschreiben, wenn sie falsch ist.
  • Was angepasst wird: Altersverifikationsflüsse (KOSA-ähnliche Bundesstaaten), Erwachsenen-Content-Sperrung, Aufbewahrungsfenster, wo Staatsrecht sie vorschreibt, und Offenlegungs-Texte, wo der Staat spezifische Formulierungen verlangt.
  • Was NICHT angepasst wird: End-zu-End-Verschlüsselungs-Haltung, die Null-Egress-KI-Invarianten, der COPPA-konforme Standard für unter 13-Jährige und die nie-Erwachsenen-Content-Zeilen-mischen-Tabellen-Invariante. Diese sind über Gerichtsbarkeiten hinweg nicht verhandelbar.
  • Transparenz: Die auf deinen Account angewendete regionale Konfiguration ist in Einstellungen → Datenschutz → Regionale Haltung sichtbar. Wenn du glaubst, sie ist für deine Gerichtsbarkeit falsch, reiche einen Take It Down-Hinweis ein oder schreibe an legal@conkarma.app.

Kinder sind kein Wachstums-Hebel

Konten unter 13 durchlaufen einen verifizierbaren elterlichen Zustimmungs-Flow, bevor sie existieren. Wir zeigen keine Werbung auf Kinder-Konten, Punkt. Wir verkaufen keine Kinderdaten, teilen sie nicht für Werbung und nutzen sie nicht zur Zielgruppen-Auswahl.

  • COPPA §312.5-konforme verifizierbare elterliche Zustimmung (signierter Kreditkarteninhaber-Verifizierungspfad, mit Alternative für Haushalte ohne Karte).
  • Keine Drittanbieter-Werbung jeglicher Art auf Konten unter 13.
  • Eltern können die Konto-Daten ihres Kindes jederzeit aus der App ansehen, exportieren und löschen.

Vertrauen kommt aus der Zelle, nicht von uns

ConKarma ist ein Closed-Circle-Produkt. Es gibt keine öffentlichen Profile, keinen Follower-Graph und keine Möglichkeit, Fremde zu entdecken. Die meiste Moderation passiert, weil du und die Leute in deiner Zelle euch bereits kennt und vertraut. Wo das Modell Hilfe braucht, haben wir einen Melde-Flow und eine Moderations-Queue mit einem Menschen darin.

  • Zellen sind standardmäßig geschlossen. Keine öffentliche Entdeckung, kein öffentliches Profil, keine Freund-von-Freund-Vorschläge.
  • Nutzer-Melde-Flow auf jeder Inhalts-Oberfläche, geleitet zu einer Moderations-Queue, die von Menschen bearbeitet wird.
  • Hash-basiertes Scannen bekannter CSAM ist als bekannte-und-ausstehende Implementierung getrackt, mit expliziten Revisit-Triggern wenn wir auf ein Medien-Speicherprofil wechseln, das es erfordert. Wir behaupten es nicht, bevor es real ist.

Was wir behalten, wo, und wie du es zurückbekommst

Wir über-dokumentieren das auf /privacy und /legal/subprocessors, aber die sicherheits-relevante Kurzfassung lautet: verschlüsselt im Ruhezustand, gespeichert dort, wo die SCC-Papiere greifen, on-demand exportier- und löschbar, und wir behalten nicht mehr als nötig.

  • GDPR-, CCPA- und Quebec-25-Export- und Löschungs-Kontrollen leben in der App — nicht hinter einem Support-Ticket. Löschung hat eine 30-Tage-Soft-Delete-Gnadenfrist, falls du es dir anders überlegst.
  • Verschlüsselung im Ruhezustand auf der Postgres-Datenbank und auf Object-Storage (Supabase-managed Infrastruktur).
  • Rohe IP-Adressen werden auf keiner nutzerseitigen Oberfläche gespeichert. Die Liste aktiver Sessions zeigt nur den 2-Buchstaben-Ländercode; rohe IPs existieren kurz in Sicherheits-Event-Zeilen für forensischen Gebrauch unter einer kurzen Aufbewahrungsfrist.

Wenn du etwas findest, sag es uns

Wir betreiben noch kein bezahltes Bug-Bounty — das ist eine echte Lücke, und wir gehen es an, sobald es die Operator-Zeit verdient, die es braucht. Bis dahin begrüßen wir Berichte in gutem Glauben und bestätigen sie innerhalb von fünf Werktagen.

E-Mail: security@conkarma.app

  • E-Mail an security@conkarma.app mit Details. PGP-Schlüssel auf Anfrage.
  • Wir verpflichten uns zu Bestätigung innerhalb von 5 Werktagen und substanzieller Antwort innerhalb von 30 Tagen.
  • Koordinierte Offenlegung: 90-Tage-Standardfenster vor öffentlicher Offenlegung, einvernehmlich verlängerbar.
  • Wir verfolgen keine rechtlichen Schritte gegen Sicherheitsforschung in gutem Glauben, die verantwortungsvoller Offenlegung folgt.