Laravel 应用程序密钥生成器
Laravel 应用程序密钥生成器 — 在您的设备上生成,从未传输。
Laravel APP_KEY
Paste into your .env:
这将创建 32 个随机字节,编码为 base64,并带有 base64: 前缀 — 逐字节格式 php artisan key:generate 写入您的 .env。由浏览器的 CSPRNG 在本地生成。
常见问题解答
在网站上生成密钥安全吗?
它就在这里,因为没有任何内容被传输。密钥由您自己的浏览器内的 crypto.getRandomValues 生成(与您的操作系统使用的加密生成器相同),并且永远不会接触网络。您可以断开互联网连接,该页面仍然有效,这是证明这一点的最简单方法。
为什么 Laravel APP_KEY 必须有一个 base64: 前缀?
Laravel 检查该前缀以了解该值是 Base64 编码的而不是原始字符串,并对其进行解码以获取 AES 密码所需的 32 个原始字节。如果没有它,Laravel 使用文字字符作为键,这是错误的长度并引发错误。
我应该为每个环境使用不同的密钥吗?
是的。开发、登台和制作都必须有自己的密钥。共享意味着任何地方的泄漏都会导致任何地方的泄露,并且它允许在生产环境中重放在暂存阶段铸造的代币。
密钥应该存储在哪里?
在环境变量或机密管理器中,绝不在源代码控制中。在第一次提交之前将 .env 文件添加到 .gitignore — 一旦秘密存在于 git 历史记录中,稍后将其删除并不会泄露它,并且必须轮换密钥。
这适用于 Windows、Mac、iPhone 和 Android 吗?
是的。它可以在 Windows、Mac、Linux、iPhone 和 Android 上的任何现代浏览器中运行,无需安装任何内容,也无需帐户。 Chrome、Edge、Firefox 和 Safari 均受支持。