Skip to content

Detectors

anonymizer ships with a fixed registry of detectors, all enabled by default. Each can be toggled off in the UI’s Settings modal per session.

NER-based detectors (Natasha + spaCy)

These run a language-specific NER model and post-process the spans.

CategoryDetectorLanguages
Personal namesPersonRuDetector, PersonEnDetector, PersonEsDetector, PersonDeDetectorru, en, es*, de*
Companies (legal entities)CompanyRuDetector, CompanyEnDetector, CompanyEsDetector, CompanyDeDetectorru, en, es*, de*
AddressesAddressDetectorru, en, es*, de*

* Spanish and German run when their optional model is installed — see Language packs.

Regex-based detectors

Pattern-matching, often with a checksum or format validator. Language-agnostic unless noted.

CategoryDetector
EmailsEmailDetector
Phone numbers (E.164 + national formats)PhoneDetector
DatesDateDetector
Bank cardsCardDetector (Luhn)
IBANIBANDetector (checksum)
BIC (SWIFT) / BIC (RU)BICDetector, BICRuDetector
Russian bank accounts (20 digits)RuBankAccountDetector
ИНН (RU taxpayer ID)INNDetector (checksum)
ОГРН (RU registration number)OGRNDetector
КПП (RU tax registration reason code)KPPDetector
Labelled legal/business identifiersLegalIdentifierDetector
СНИЛС (RU personal pension number)SNILSDetector (checksum)
RU passport (series + number)PassportRuDetector
RU passport division code (NNN-NNN)PassportDivisionDetector
RU civil-act-record seriesCivilActSeriesRuDetector
US EIN (taxpayer ID)EINDetector
Mexican RFC / CURP / CLABERFCMxDetector, CURPDetector, CLABEDetector
Contract numbersContractNumberDetector

Crypto detectors

Cryptocurrency identifiers get their own CRYPTO token category and are enabled by default, like every other detector:

CategoryDetectorValidation
Wallet addressesCryptoWalletDetectorChecksum-validated BTC/TRON/XRP/LTC/DOGE (base58) and bech32/bech32m addresses; ETH/EVM by pattern; Solana is context-gated best effort
Transaction hashesCryptoTxHashDetector0x-prefixed hashes; bare 64-hex only with tx/hash context nearby
Private keys / extended keysCryptoSecretDetectorChecksum-validated WIF private keys and xprv/xpub extended keys

One OCR caveat: crypto is not detected on scanned pages. OCR confusions break base58/bech32 checksums, so wallet addresses and secrets in scanned images must be reviewed manually.

What is NOT detected

  • Free-form aliases or nicknames not seen in the NER training data
  • Handwritten names in scanned PDFs (printed scan text is OCR’d; handwriting remains unreliable)
  • Implicit references like “my client” or “the daughter of”
  • PII inside image attachments, logos, or signature blocks that are not part of a scanned PDF page
  • Crypto addresses and keys inside scanned images (OCR breaks their checksums)
  • IP addresses, MAC addresses, URLs — no dedicated detector in the current release

If something important is missed, see Reporting feedback.