【问题标题】:How can I change default cookie encryption to more secured encryption in laravel?如何在 laravel 中将默认 cookie 加密更改为更安全的加密?
【发布时间】:2021-10-10 15:32:34
【问题描述】:

我是 laravel 开发的新手,我想将默认 base_64 cookie 加密更改为更安全的 AES-256-CBC 或任何其他更安全的加密。

【问题讨论】:

  • 我对 Laravel 一无所知,但 Base64 与加密没有任何关系,就像 @ 不是加密的 @ 一样。
  • 永远不要碰安全 - 许多来自社区的聪明人在 Laravel 致力于此 - 你不能比社区更聪明:)

标签: php laravel security encryption session-cookies


【解决方案1】:

Laravel 默认加密和解密所有 cookie,它使用 OpenSSL 使用 AES-256 和 AES-128 加密来实现这一点。 Base64 无论如何都不是一种加密方法,它只是一种编码方案。任何人都可以将任何数据编码为 base64 并将其解码回来;这不是加密。加密需要一种方法和一个安全密钥(或密钥对)。所以;如果您没有正确的密钥并且知道正确的方法,您将无法解密加密的数据。对于编码数据,这不是一回事,任何人都可以解码 base64 编码字符串。加密是为了安全存储和传输,另一方面编码只是为了使任何数据都可以以文本格式存储和传输。

Laravel 使用 APP_KEY env 值确保每个不同的 Laravel 应用程序使用不同的加密密钥。

检查 Laravel Cookie 和加密:https://laravel.com/docs/8.x/responses#cookies-and-encryption

默认情况下,Laravel 生成的所有 cookie 都经过加密和签名,因此客户端无法修改或读取它们。

同时检查 Laravel 加密:https://laravel.com/docs/8.x/encryption

Laravel 的加密服务提供了一个简单方便的接口,用于通过 OpenSSL 使用 AES-256 和 AES-128 加密来加密和解密文本。 Laravel 的所有加密值都使用消息验证码 (MAC) 进行签名,因此它们的底层值一旦加密就不能被修改或篡改。

因此,您可以安全地使用 Laravel 加密并且已经使用 AES-256 和 AES-128 加密。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-17
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2017-07-06
    相关资源
    最近更新 更多