
Noisegate: ein Differential-Privacy-Gateway, das es einem nicht vertrauenswürdigen LLM-Agenten ermöglicht, über MCP (Model Context Protocol) auf sensible Daten zuzugreifen, mit der formalen Garantie, dass kein Datensatz einer Einzelperson preisgegeben werden kann, selbst wenn der Agent adversarial ist – die Durchsetzung erfolgt in vertrauenswürdigem Code unterhalb des Modells, validiert durch eine ausführbare Angriffsgalerie.
Ein KI-Agent, der sensible Daten untersuchen kann, ohne jemanden einzeln identifizieren zu können. Die Grenze ist mathematisch, sie wird in Code durchgesetzt, den der Agent nicht erreichen kann, und das Repo liefert die Angriffe mit, die versuchen, sie zu brechen.
Eine aufgezeichnete Claude-Desktop-Sitzung (Antworten gekürzt; die Diagrammkarten stammen aus der Sitzung selbst). Ein KI-Agent schlüsselt 20 Patienten nach Diagnose auf, und das Rauschen von ±12 überlagert jeden Bin. Daran erinnert, dass er das Rauschen nicht abschalten kann, schöpft er ein Budget von drei Antworten aus, bis das Gate eine Ablehnung statt einer leiseren Antwort zurückgibt. Bei der Census-Datenmenge mit 32.561 Zeilen wird ein zu eng gefasster Ausschnitt an der Trust Boundary abgelehnt, während eine vollständige Aufschlüsselung nach Bildungsgrad im großen Maßstab sauber zurückkommt. Die Ablehnung und die Zurückweisung sind die tatsächliche Durchsetzung des Live-Gateways, reproduziert durch python scripts/render_demo_gif.py.
Sie stellen Fragen zu einem sensiblen Datensatz in einfachem Englisch. Ein LLM kompiliert jede Frage in eine kleine, eingeschränkte Abfrage. Eine Differential-Privacy-Engine führt sie unter einem nachverfolgten Privacy-Budget aus und liefert eine bewusst verrauschte Antwort mit angegebenem Konfidenzintervall. Wie sein akustisches Namensvetter hält das Gateway jedes Signal unterhalb einer festgelegten Schwelle unter dem Rauschteppich: Der Beitrag einer einzelnen Person wird übertönt, während Signal im Maßstab des gesamten Datensatzes nahezu unverändert durchkommt.
Das Interessante ist nicht, dass ein LLM Abfragen schreiben kann. Es ist, dass die Privacy-Garantie nicht davon abhängt, dass das LLM vertrauenswürdig ist. Das Modell ist eine Annehmlichkeit, die eine Abfrage vorschlägt. Es setzt nichts durch. Jede Privacy-Eigenschaft wird weiter unten durchgesetzt, von Komponenten, die sich genauso verhalten würden, wenn ein Mensch die Abfrage von Hand eingetippt hätte. Das ist die Trust-Boundary-Disziplin, die man auf jede nicht vertrauenswürdige Eingabe in einem Produktionssystem anwenden würde, hier angewendet auf einen KI-Agenten.
Die Angriffsgalerie läuft im Prozess gegen die echte DP-Engine:```bash pip install -e . python -m attacks.patients_alice # re-identify Alice with privacy off, then watch # the guard, the noise, and the budget defeat it
### 2. Einen KI-Agenten verbinden
Das Gateway läuft als MCP-stdio-Server für Claude Desktop. Der Agent wird zum nicht vertrauenswürdigen Abfrageautor und erhält nur strukturierte Tools (`count`, `sum`, `average`, `histogram`, `get_budget`), deren Argument-Schemas aus der Dataset-Richtlinie generiert werden. Es wird nirgendwo ein API-Schlüssel benötigt, da der verbindende Agent die Intelligenz ist.
**[Einrichtung und vollständige Anleitung →](https://github.com/yashmahajan10/llm-differential-privacy-gateway/blob/main/docs/CLAUDE_DESKTOP.md)**
### 3. Die vollständige natürlichsprachliche UI
Eine lokale Single-Tenant-Demo. Ein API-Schlüssel wird nur für den nicht vertrauenswürdigen NL→Query-Compiler benötigt:```bash
export ANTHROPIC_API_KEY=... # used only by the untrusted NL→query compiler
docker compose up # brings up the engine, API, and UI
# open http://localhost:8501
Diese HTTP- + Streamlit-Oberfläche ist eine lokale Single-Tenant-Demo. Die Identität stammt aus einem spoofbaren X-Identity-Header, ist also für einen einzelnen vertrauenswürdigen Betreiber auf dessen eigener Maschine gedacht, nicht für eine öffentliche Bereitstellung (siehe was diese Oberflächen sind und was nicht). Für lokales Nicht-Docker-Setup, das Ausführen der Tests und Konfigurationsschalter siehe SETUP.md.
Jeder kann Datenschutz behaupten. Dieses Repository liefert die Exploits mit, die diese Behauptung widerlegen würden, führt sie gegen die eigene Engine aus und fixiert die Ergebnisse in CI. Der schnellste Weg zu verstehen, was das Gateway garantiert, ist zu beobachten, wie es drei klassische Angriffe abwehrt, die naive „Query a Database"-Systeme brechen.