PHPackages                             ecotone/data-protection - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. ecotone/data-protection

ActiveLibrary[Security](/categories/security)

ecotone/data-protection
=======================

Field-level encryption and PII masking for Ecotone messages — GDPR-friendly data protection with crypto-shredding.

1.320.0(yesterday)0101[1 PRs](https://github.com/ecotoneframework/data-protection/pulls)Apache-2.0PHPPHP ^8.2

Since Feb 7Pushed 1mo agoCompare

[ Source](https://github.com/ecotoneframework/data-protection)[ Packagist](https://packagist.org/packages/ecotone/data-protection)[ Docs](https://docs.ecotone.tech/)[ GitHub Sponsors](https://github.com/dgafka)[ RSS](/packages/ecotone-data-protection/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (44)Versions (35)Used By (0)

This is Read Only Repository
============================

[](#this-is-read-only-repository)

To contribute make use of [Ecotone-Dev repository](https://github.com/ecotoneframework/ecotone-dev).

[ ![](https://github.com/ecotoneframework/ecotone-dev/raw/main/ecotone_small.png?raw=true)](https://ecotone.tech)

[![Github Actions](https://github.com/ecotoneFramework/ecotone-dev/actions/workflows/split-testing.yml/badge.svg)](https://github.com/ecotoneFramework/ecotone-dev/actions/workflows/split-testing.yml/badge.svg)[![Latest Stable Version](https://camo.githubusercontent.com/6d3fefd097526666ca1a13fdfa023a2d467c0098ea4f7d560fdea28943d80540/68747470733a2f2f706f7365722e707567782e6f72672f65636f746f6e652f65636f746f6e652f762f737461626c65)](https://packagist.org/packages/ecotone/ecotone)[![License](https://camo.githubusercontent.com/0c825aa97178c47064bc47ec45c9d4148075c860403419e45dbabcb9050d510c/68747470733a2f2f706f7365722e707567782e6f72672f65636f746f6e652f65636f746f6e652f6c6963656e7365)](https://packagist.org/packages/ecotone/ecotone)[![Total Downloads](https://camo.githubusercontent.com/2aec5363d172979490a34009950f2a61290dbb48965361bcbfda9aa28504f7e7/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f65636f746f6e652f65636f746f6e65)](https://packagist.org/packages/ecotone/ecotone)[![PHP Version Require](https://camo.githubusercontent.com/b14eabeef1e6ee3612c8d62386855072c5fdad12affbbd987935c1397ebea214/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f65636f746f6e652f65636f746f6e652f7068702e737667)](https://packagist.org/packages/ecotone/ecotone)

**Ecotone is the PHP architecture layer that grows with your system — without rewrites.**

From `#[CommandHandler]` on day one, to event sourcing, sagas, outbox, and distributed messaging at scale — one package, same codebase, no forced migrations between growth stages. Declarative PHP 8 attributes on the classes you already have.

Data Protection
---------------

[](#data-protection)

Attribute-driven encryption and PII masking for Ecotone messages. Mark sensitive fields on commands, events, or queries and Ecotone handles protection transparently — in [message channels](https://ecotone.tech/asynchronous-communication), [event stores](https://ecotone.tech/event-sourcing), dead letter queues, and traces — without changing your handler code. See the [Data Protection module docs](https://docs.ecotone.tech/modules/data-protection) for setup and key management.

- **Field-level encryption** — sensitive fields encrypted in transit and at rest
- **PII masking** — configurable masking for logs and traces
- **Key management** — pluggable key providers for integration with your existing secrets store
- **GDPR / HIPAA support** — crypto-shredding for right-to-be-forgotten workflows

Visit [ecotone.tech](https://ecotone.tech) to learn more.

> Works with [Symfony](https://docs.ecotone.tech/modules/symfony-ddd-cqrs-event-sourcing), [Laravel](https://docs.ecotone.tech/modules/laravel-ddd-cqrs-event-sourcing), or any PSR-11 framework via [Ecotone Lite](https://docs.ecotone.tech/install-php-service-bus#install-ecotone-lite-no-framework).

Getting started
---------------

[](#getting-started)

See the [quickstart guide](https://docs.ecotone.tech/quick-start) and [reference documentation](https://docs.ecotone.tech). Read more on the [Ecotone Blog](https://blog.ecotone.tech).

AI-Ready documentation
----------------------

[](#ai-ready-documentation)

Ecotone ships with MCP server, Agentic Skills, and LLMs.txt for any coding agent. See the [AI Integration Guide](https://docs.ecotone.tech/other/ai-integration).

Feature requests and issue reporting
------------------------------------

[](#feature-requests-and-issue-reporting)

Use [issue tracking system](https://github.com/ecotoneframework/ecotone-dev/issues) for new feature request and bugs. Please verify that it's not already reported by someone else.

Contact
-------

[](#contact)

If you want to talk or ask questions about Ecotone

- [**Twitter**](https://twitter.com/EcotonePHP)
- ****
- [**Community Channel**](https://discord.gg/GwM2BSuXeg)

Support Ecotone
---------------

[](#support-ecotone)

If you want to help building and improving Ecotone consider becoming a sponsor:

- [Sponsor Ecotone](https://github.com/sponsors/dgafka)
- [Contribute to Ecotone](https://github.com/ecotoneframework/ecotone-dev).

Tags
----

[](#tags)

PHP, Data Protection, PII, GDPR, Encryption, Ecotone, Message Protection, Crypto-Shredding

###  Health Score

45

—

FairBetter than 91% of packages

Maintenance96

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 96.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

34

Last Release

1d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1b6139b0dc15c550b22c76954ec6a96ac6c46b4c19b4a3c1e93c2146481e109e?d=identicon)[dgafka](/maintainers/dgafka)

---

Top Contributors

[![ecotoneframework-bot](https://avatars.githubusercontent.com/u/174240763?v=4)](https://github.com/ecotoneframework-bot "ecotoneframework-bot (27 commits)")[![dgafka](https://avatars.githubusercontent.com/u/6060791?v=4)](https://github.com/dgafka "dgafka (1 commits)")

---

Tags

encryptionopensslgdprdata protectionpiiecotoneSensitive dataSecure Messagescrypto-shredding

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/ecotone-data-protection/health.svg)

```
[![Health](https://phpackages.com/badges/ecotone-data-protection/health.svg)](https://phpackages.com/packages/ecotone-data-protection)
```

###  Alternatives

[phpseclib/phpseclib

PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.

5.6k465.6M1.5k](/packages/phpseclib-phpseclib)[defuse/php-encryption

Secure PHP Encryption Library

3.9k175.2M254](/packages/defuse-php-encryption)[soved/laravel-gdpr

GDPR compliance with ease

299137.3k2](/packages/soved-laravel-gdpr)[mmeyer2k/dcrypt

A petite library of encryption functionality for PHP

98794.6k1](/packages/mmeyer2k-dcrypt)[acmephp/core

Raw implementation of the ACME protocol in PHP

411.0M8](/packages/acmephp-core)[vlucas/pikirasa

PKI public/private RSA key encryption using the OpenSSL extension

107105.0k1](/packages/vlucas-pikirasa)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
