The MAC is invalid

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了The MAC is invalid脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

在使用laravel框架进行网站开发时,我们会使用laravel的Crypt类对用户的密码进行加密来达到信息加密的目的,Crypt类会对数据加密时会依赖APP_KEY,所以当更换了APP_KEY时,再在登陆校验时使用Crypt::decrypt()函数时,会报The MAC is invalid.的错误

所以解决的办法就是通过原来的APP_KEY解密获取用户最原始的数据,然后把用户数据按照新的APP_KEY重新加密存入数据库

手册说明如下: 设置: 在使用 Laravel 的加密功能前,你需要先为 config/app.PHP配置文件中的 APP_KEY参数设置一个值,这个值是一个包含 32 个随机字符的字符串。如果这个值没有正确设置,所有由 Laravel 加密的数据都是不安全的。 基本用法: 通过 Crypt faCADe 可以加密一段数据。所有加密采用的都是 OPEnSSL 和 AES-256-CBC cipher。并且,所有加密过的数据都会被赋予一个“信息验证码”(MAC),以被加密后所得到的字符串被篡改。

由此说明encrypt生成的值和APP_KEY有关,并且加密数据后会赋予一个mac用在解密时的安全验证,由于项目更换环境后需要重新生成APP_KEY,所以之前生成的数据在新的环境无法解密

以上报错说MAC值无效并不是计算机mac地址,而是laravel的encrypt加密与其app_key有关,并且为每一个数据赋予了一个特殊的mac验证码

更换环境后需要先重新生成APP_KEY,然后数据库中使用encrypt加密数据需要重新加密。

脚本宝典总结

以上是脚本宝典为你收集整理的The MAC is invalid全部内容,希望文章能够帮你解决The MAC is invalid所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: