laravel - 除了标准 AES-128、AES-256 之外,我如何在 Laravel 中使用其他密码?

标签 laravel encryption lumen

我想使用除 AES-128/AES-256 之外的其他密码,这些密码被标准硬编码到 \vendor\laravel\lumen-framework\config\app.php 甚至 EncrypterMcryptEncrypter 使用这些。

我必须进行更改以便它可以使用其他支持的密码/模式,提供的文档没有任何信息..

phpinfo()

mcrypt support  enabled
mcrypt_filter support   enabled
Version 2.5.8
Api No  20021217
Supported ciphers   cast-128 gost rijndael-128 twofish cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes arcfour
Supported modes cbc cfb ctr ecb ncfb nofb ofb stream

流明版本 5.1.*

最佳答案

您需要创建自己的 Illuminate\Contracts\Encryption\Encrypter 实现

为您的实现创建一个新的服务提供商。您可以遵循 Illuminate\Encryption\EncryptionServiceProvider 作为松散指南。

app/config.php 中的服务提供者 Illuminate\Encryption\EncryptionServiceProvider::class, 替换为您刚刚创建的服务提供者。

如果您没有更改 singleton() 函数中的第一个参数并将其保留为 encrypter,那么您需要做的就是这些。如果您确实修改了它,您还需要创建一个新的外观并更新 app/config.php 中的 aliases 数组。

关于laravel - 除了标准 AES-128、AES-256 之外,我如何在 Laravel 中使用其他密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33149364/

相关文章:

guzzle - base_uri 不是基于 guzzle 客户端实例化

php - 在 laravel 5 app.php 中使用 autoload psr-4 定义的命名空间给出未找到的错误

检查无线AP是否连接

algorithm - 如果要加密的字母数发生变化,Hill Cipher key 是否会有所不同?

laravel-5 - Laravel JobId 如何使用它来检查工作是否完成

javascript - 如何检查 JWT token 有效性

Laravel “CSRF token mismatch” 用于带有 Laravel-cors 和 axios 的 POST

php - Laravel Eloquent 加入奇怪的查询

php - Laravel Homestead 安装 : bash init. sh 不工作

android - 我怎样才能让玩家更难破解游戏关卡数据?