Kansho/docs/architecture/technical/privacy_gateway.md

6.1 KiB
Raw Blame History

title version status date product_family document_role parent_document
Kanshō Privacy Gateway und AI-Egress 0.1 Arbeitsstand 2026-08-19 Jinkendo Technical Chapter / Privacy Gateway / Egress technische_zielarchitektur.md

Kanshō Privacy Gateway und AI-Egress

Technische Abbildung der fachlichen Guardrails. Kanonisches Fachhome: ../functional/guardrails.md (inkl. Root Cause §2, Datenklassen §5, Gateway §6, Entscheidungsstand §22). Dieses Kapitel dupliziert die Herleitung nicht.

Rang: Datenschutz und Guardrails sind im Fachkonzept grundlegend und entschieden. Sie stehen nicht auf derselben Ebene wie unfertige Dialog- oder MVP-Schnitte. Offene Punkte betreffen Verfahren und rechtliche Ausprägung (Entity Detection, Encryption at rest, DSFA), nicht die Invariante selbst.

1. Invariante

Identität bleibt lokal. Externe Intelligenz erhält nur den für die Aufgabe notwendigen, minimierten und soweit sinnvoll pseudonymisierten Kontext.

Herkunft: guardrails.md §2.4; querschnittlich in der fachlichen Zielarchitektur. Providerunabhängig: OpenRouter ist Kandidat, kein Ersatz für das lokale Gateway. OpenRouter-eigene Guardrail-Features ergänzen höchstens, sie ersetzen die Kanshō-Schicht nicht.

Pseudonymisierung ist keine Anonymisierung. Kanshō behauptet keine vollständige Anonymität nach außen.

Persönlicher Kontext wird nie direkt aus UI, Dialog-Router, Prompt-Engine oder Admin-Preview an OpenRouter, Provider oder Tools gesendet. Die Engine darf den Provider nur über den Gateway-Callback erreichen (platform_extensibility.md).

1.1 Guardrail-Vorrang

Fachlich §19: Guardrails haben Vorrang vor Modellqualität, Kosten, Latenz, Komfort und automatischem Provider-Fallback. Eine Anfrage wird abgelehnt oder degradiert, wenn die Policy nicht erfüllbar ist. Administrierbare Prompts, Workflows oder Feature-Flags dürfen das Gateway nicht abschalten.

2. Trust Zones

Zone Inhalt Egress
Local Trusted Zone Identity Mapping, Klarnamen, Secrets, volle Primärquellen, Obsidian-Pfade kein Roh-Egress
External AI Zone External Model Context (Klasse B) nur nach Policy-Check, ZDR
Tool-/Plugin-Zone Suche, Plugins, Speech eigene Policy, nicht implizit mit LLM-Freigabe

3. Datenklassen

  • A Local Only: Mapping, Secrets, vollständige Identität, interne IDs soweit identifizierend. Verlassen die Trusted Zone nicht.
  • B Pseudonymized AI Context: Normalfall persönlicher Dialoge. Stabile, nicht sprechende Platzhalter ([[SELF]], [[PERSON:PARTNER]]). Minimierung zusätzlich zur Maskierung.
  • C Low-Identity: generische, nicht-personalisierte Inhalte; schwächere Transformation zulässig, eigene Policy bleibt nötig.

Quasi-Identifikatoren (Beruf+Ort+Familie) sind fachlich erkannt; die Bewertungsmethode ist offen, der Gateway-Auftrag „nicht nur Klarnamen“ gilt trotzdem.

4. Pflichtpipeline

Jeder persönliche Modellaufruf durchläuft lokal:

  1. Context Minimization
  2. Entity Detection
  3. Pseudonymization
  4. Policy Check
  5. Provider/Endpoint Eligibility (ZDR, kein Training, kein Prompt-Logging)
  6. Egress Validation
  7. Response Validation
  8. Local Rehydration / Demasking
  9. Audit Metadata (ohne volle Prompts)
  10. Fail Closed

Fail Closed: kein stillschweigender Fallback auf einen weniger geschützten Provider.

LLM-Egress und Tool-/Web-/Transkriptions-Egress sind getrennte Policies. Ein für ZDR-LLM freigegebener Kontext darf nicht automatisch an Web Search oder Speech-Cloud.

5. Internal vs. External Context

Der Context Builder darf intern mit Klaridentität arbeiten. Vor dem Socket nach außen existiert eine zweite Repräsentation ohne Mapping-Tabelle.

Demasking ausschließlich in der Trusted Zone, nach Validierung (Platzhalter erhalten, keine erratenen Klarnamen, keine Policy-Verstöße).

6. Audit

Speichern: Request-ID, Zeit, Policy, Provider-/Modellkennung, ZDR-/Region-Status, Typ maskierter Entitäten, Prüf- und Fallback-Status.

Nicht speichern: volle Prompts, volle Antworten, echte Namen, Mapping.

Admin-Sichtbarkeit der Mapping-Tabelle nur für besonders berechtigte Rollen (admin_diagnostics.md).

7. Beziehung zu anderen Kapiteln

  • Resurfacing darf keinen breiteren Egress rechtfertigen als der aktuelle Task braucht.
  • Re-Grounding läuft lokal und erzeugt danach erneut einen minimierten External Context.
  • Voice/Transkription: eigener Egress-Typ (voice_and_media.md).
  • Lived Experience / Re-Grounding: volle Primärquellen bleiben lokal; externes Modell bekommt erneut nur Klasse B.
  • Prompt-Engine: Preview ohne LLM ist erlaubt; Debug-Ausgaben an den Admin ohne Klasse-A-Klartext und ohne Mapping.

8. Was Phase H noch offen lässt

Interview H1 (Encryption at rest, vollständiges Löschen, Portabilität, DSFA bei späterem Mehrbenutzerbetrieb) ergänzt diese Invariante, ersetzt sie nicht. Privacy Profiles (Strict / Balanced / Low-Identity) sind fachlich perspektivisch; Default muss die Invariante erfüllen.

9. Entscheidungsstand

Thema Stand Status
Privacy Gateway vor persönlichem Egress zwingend, nicht abschaltbar entschieden
Guardrails vor Qualität/Kosten/Latenz ja entschieden (fachlich)
Providerunabhängige Guardrails ja entschieden (fachlich)
ZDR / kein Training / kein Prompt-Log persönliche Kontexte entschieden bzw. bevorzugte verbindliche Policy
Fail Closed ja bevorzugte Richtung
Keine Anonymitätsbehauptung Pseudonymisierung entschieden (fachlich)
OpenRouter Kandidat, nicht Gateway-Ersatz entschieden
EU-Routing bevorzugt offen in Ausprägung
Encryption at rest, Delete, DSFA Phase H offen
Implementierung Entity Detection deterministisch vs. KI-gestützt offen

10. Offene Fragen

Übernommen aus guardrails.md §21, hier nicht vorentschieden: Entitätstypen, Quasi-Identifikatoren, Pseudonym-Stabilität, Mehrnutzer-Trennung der Mappings, Verschlüsselung der Mapping-Tabelle, rechtliche DSFA bei Mehrbenutzer-Produktbetrieb.

11. Querverweise

  • Fachlich: ../functional/guardrails.md
  • Technisch: ai_architecture.md, security.md, voice_and_media.md, platform_extensibility.md