PII protection built for AI

LLMs see everything your users type. Tokenize PII before it leaves your system, restore it in the response. SDKs for Python, JavaScript, and Java.

python
from blindfold import Blindfold

bf = Blindfold()  # No API key needed

# 1. Tokenize PII
prompt = "My email is john@acme.com, card 4532-7562-9102-3456"
safe = bf.tokenize(prompt)

# "My email is <Email Address_1>, card <Credit Card_1>"

# 2. Send to any LLM
response = openai.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": safe.text}]
)

# 3. Restore original data
result = bf.detokenize(response.choices[0].message.content, safe.mapping)

Try it live in your browser →

What it detects

Local mode runs offline with 86 regex types. Cloud API adds 60+ NLP types on top. See full list →

Local mode

Free, offline, no API key. 86 regex types with checksum validation.

Email addressesCredit cardsPhone numbersSSNsIBANsIP addressesURLsDates of birthPassport numbersDriver's licensesTax IDs / EINsVAT IDsZIP / Postal codes30+ country IDs

Cloud API

NLP-powered detection for names, addresses, orgs. 60+ additional types.

Person namesOrganizationsPhysical addressesMedical recordsDatesNationalitiesCustom entitiesAll local entities

18 languages supported

Cloud API auto-detects language. Local mode covers all country-specific formats. See full list →

Tier 1 — Highest accuracy

Native NLP support with full entity coverage.

🇬🇧 English🇩🇪 German🇫🇷 French🇪🇸 Spanish🇮🇹 Italian🇵🇹 Portuguese🇳🇱 Dutch🇵🇱 Polish🇷🇺 Russian

Tier 2 — High accuracy

Zero-shot NLP support with automatic detection.

🇨🇿 Czech🇸🇰 Slovak🇩🇰 Danish🇸🇪 Swedish🇳🇴 Norwegian🇷🇴 Romanian🇨🇳 Chinese🇯🇵 Japanese🇸🇦 Arabic

Modes

Learn more →

tokenize

Replace PII with reversible tokens

John Doe → <Person_1>

detokenize

Restore original values from tokens using the mapping

<Person_1> → John Doe

mask

Partially hide data

****-****-****-1234

redact

Permanently remove PII

[REDACTED]

synthesize

Replace with realistic fake data

John Doe → Maria Garcia

hash

One-way hash PII (MD5, SHA1, SHA256)

HASH_a3f8b9c2d4

encrypt

Encrypt PII with a password (AES/Fernet)

ENC_gAAAAABl...

discover

Analyze samples to detect PII types and density

{type: "Person", score: 0.99}

Batch processing

Process up to 100 texts in a single API call. Available across all modes, SDKs, CLI, and MCP.

python
result = bf.tokenize_batch(
    ["Patient: Sarah Jenkins, SSN: 123-45-6789",
     "Contact john@example.com or +1-555-0123",
     "No sensitive data here"],
    policy="hipaa_us"
)

# result.total → 3, result.succeeded → 3

Official SDKs

Get started in seconds with Python, JavaScript, or Java.

pip install blindfold-sdk

npm install @blindfold/sdk

dev.blindfold:blindfold-sdk

Multi-region infrastructure

Choose where your data is processed. Your API key works across all regions.

🇪🇺

EU Region

eu-api.blindfold.dev

🇺🇸

US Region

us-api.blindfold.dev

Data never leaves the selected region. Learn more →

Pricing

Free to start. No credit card required.

View pricing →