paymetrust / laravel-data-encryption
一个使用RSA密钥进行数据加密和解密的Laravel包
1.0.2
2024-07-04 11:55 UTC
Requires
- php: ^8.1
- illuminate/support: ^9.0|^10.0
This package is not auto-updated.
Last update: 2024-09-26 13:12:50 UTC
README
一个使用RSA对密钥进行json数据加密和解密的Laravel包。
安装
您可以通过Composer安装此包
composer require paymetrust/laravel-data-encryption
如何使用
- 首先生成RSA密钥。您需要生成一个公钥和一个私钥。为此,请按照以下说明操作
openssl genrsa -out private.key 2048 openssl rsa -in private.key -pubout -out public.key
然后,您可以将您的私钥和公钥存储在Laravel应用程序的存储目录中的任何子文件夹或直接在文件夹的根目录中。
- Laravel项目配置 生成并存储密钥后,现在您需要将以下两个变量添加到环境文件中:SSL_PUBLIC_KEY_PATH="your/storage/path/file.key" 和 SSL_PRIVATE_KEY_PATH="your/storage/path/file.key"。完成此操作后,将这些配置添加到您的config/app.php文件中,以便包可以考虑到这些配置。
'ssl_public_key_path' => env('SSL_PUBLIC_KEY_PATH'), 'ssl_private_key_path' => env('SSL_PRIVATE_KEY_PATH'),
- 加密和解密数据 现在您可以使用该包来加密和解密JSON数据。以下是一个示例操作
加密
此方法如果您想加密JSON数据非常有用。例如,如果您在数据库中存储数据,如令牌或格式为JSON字符串的密钥,为了数据完整性,隐藏这些信息将很有用。
DataEncryption::encrypt($jsonString, config('app.ssl_public_key_path'));
解密
DataEncryption::decrypt($encryptedString, config('app.ssl_private_key_path'));