{"id":33139356,"url":"https://github.com/carnage/doctrine-encrypted-column","last_synced_at":"2026-01-11T11:51:52.945Z","repository":{"id":62499793,"uuid":"67874538","full_name":"carnage/doctrine-encrypted-column","owner":"carnage","description":"Provides a secure way to encrypt data in doctrine. Framework agnostic, Libsodium. ","archived":false,"fork":false,"pushed_at":"2017-09-29T21:25:12.000Z","size":40,"stargazers_count":35,"open_issues_count":3,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-09T15:37:58.111Z","etag":null,"topics":["doctrine","encrypted-data"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/carnage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-09-10T14:09:47.000Z","updated_at":"2024-12-03T20:35:47.000Z","dependencies_parsed_at":"2022-11-02T09:46:33.809Z","dependency_job_id":null,"html_url":"https://github.com/carnage/doctrine-encrypted-column","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/carnage/doctrine-encrypted-column","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carnage%2Fdoctrine-encrypted-column","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carnage%2Fdoctrine-encrypted-column/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carnage%2Fdoctrine-encrypted-column/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carnage%2Fdoctrine-encrypted-column/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carnage","download_url":"https://codeload.github.com/carnage/doctrine-encrypted-column/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carnage%2Fdoctrine-encrypted-column/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":285375203,"owners_count":27161007,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-20T02:00:05.334Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["doctrine","encrypted-data"],"created_at":"2025-11-15T12:00:26.553Z","updated_at":"2025-11-20T05:02:34.667Z","avatar_url":"https://github.com/carnage.png","language":"PHP","funding_links":[],"categories":["Related Projects"],"sub_categories":[],"readme":"#Doctrine Encryted Column\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/?branch=master) [![Code Coverage](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/carnage/doctrine-encrypted-column/?branch=master)\n\n# Motivation\n\nCurrently there are about a dozen encrypted column extensions for doctrine. None of them are very well implemented and are\nthus insecure (eg using Pop-art mode (ECB) or auto decrypting data on load) most also are tied to a framework making them\nuseless unless you use that framework.\n\nThis lib intends to resolve these two issues and provide an obvious choice library for anyone needing to encrypt data they\nare storing through doctrine ORM.\n\nEvery endeavour will be taken to ensure that future versions of this library will be able to read data encrypted with\nolder versions and re-encrypt to take advantage of any security fixes or improvements. In the event that this isn't\npossible automatically, guidance will be provided to allow you to migrate your data manually, to ensure that this process\nis as smooth as possible, we suggest making a note of the versions of lib sodium, halite and this library that you initially\ninstall.\n\n# Features\n\n- Encrypted column type for doctrine\n- Functionally similar to object column type\n- Transparent to end user\n- Uses proxies to avoid decrypting data that isn't needed\n- Best in class cryptography (LibSodium)\n\n# Pull requests\n\nI will accept pull requests for the following:\n\n- New serialisation support (JMS is desirable here)\n- Support for doctrine ODM\n- Support for different crypto backends which use a good implementation (eg Zend crypt, defuse, easyrsa)\n- bug fixes\n\nI will not accept:\n\n- Integration into \u003c\u003c your favorite framework \u003e\u003e create a lib for that which uses this and PR a link for the readme\n- Support for poor crypto implementations (eg anything using mcrypt)\n\n\n# Security issues\n\nYou can use my keys from keybase https://keybase.io/carnage to contact me regarding any security issues.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarnage%2Fdoctrine-encrypted-column","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarnage%2Fdoctrine-encrypted-column","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarnage%2Fdoctrine-encrypted-column/lists"}