carnage / doctrine-encrypted-column
为 doctrine ORM 提供了一种安全地透明加密数据的方法
0.2.0
2017-09-29 21:24 UTC
Requires
- php: ^7.0
- doctrine/orm: ^2.5
- ocramius/proxy-manager: ^1.0.2
- paragonie/halite: ^2.0
- phpseclib/phpseclib: ~2.0
- psr/container: ^1.0
Requires (Dev)
- phpunit/phpunit: ^5
This package is auto-updated.
Last update: 2024-09-16 03:08:46 UTC
README
动机
目前大约有十多种 doctrine 的加密列扩展。它们都没有很好地实现,因此不安全(例如使用 Pop-art 模式(ECB)或自动在加载时解密数据),大多数也绑定到框架,除非您使用该框架,否则它们将毫无用处。
这个库旨在解决这两个问题,并为任何需要通过 doctrine ORM 存储加密数据的用户提供一个明显的选择库。
将尽一切努力确保此库的将来版本能够读取使用旧版本加密的数据,并重新加密以利用任何安全修复或改进。如果无法自动实现,将提供指导,以便您手动迁移数据,以确保此过程尽可能顺利,我们建议记录您最初安装的 lib sodium、halite 和此库的版本。
功能
- doctrine 的加密列类型
- 功能上类似于对象列类型
- 对最终用户透明
- 使用代理以避免解密不需要的数据
- 一流的加密(LibSodium)
拉取请求
我将接受以下拉取请求
- 新的序列化支持(JMS 是这里的首选)
- 对 doctrine ODM 的支持
- 对不同加密后端的支持,这些后端使用良好的实现(例如 Zend crypt,defuse,easyrsa)
- 错误修复
我将不接受
- 集成到 <<您喜欢的框架>> 为此创建一个库,并为此库提交一个链接到 readme 的 PR
- 对较差的加密实现的支持(例如使用 mcrypt 的任何内容)
安全问题
您可以使用我在 keybase 上的密钥 https://keybase.io/carnage 与我联系有关任何安全问题。