smakecloud/laravel-sodium

v0.0.2 2023-06-21 12:35 UTC

This package is not auto-updated.

Last update: 2024-09-26 16:21:41 UTC


README

phpunit phpstan

使用 PHP 的 Sodium 扩展来加密、解密、签名和验证数据。

注意 包名是为了可发现性而选择的。它与 Laravel 无关。

支持的加密算法包括

支持的签名算法包括

签名密钥对使用 app.key 生成,用于 播种

警告 此包覆盖了 Laravel 的 Encrypter 类!

您将失去以下密码的以下支持

  • AES-128-CBC
  • AES-256-CBC
  • AES-128-GCM

目录

要求

  • PHP 8.1+
  • Sodium 扩展(显然)

安装

您可以通过 composer 安装此包

composer require smakecloud/laravel-sodium

此包使用 Laravel 的自动发现功能。安装后,包提供者和外观立即可用。

使用

此包覆盖了 Laravel 的 Encrypter 类。您可以使用它就像使用默认的 Encrypter 类一样。

您可以在

config/app.php

return [
    //...

    'cipher' => 'XCha-Cha20-Poly1305',

    //...
]
$encrypted = encrypt('secret');
$decrypted = decrypt($encrypted); // 'secret'

$signed = sign('secret');
$verified = verify($signed); // 'secret'

$signature = sign_detached('secret');
$verified = verify_detached($signature, 'secret'); // true

开发

测试

composer test

覆盖率

composer test:coverage

静态分析

composer phpstan

代码风格

composer lint(:fix)

免责声明

中更改默认密码

在开始使用此包之前,请阅读 PHP sodium 扩展的文档!

我们不承担此包造成的任何损坏的责任。

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件