What types of sensitive data can Privatiser detect and anonymize?
Updated
Privatiser is a browser-based tool that strips sensitive values from text before you paste it into an AI chat, then lets you restore the real values from a local mapping afterward. It detects 30+ patterns across 13 languages, covering secrets and keys, network and cloud identifiers, and personal identity data. Everything runs locally in your browser — the site states "nothing leaves your machine" and "0 bytes to any server," so the redaction happens on your device rather than on a remote service.
Secrets and keys
These are the credentials that most often leak by accident when developers paste config or logs into an AI assistant:
- API keys and secrets — including provider-prefixed keys such as
sk-proj-...(OpenAI-style) and generic assignments likeDB_PASSWORD = "..."orwebhook_secret = "...". - JWTs and bearer tokens — the
eyJ...header-payload-signature strings, plusBearertokens. - SSH / PEM keys — private key blocks.
- Slack tokens — e.g.
xoxb-.... - Generic identifiers — passwords written in English, French, or Spanish (
mot_de_passe,contraseña), which the sample input shows being caught.
Network and cloud identifiers
Useful when you're debugging infrastructure and want to share a config without exposing your topology:
- IP addresses — both public and internal ranges (e.g.
10.0.4.221,192.168.1.100). - Internal domains — hostnames like
monitoring.local:9090. - MAC addresses.
- Cloud resource IDs — AWS ARNs (
arn:aws:iam::...), plus AWS, GCP, and Azure identifiers, and Azure-style resource paths such as/subscriptions/0000-4000-a000-0001/prod.
Personal identity data (PII)
For text that contains customer or personal records:
- Emails and phone numbers (including international formats like
+44 ...). - Credit cards — validated with the Luhn check, so random 16-digit strings aren't flagged by mistake.
- SSNs, passports, IBANs — e.g.
078-05-1120,A1234567,GB29 NWBK .... - Vehicle plates and VINs.
- Names and dates of birth.
- UK-specific identifiers — NHS numbers, SWIFT codes, sort codes.
Optional pattern packs and custom rules
Beyond the built-in categories, you can enable extra pattern packs for domain-specific work:
| Pack | What it targets |
|---|---|
| Crypto | BTC, ETH, and key material |
| Kubernetes | K8s resource identifiers |
| Terraform | IaC-specific values |
| Comms | Slack, Teams, Twilio tokens |
| Location | Coordinates |
You can also add custom regex patterns (with a case-insensitive option) and a custom words to redact list for anything not covered by a pack. A separate allowlist lets you mark values that should never be redacted, so you don't accidentally strip something you need to keep.
How to check it fits your case
- Open the live tool on the site and paste a representative sample of the text you'd normally share with an AI.
- Confirm the values you care about appear in the redacted output. If a pattern is missing, add it under Custom regex patterns or Custom words to redact.
- Note that detection is pattern-based, not semantic — it catches structured formats (keys, IPs, card numbers) reliably, but free-form names or unusual formats may need a custom rule.
- If you want the same behavior without copy-pasting, the browser extension auto-anonymizes on paste into ChatGPT, Claude, Gemini, and others; there's also a VS Code extension and a Python package (
pip install privatiser).
The practical takeaway: if your sensitive data is structured — credentials, network addresses, cloud IDs, or standard PII formats — Privatiser's built-in patterns will likely cover it. If it's unstructured or domain-specific, plan on adding custom regex or a word list.