exonet / securemessage
以安全的方式加密和解密消息。
v1.0.2
2022-02-02 09:49 UTC
Requires
- php: ^7.3|^8.0
Requires (Dev)
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9
This package is auto-updated.
Last update: 2024-09-05 09:20:53 UTC
README
本包允许创建(非常)安全的消息并将它们存储在,例如,您的数据库中。安全消息使用三个密钥部分的组合加密:
- “数据库密钥”——需要存储在数据库中。
- “存储密钥”——需要存储在磁盘/文件系统中。
- “验证码”——此代码不应存储在任何地方。
这样,如果攻击者可以访问数据库,他们仍然只能访问完整密钥的一小部分。如果攻击者可以访问文件存储,也是如此。即使攻击者可以访问数据库和文件存储,完整的密钥仍然缺失。
验证码可以(安全地)发送给安全消息的接收者,并且使用此代码可以解密消息并读取它。
要求
本包需要至少PHP 7.3,并且必须启用sodium扩展。
安装
通过Composer
$ composer require exonet/securemessage
用法
// Create the factory. $secureMessageFactory = new Exonet\SecureMessage\Factory(); // Set the (application wide) meta key. $secureMessageFactory->setMetaKey('A_10_random_characters_long_key.'); // Create a new SecureMessage. Note: it is not encrypted yet! $secureMessage = $secureMessageFactory->make('Hello, world!'); // Encrypt the Secure Message. $encryptedMessage = $secureMessage->encrypt();
请参阅/docs
文件夹以获取完整的文档和更多示例。
变更日志
请参阅发布以获取有关最近更改的更多信息。
测试
$ composer test
贡献
请参阅CONTRIBUTING和CODE_OF_CONDUCT以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件development@exonet.nl而不是使用问题跟踪器。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。