PHPackages                             carnage/doctrine-encrypted-column - 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. [Database &amp; ORM](/categories/database)
4. /
5. carnage/doctrine-encrypted-column

ActiveLibrary[Database &amp; ORM](/categories/database)

carnage/doctrine-encrypted-column
=================================

Provides a secure way of transparently encrypting data in doctrine ORM

0.2.0(8y ago)36121[3 issues](https://github.com/carnage/doctrine-encrypted-column/issues)MITPHPPHP ^7.0

Since Nov 3Pushed 8y ago2 watchersCompare

[ Source](https://github.com/carnage/doctrine-encrypted-column)[ Packagist](https://packagist.org/packages/carnage/doctrine-encrypted-column)[ RSS](/packages/carnage-doctrine-encrypted-column/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)Dependencies (6)Versions (4)Used By (0)

\#Doctrine Encryted Column [![Scrutinizer Code Quality](https://camo.githubusercontent.com/13648e34f77109e791ef0df78a0bdc2b6e1e4d0d6ce9e36aad77e17658f33b69/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6361726e6167652f646f637472696e652d656e637279707465642d636f6c756d6e2f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/?branch=master) [![Code Coverage](https://camo.githubusercontent.com/71305430905b95c03774de075b32c1ddacd408d873c3b46e5d21671ba2b55760/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6361726e6167652f646f637472696e652d656e637279707465642d636f6c756d6e2f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/?branch=master)

Motivation
==========

[](#motivation)

Currently there are about a dozen encrypted column extensions for doctrine. None of them are very well implemented and are thus insecure (eg using Pop-art mode (ECB) or auto decrypting data on load) most also are tied to a framework making them useless unless you use that framework.

This lib intends to resolve these two issues and provide an obvious choice library for anyone needing to encrypt data they are storing through doctrine ORM.

Every endeavour will be taken to ensure that future versions of this library will be able to read data encrypted with older versions and re-encrypt to take advantage of any security fixes or improvements. In the event that this isn't possible automatically, guidance will be provided to allow you to migrate your data manually, to ensure that this process is as smooth as possible, we suggest making a note of the versions of lib sodium, halite and this library that you initially install.

Features
========

[](#features)

- Encrypted column type for doctrine
- Functionally similar to object column type
- Transparent to end user
- Uses proxies to avoid decrypting data that isn't needed
- Best in class cryptography (LibSodium)

Pull requests
=============

[](#pull-requests)

I will accept pull requests for the following:

- New serialisation support (JMS is desirable here)
- Support for doctrine ODM
- Support for different crypto backends which use a good implementation (eg Zend crypt, defuse, easyrsa)
- bug fixes

I will not accept:

- Integration into &lt;&lt; your favorite framework &gt;&gt; create a lib for that which uses this and PR a link for the readme
- Support for poor crypto implementations (eg anything using mcrypt)

Security issues
===============

[](#security-issues)

You can use my keys from keybase  to contact me regarding any security issues.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~330 days

Total

2

Last Release

3146d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/aee2ff8ab8a5dc8e25d2d59d9402f0395ab411fa46d99c25991857bcafba0639?d=identicon)[carnage](/maintainers/carnage)

---

Top Contributors

[![carnage](https://avatars.githubusercontent.com/u/846596?v=4)](https://github.com/carnage "carnage (31 commits)")

---

Tags

doctrineencrypted-data

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/carnage-doctrine-encrypted-column/health.svg)

```
[![Health](https://phpackages.com/badges/carnage-doctrine-encrypted-column/health.svg)](https://phpackages.com/packages/carnage-doctrine-encrypted-column)
```

###  Alternatives

[kimai/kimai

Kimai - Time Tracking

4.6k7.4k1](/packages/kimai-kimai)[scienta/doctrine-json-functions

A set of extensions to Doctrine that add support for json query functions.

58523.9M36](/packages/scienta-doctrine-json-functions)[damienharper/auditor-bundle

Integrate auditor library in your Symfony projects.

4542.8M](/packages/damienharper-auditor-bundle)[sonata-project/entity-audit-bundle

Audit for Doctrine Entities

644989.8k1](/packages/sonata-project-entity-audit-bundle)[ecodev/graphql-doctrine

Declare GraphQL types from Doctrine entities and attributes

102147.9k4](/packages/ecodev-graphql-doctrine)[concrete5/core

Concrete core subtree split

19159.3k48](/packages/concrete5-core)

PHPackages © 2026

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