category.compliance article.audiences.audience.all Mit Gedächtnis Mit Werkzeugen Agent2Agent

Prompt-Scrubbing (PII): Was steckt dahinter und warum ist es so wichtig?

Prompt Scrubbing einfach und verständlich erklärt.

Veröffentlicht am 2. Juni 2025
Prompt-Scrubbing (PII): Was steckt dahinter und warum ist es so wichtig?

Du nutzt ein externes Large Language Model (LLM) für Dein Unternehmen oder Deine Projekte und dabei möchtest Du natürlich sicherstellen, dass keine sensiblen Daten wie Kundennamen, Adressen oder Geschäftsgeheimnisse ungewollt nach außen dringen. Genau hier kommt der Prompt-Scrubber ins Spiel.

Ein Prompt-Scrubber ist im Grunde eine Art intelligenter Filter – eine Software-Schicht, die wie ein Wächter vor dem eigentlichen LLM sitzt. Das kann eine Library, ein API-Gateway oder ein Proxy sein. Seine Hauptaufgabe ist es, alle Anfragen (Prompts), die an das LLM gesendet werden, und manchmal auch die Antworten des LLMs, genau unter die Lupe zu nehmen. Dabei sucht er nach:

  1. Personenbezogenen Daten (PII – Personally Identifiable Information)
  2. Anderen schützenswerten Informationen, wie Betriebsgeheimnissen oder internen Kennungen (IP).

Findet der Scrubber solche Daten, sorgt er dafür, dass sie maskiert, durch Platzhalter ersetzt (tokenisiert) oder pseudonymisiert werden, bevor sie das externe LLM überhaupt erreichen. Damit leistet er einen wichtigen Beitrag zur Einhaltung der Datenschutz-Grundverordnung (DSGVO), insbesondere der Prinzipien der Datenminimierung (Art. 5 Abs. 1 lit. c DSGVO) und des Datenschutzes durch Technikgestaltung (Privacy by Design, Art. 25 DSGVO). Kurz gesagt: Er hilft Dir, nur das Nötigste preiszugeben und sensible Infos sicher intern zu halten.

2. Warum das Ganze? Der rechtliche Rahmen dahinter

Du fragst Dich vielleicht, warum so ein Aufwand? Nun, die Datenschutz-Grundverordnung (DSGVO) hat da ein paar klare Ansagen. Wenn Du als Verantwortlicher externe Dienste wie LLMs nutzt (was als Auftragsverarbeitung gilt), musst Du laut Artikel 28 und 32 DSGVO technische und organisatorische Maßnahmen (kurz TOMs) ergreifen. Ziel ist es, die Risiken für die Daten zu minimieren.

Dazu gehört auch das Prinzip der Datenminimierung (Artikel 5 Abs. 1 lit. b und c DSGVO): Übertrage nicht mehr Daten als unbedingt nötig. Gerade wenn Daten in Länder außerhalb der EU fließen, zum Beispiel in die USA, wird es knifflig. Je weniger personenbezogene Daten (PII) den Weg dorthin finden, desto einfacher wird das sogenannte Transfer Impact Assessment (TIA), das Du durchführen musst.

Die DSGVO selbst (Erwägungsgrund 28) nennt die Pseudonymisierung als eine Maßnahme, die Risiken reduzieren kann. Ein Prompt-Scrubber ist also ein ziemlich cleveres Werkzeug, um diesen Anforderungen gerecht zu werden.

3. Wie funktioniert so ein Scrubber? Ein Blick unter die Haube

Okay, aber wie macht der Scrubber das genau? Im Prinzip durchläuft ein Prompt mehrere Stufen:

  1. Der Detektiv-Layer (Detection Layer) Hier geht’s ans Eingemachte. Der Scrubber nutzt oft eine Kombination aus regulären Ausdrücken (Regex) und/oder Machine-Learning-basierten Verfahren zur Named-Entity-Erkennung (NER). Damit spürt er PII-Entitäten auf wie:

    • Namen, Adressen, E-Mail-Adressen, Telefonnummern
    • Kundennummern, IBANs, UUIDs (eindeutige Identifikatoren)
    • Auch sensible Dinge wie Gesundheitsdaten und vieles mehr.
  2. Der Bereinigungs-Layer (Sanitization Layer) Wurde etwas Verdächtiges gefunden, gibt es verschiedene Methoden, die Daten unschädlich zu machen:

    • Option A: Maskieren: Stell Dir vor, anna.muster@firma.de wird zu ***@***.***. Die Info ist weg.
    • Option B: Tokenisieren: Hier wird anna.muster@firma.de zu einem Platzhalter wie <EMAIL_17>. Der Scrubber merkt sich intern in einer Mapping-Tabelle, welcher Token zu welcher Original-Info gehört.
    • Option C: Hashen/Verschlüsseln: Eine IBAN könnte beispielsweise verschlüsselt werden zu ENC(…AES…).
  3. Weiterleitung zum LLM Nur der “saubere” Prompt, also die Anfrage ohne die kritischen Daten (oder eben mit den Platzhaltern), wird dann an das eigentliche LLM geschickt, sei es Google Gemini, Azure OpenAI oder ein anderes Modell.

  4. Die Rückverwandlung (Rehydration – optional) Wenn das LLM antwortet und Du die Tokenisierungsmethode gewählt hast, kann der Scrubber die Platzhalter in der Antwort wieder durch die ursprünglichen Klartext-Daten ersetzen. Das passiert, bevor Du oder Dein Endnutzer die Antwort sehen. So bleibt der Kontext erhalten, aber die sensiblen Daten haben das LLM nie im Klartext erreicht.

Hier mal eine vereinfachte Darstellung, wie das aussehen kann: Client → [Scrubber Proxy] ├─ PII erkennen ├─ Maskieren / Tokenisieren └─ Protokollieren & Auditieren → Bereinigter Prompt → LLM (z.B. Gemini) LLM Antwort → Scrubber Proxy (Daten wiederherstellen) → Client

4. Methoden zur PII-Erkennung: Von Regeln bis KI

Wie findet der Scrubber die Nadel im Heuhaufen? Es gibt verschiedene Ansätze, oft auch in Kombination:

MethodeVorteileNachteile
Regex/RegelbasiertSchnell, gut erklärbar, funktioniert offlineErkennt nicht alles (False Negatives), Probleme mit Sprachvarianten
ML-NER (z.B. spaCy, Presidio, Stanza)Höhere Trefferquote, versteht mehrere SprachenBraucht mehr Rechenpower, eventuell Trainingsdaten nötig
DLP-API (Google DLP, AWS Macie, Nightfall)Fertige SaaS-Lösung, wird ständig aktualisiertZusätzlicher Drittlandtransfer, verursacht weitere Kosten
Hybrid (Regex + ML)Guter Kompromiss aus Genauigkeit und AbdeckungKann komplexer im Betrieb sein

Jede Methode hat ihre Stärken und Schwächen. Die Wahl hängt von Deinen spezifischen Anforderungen ab.

5. Varianten der Datenbereinigung: Von Maske bis Platzhalter

Wenn PII gefunden wurde, wie wird sie unkenntlich gemacht? Hier ein paar gängige Methoden:

  1. Maskieren (unwiederbringlich) Hier werden Teile der Information durch Platzhalter ersetzt. Beispiel: Max MustermannM*** M******* Die Originalinfo ist danach meist nicht mehr herstellbar.

  2. Tokenisieren (reversibel) Sensible Daten werden durch eindeutige Platzhalter (Tokens) ersetzt. Beispiel: Max Mustermann<NAME_123> Das Mapping zwischen Token und Originaldaten wird sicher gespeichert (z.B. in einem Key-Value-Store). Das ist wichtig, wenn Du die Originaldaten später wieder brauchst.

  3. Hashing (konsistent, anonym) Daten werden durch einen Hashwert ersetzt. Beispiel: max@example.comSHA256(...) Wenn derselbe Input kommt, ist der Hashwert immer gleich, aber man kann nicht einfach zurückrechnen.

  4. Synthetischer Ersatz (Synthetic Replacement) Originaldaten werden durch realistisch aussehende, aber erfundene Daten ersetzt. Beispiel: Max MustermannSven Håkansson (gleiches Format, aber keine echte Person). Das kann nützlich sein, um die Struktur der Daten für das LLM zu erhalten.

Was sich oft im B2B-Umfeld bewährt: Die Tokenisierung. Warum? Weil man für viele Fachprozesse die Originaldaten später doch wieder benötigt (Re-Identifikation).

6. Wo baut man den Scrubber ein? Architektur-Optionen

Ein Prompt-Scrubber kann an verschiedenen Stellen in Deiner IT-Architektur andocken:

VarianteEinbaupunktTypische Technologien / Werkzeuge
Client-SDKDirekt im Frontend oder in der AppJavaScript/TypeScript Library, Mobile SDKs
API-Gateway / Reverse ProxyZwischen Deinem App-Backend und dem LLMEnvoy mit WASM, Kong, NGINX mit Lua-Skripten
Middleware im BackendAls Teil Deines Service-CodesPython / Node.js / Go; oft als Decorator implementiert
Sidecar / Service MeshAls “Beiwagen” zu Deinem Service in KubernetesIstio EnvoyFilter, Linkerd
Batch-VorverarbeiterFür Pipelines beim Fine-Tuning von ModellenSpark / Airflow Task, der z.B. Presidio nutzt

Die beste Option hängt stark von Deiner bestehenden Infrastruktur und Deinen Entwicklungs-Workflows ab.

7. Ein kleines Code-Beispiel (Python mit Microsoft Presidio)

Damit Du eine Vorstellung bekommst, wie das in Code aussehen kann, hier ein kurzes Beispiel mit Python und der Microsoft Presidio-Bibliothek:

from presidio_analyzer import AnalyzerEngine
from presidio_anonymizer import AnonymizerEngine, AnonymizerConfig

# Initialisiere die Engines
analyzer = AnalyzerEngine()
anonymizer = AnonymizerEngine()

def scrub_prompt(text: str) -> str:
    # Analysiere den Text, um PII zu finden (hier für Deutsch)
    results = analyzer.analyze(text=text, language='de')
    
    # Anonymisiere die gefundenen PII
    # Hier ersetzen wir alles Gefundene mit dem Platzhalter "<PII>"
    anonymized = anonymizer.anonymize(
        text=text,
        analyzer_results=results,
        anonymizers_config={"DEFAULT": AnonymizerConfig("replace", {"new_value": "<PII>"}),}
    )
    return anonymized.text

# Beispiel-Prompt
user_prompt = "Hallo, mein Name ist Max Mustermann, meine E-Mail ist max@acme.de und meine Telefonnummer lautet 0151-123456."

# Scrubber anwenden
prompt_clean = scrub_prompt(user_prompt)
print(prompt_clean)
# Ausgabe: "Hallo, mein Name ist <PII>, meine E-Mail ist <PII> und meine Telefonnummer lautet <PII>."
Diesen scrub_prompt()-Aufruf würdest Du dann in Deiner CI/CD-Pipeline oder in Deinem API-Gateway einbauen, bevor der Prompt an das LLM weitergereicht wird.
## 8. Checkliste für die Implementierung: Daran solltest Du denken
Wenn Du einen Prompt-Scrubber einführen willst, hier ein paar Punkte für Deine To-Do-Liste:
 Datenkategorien definieren: Was genau gilt bei Dir als PII? Was sind Geschäftsgeheimnisse, API-Keys oder andere sensible Daten, die geschützt werden müssen?
 Erkennungsregeln testen: Setze Dir Ziele für die Erkennungsrate. Eine Genauigkeit (Precision) von ≥ 95 % und eine Abdeckung (Recall) von ≥ 90 % sind gute Richtwerte.
 Performance im Blick behalten: Der Scrubber sollte nicht zum Flaschenhals werden. Eine zusätzliche Latenz von unter 200 Millisekunden pro Prompt ist oft ein guter Anhaltspunkt.
 Bedarf an Wiederherstellung (Re-Identifikation)? Wenn ja, musst Du den Token-Speicher besonders gut absichern und verschlüsseln (wichtige TOM!).
 Logging und Auditierung: Protokolliere Treffer, am besten mit einem Hash des Original-Tokens. Das hilft bei der Nachvollziehbarkeit und bei Audits.
 Umgang mit Fehlalarmen (False Positives): Überlege Dir einen Prozess, wie Du mit fälschlicherweise erkannten Daten umgehst (z.B. manuelle Freigabe oder eine "Allow-List").
 Sicherheitsüberprüfung: Der Scrubber selbst muss DSGVO-konform arbeiten. Das betrifft z.B. die Verschlüsselung von Logs und deren Aufbewahrungsfristen (z.B. nicht länger als 30 Tage).
 Datenschutz-Folgenabschätzung (DSFA/DPIA) aktualisieren: Nimm den Scrubber-Layer als risikomindernde Maßnahme in Deine DSFA auf.
## 9. Grenzen und Risiken: Kein Allheilmittel
Ein Prompt-Scrubber ist ein starkes Werkzeug, aber er ist nicht perfekt. Es gibt ein paar Dinge zu beachten:
  Falsch-Negative (False Negatives): Hundertprozentigen Schutz gibt es nicht. Es kann immer sein, dass der Scrubber etwas übersieht. Ein Restrisiko bleibt.
  Kontextabhängige Daten: Manche Informationen sind nur im Kontext sensibel (z.B. eine beiläufige Bemerkung über den Gesundheitszustand ohne typische Trigger-Wörter). Solche Dinge sind schwer zu erkennen.
  Verhalten des LLMs: Selbst wenn der Prompt "sauber" ist, kann ein LLM manchmal PII "halluzinieren" oder aus anderen Trainingsdaten generieren. Ein Output-Scrubbing oder eine Moderationsschicht für die Antworten kann daher zusätzlich nötig sein.
  Kosten und Latenz: Besonders ML-basierte Scrubber können die Antwortzeiten verlängern und zusätzliche Kosten verursachen.
## 10. Der Nutzen für uns bei Nanostudio.AI (und für Dich!)
Warum ist das Thema für uns bei Nanostudio.AI so relevant und wie kannst Du davon profitieren?
  Weniger Stress mit Schrems II: Ein Scrubber reduziert das Risiko bei Datentransfers in Drittländer, weil weniger oder gar keine PII die EU verlassen. Das macht das Leben bei der Argumentation gegenüber Aufsichtsbehörden deutlich einfacher, gerade wenn es um die DSFA und das Transfer Impact Assessment (TIA) geht.
  Starkes Argument für Datenschutz: Du zeigst, dass Du Datenschutz ernst nimmst. Das schafft Vertrauen bei Kunden und Partnern.
  End-to-End-Datenminimierung: Kombiniert man einen Prompt-Scrubber mit einem sogenannten No-PII-Linting (also einer Überprüfung schon auf Code-Ebene, dass keine PII hartcodiert wird), bekommt man eine ziemlich lückenlose Kette der Datenminimierung.
Wir bei Nanostudio.AI setzen intern stark auf unsere Nanos (unsere intelligenten KI-Agenten) – vom Projektmanagement bis hin zu Softwarearchitektur-Aufgaben. Auch wenn wir ein agiles Team sind, helfen uns diese Nanos enorm. Und klar, für alles, was KI (noch) nicht kann, haben wir unser Professional Service Team. Unsere Nanos sind cloudgehostet, aber wir bieten auch DSGVO-konforme, selbstgehostete Varianten an, gerade für unsere deutschen und europäischen Kunden. Ein Prompt-Scrubber ist da ein wichtiger Baustein, um die Datensicherheit zu gewährleisten.

Kurz & Knapp (TL;DR)
Ein Prompt-Scrubber ist Dein automatischer Datenwächter. Er löscht oder pseudonymisiert personenbezogene Daten und andere sensible Infos in Deinen Anfragen (Prompts), bevor diese an externe KI-Modelle wie Google Gemini oder Azure OpenAI gesendet werden. Er ist ein zentrales Element für "Privacy by Design" und lässt sich oft als Proxy oder Gateway in Deine Systeme einbauen. Zur Erkennung nutzt er Methoden wie Regex, Machine Learning oder spezielle DLP-APIs. Auch wenn er nicht alle DSGVO-Pflichten im Alleingang erfüllt, senkt er das Risiko von Bußgeldern und Problemen bei Drittlandtransfers ganz erheblich. Ein Muss für den verantwortungsvollen KI-Einsatz!
Mit Gedächtnis Mit Werkzeugen Agent2Agent

Sprechen Sie mit unserem Business Architect

Lassen Sie sich von unserem KI-Experten beraten und finden Sie die perfekte Lösung für Ihr Unternehmen.

Jetzt Gespräch vereinbaren