Laravel APP_KEY generátor

Érvényes Laravel APP_KEY (base64:) generálása a .env fájlhoz, kizárólag a böngésződben.

A kulcs a te gépeden, a böngésződben generálódik, sosem hagyja el a böngésződet.

Algoritmus (cipher)

A Laravel alapértelmezett ciphere az AES-256-CBC, ehhez 32 bájtos kulcs kell. Csak akkor válassz AES-128-at, ha a config/app.php cipher beállítását is arra állítottad.

A Laravel APP_KEY generátor egy érvényes alkalmazáskulcsot állít elő a Laravel projekted számára, ugyanabban a formátumban, amit a `php artisan key:generate` is létrehoz: a `base64:` előtag után 32 (AES-256) vagy 16 (AES-128) kriptográfiailag biztonságos véletlen bájt base64-kódolva. Ezt a kulcsot a `.env` fájl `APP_KEY` sorába kell beilleszteni; a Laravel ezzel titkosítja a sütiket, a session adatokat és minden `Crypt`-tel kódolt értéket. Fontos: a kulcs teljesen a böngésződben generálódik, sosem hagyja el a gépedet és nem kerül a szerverre. Éles környezetben sose oszd meg és sose commitold verziókezelőbe az APP_KEY-t.

Hogyan működik

Az eszköz a böngésző kriptográfiai véletlenforrásával (crypto.getRandomValues) generál 32 (AES-256) vagy 16 (AES-128) véletlen bájtot, base64-kódolja, és elé teszi a Laravel által elvárt `base64:` előtagot. A kész kulcsot a Másolás gombbal egy kattintással a vágólapra teheted, vagy a teljes `APP_KEY=…` sort átmásolhatod a `.env` fájlba. Az „Új kulcs” gombbal bármikor friss kulcsot generálhatsz.

Mikor használd

Akkor hasznos, amikor egy új Laravel projektet állítasz be és üres az `APP_KEY`, amikor egy lemásolt (klónozott) repóhoz kell saját kulcs, vagy amikor egy környezethez (pl. staging, production, CI) külön kulcsot szeretnél anélkül, hogy artisan parancsot kellene futtatnod. Minden környezethez érdemes külön kulcsot használni.

Mire kell az APP_KEY

A Laravel az APP_KEY-t használja a titkosító (encrypter) kulcsaként: ezzel titkosítja a sütiket, a session payloadot és minden `Crypt::encrypt()`-tel kódolt értéket. Ha élesben lecseréled a kulcsot, a régi kulccsal titkosított sütik és session-ök érvénytelenné válnak (a felhasználók kijelentkeznek). A kulcsot ezért érdemes környezeti változóként, biztonságosan tárolni, és nem verziókezelőbe tenni.

Gyakori kérdések

Felmegy a generált kulcs a szerverre?
Nem, a kulcs a böngésződben, a gépeden generálódik a kriptográfiailag biztonságos véletlenszám-generátorral (crypto.getRandomValues), és sosem kerül a szerverre.
Ugyanaz, mint amit a php artisan key:generate készít?
Igen, a formátum azonos: `base64:` előtag, majd 32 véletlen bájt (AES-256 esetén) base64-kódolva. Ezt közvetlenül beillesztheted a `.env` fájl APP_KEY sorába.
AES-256 vagy AES-128 kulcsot válasszak?
A Laravel alapértelmezett ciphere az AES-256-CBC, amelyhez 32 bájtos kulcs kell — a legtöbb projekthez ezt válaszd. AES-128 kulcsot csak akkor használj, ha a config/app.php cipher beállítását is kifejezetten AES-128-ra állítottad.

Útmutatók

Kapcsolódó eszközök

  • Hash generátor (MD5 / SHA-256) — MD5 és SHA-256 hash (ujjlenyomat) generálása szövegből, helyes UTF-8 kezeléssel, kizárólag a böngésződben.
  • Jelszógenerátor — Biztonságos, erős jelszó generálása állítható hosszal és karakterkészletekkel, kizárólag a böngésződben.
  • UUID / GUID generátor — Véletlen UUID v4 (GUID) azonosítók generálása egyszerre többet is, egy kattintással másolva.
  • JSON formázó / validáló — JSON szépítése (behúzás), tömörítése és validálása szintaxis-kiemeléssel, kizárólag a böngésződben.
  • Base64 kódoló / dekódoló — Szöveg kódolása Base64-be és visszafejtése, helyes UTF-8 kezeléssel, kizárólag a böngésződben.
  • URL kódoló / dekódoló — Szöveg URL-kódolása (percent-encoding) és visszafejtése, helyes UTF-8 kezeléssel, kizárólag a böngésződben.

Beágyazás a saját oldaladra

Másold be ezt a kódot a weboldaladba, és a(z) Laravel APP_KEY generátor eszköz reszponzív, márkázott formában jelenik meg, visszalinkkel a Tooly-ra.

<iframe src="https://www.tooly.hu/beagyazas/laravel-app-key-generator" width="100%" height="560" loading="lazy" title="Laravel APP_KEY generátor – Tooly" style="border:0;max-width:100%;border-radius:12px"></iframe>