Download the PHP package weichie-com/blur without Composer

On this page you can find all versions of the php package weichie-com/blur. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package blur

Blur

PHP Version

A data protection and de-identification SDK for BeNeLux (Belgium, Netherlands, Luxembourg) and US identifiers, inspired by Microsoft Presidio.


Features

Installation

Install via Composer:

Or add to your composer.json:

Requirements

Quick Start

Usage Examples

1. Detecting BeNeLux National IDs

2. Detecting IBAN Codes

3. Multiple Anonymization Strategies

4. Context Enhancement

Boost detection confidence when context keywords appear near entities:

5. Entity Filtering

Detect only specific entity types:

6. Allow List

Whitelist specific values to ignore:

Supported Recognizers

BeNeLux-Specific

Entity Type Description Validation Country
NL_BSN Dutch Burgerservicenummer 11-proof checksum πŸ‡³πŸ‡± NL
BE_NATIONAL_NUMBER Belgian National Number mod-97 checksum πŸ‡§πŸ‡ͺ BE
LU_NATIONAL_ID Luxembourg National ID Date validation πŸ‡±πŸ‡Ί LU
IBAN_CODE IBAN (BE/NL/LU) mod-97 checksum πŸ‡§πŸ‡ͺπŸ‡³πŸ‡±πŸ‡±πŸ‡Ί
PHONE_NUMBER Phone numbers libphonenumber πŸ‡§πŸ‡ͺπŸ‡³πŸ‡±πŸ‡±πŸ‡Ί

US-Specific

Entity Type Description Validation Country
US_SSN Social Security Number Area/group/serial rules πŸ‡ΊπŸ‡Έ US
US_ITIN Individual Taxpayer ID Format + digit ranges πŸ‡ΊπŸ‡Έ US
US_PASSPORT Passport Number Pattern (context-boosted) πŸ‡ΊπŸ‡Έ US
US_DRIVER_LICENSE Driver License Multi-state patterns πŸ‡ΊπŸ‡Έ US
US_BANK_NUMBER Bank Account Number Pattern (context-boosted) πŸ‡ΊπŸ‡Έ US
US_ABA_ROUTING ABA Routing Number Weighted checksum (mod 10) πŸ‡ΊπŸ‡Έ US

Generic

Entity Type Description Validation
EMAIL_ADDRESS Email addresses RFC validation
CREDIT_CARD Credit card numbers Luhn checksum
IP_ADDRESS IPv4/IPv6 addresses IP validation
URL URLs URL validation

Supported Operators

Operator Description Parameters
replace Replace with custom value new_value
redact Remove completely None
mask Partial/full masking masking_char, chars_to_mask, from_end
hash SHA-256/SHA-512 hashing algorithm (default: sha256)
encrypt AES-256-CBC encryption key
decrypt AES-256-CBC decryption key

Validation Algorithms

Luhn Checksum (Credit Cards)

Used to validate credit card numbers. Prevents false positives from random digit sequences.

Mod-97 Checksum (IBAN, Belgian National Number)

ISO 7064 mod-97 algorithm for IBAN codes and Belgian National Numbers.

11-Proof Checksum (Dutch BSN)

Dutch "elfproef" (11-check) algorithm for validating BSN numbers.

ABA Routing Checksum (US ABA Routing)

Weighted sum mod-10 algorithm (weights: 3, 7, 1) for validating US ABA routing numbers.

Architecture

Design Principles

  1. Simple but Complete: Focus on core functionality without ML/NLP complexity
  2. Pattern-Based: Fast regex matching with validation for accuracy
  3. Type-Safe: PHP 8.1+ with strict types throughout
  4. UTF-8 First: Proper multibyte string handling everywhere
  5. Extensible: Easy to add custom recognizers and operators
  6. Immutable Results: Thread-safe result objects

Performance

Examples

See examples/benelux_example.php for a comprehensive demonstration including:

Run it:

Contributing

Contributions are welcome! To add support for additional countries:

  1. Create a recognizer in src/Analyzer/Recognizers/CountryName/
  2. Extend PatternRecognizer or implement EntityRecognizer
  3. Add validation logic (checksum, format, etc.)
  4. Include context words in local language(s)
  5. Add tests and examples

License

MIT License - See LICENSE file for details

Credits

This project is inspired by Microsoft Presidio. Special thanks to the Presidio team for their excellent work on PII detection and de-identification.

Roadmap

Support

For issues, questions, or contributions, please visit the GitHub repository.


All versions of blur with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
ext-mbstring Version *
ext-openssl Version *
giggsey/libphonenumber-for-php Version ^8.13
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package weichie-com/blur contains the following files

Loading the files please wait ...