paymetrust/laravel-data-encryption

一个使用RSA密钥进行数据加密和解密的Laravel包

1.0.2 2024-07-04 11:55 UTC

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

如何使用

  1. 首先生成RSA密钥。您需要生成一个公钥和一个私钥。为此,请按照以下说明操作
openssl genrsa -out private.key 2048
openssl rsa -in private.key -pubout -out public.key

然后,您可以将您的私钥和公钥存储在Laravel应用程序的存储目录中的任何子文件夹或直接在文件夹的根目录中。

  1. 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'),
  1. 加密和解密数据 现在您可以使用该包来加密和解密JSON数据。以下是一个示例操作

加密

此方法如果您想加密JSON数据非常有用。例如,如果您在数据库中存储数据,如令牌或格式为JSON字符串的密钥,为了数据完整性,隐藏这些信息将很有用。

DataEncryption::encrypt($jsonString, config('app.ssl_public_key_path'));

解密

DataEncryption::decrypt($encryptedString, config('app.ssl_private_key_path'));