laravel如何修改默认的加密与解密方式?

Song1734 次浏览0个评论2018年02月26日
Laravel默认是使用OpenSSL来提供AES-256和AES-128的加密。默认我们采用的是AES-256的加密方式;但是有时候我们会需要修改加密方式如何解决呢? 一、在config/app.php下找到如下配置: 'cipher'='AE

Laravel默认是使用OpenSSL来提供AES-256AES-128的加密。默认我们采用的是AES-256的加密方式;但是有时候我们会需要修改加密方式如何解决呢?

一、在config/app.php下找到如下配置:

'cipher' => 'AES-256-CBC',

修改为如下加密方式

'cipher' => 'AES-128-CBC',

二、在.env中修改成APP_KEY

修改后我们需要重新在.env中重新生成APP_KEY,否则会出现加密/解密错误

php artisan key:generate

如果修改为AES-128-CBCAPP_KEY会变短很多,此时key选项变为24位,否则key选项为32位随机字符串。

三、laravel解决The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths.

当我们使用laravel加密解密时,出现The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths.错误,怎么解决呢?

1、导致原因:

  • 修改了.env下的APP_KEY
  • 修改了config/app.php下的'cipher' => 'AES-256-CBC',

2、解决办法:重新生成Key

php artisan key:generate
请登录后评论
    当前暂无评价,快来发表您的观点吧...
    公告提示
    本站主要用于学习交流Laravel技术,分享Laravel优秀案例;同时非常欢迎大家投稿哦!如果有招聘信息也可以联系我我帮忙发布哦!