Pack Camo

Generator JWT Secret

Kunci rahasia HS256, HS384, dan HS512 acak dalam hex atau Base64, siap untuk .env Anda. Semuanya berjalan di perangkat Anda — tidak ada yang diunggah.

Masuk
HS256 · HS384 · HS512
Keluar
Hex · Base64 · Base64URL · .env

HS256 membutuhkan minimal 32 byte.

Rahasia Anda

Kunci 256 bit · HS256 · 0 karakter

Baris .env

JWT_SECRET=
Uji di JWT Decoder

Dibuat di perangkat Anda dengan crypto.getRandomValues. Tidak ada yang dikirim atau disimpan.

Rahasia yang layak untuk menandatangani

JWT yang ditandatangani dengan HMAC hanya sekuat rahasianya. Siapa pun yang berhasil menebaknya dapat membuat token yang akan dipercaya server Anda, dan rahasia yang pendek atau dipilih manusia adalah hal pertama yang dicoba alat pembobol offline. Generator ini mengambil kunci dari pembangkit angka acak kriptografis di browser Anda, dengan panjang yang dibutuhkan algoritma.

Seberapa panjang rahasia sebaiknya

  • HS256 membutuhkan minimal 32 byte (256 bit). Yang lebih pendek lebih lemah daripada hash yang dipasangkan dengannya, dan banyak library menolaknya.
  • HS384 membutuhkan minimal 48 byte (384 bit).
  • HS512 membutuhkan minimal 64 byte (512 bit).
  • Lebih panjang tidak masalah. Kunci yang lebih panjang dari ukuran blok hash akan di-hash terlebih dahulu, jadi tidak ada gunanya melebihi 64 byte untuk HS256 atau 128 byte untuk HS512.

Menggunakan rahasia

  • Jauhkan dari kode Anda. Simpan di variabel lingkungan atau secrets manager; "Salin sebagai .env" memberi Anda barisnya siap ditempel.
  • Perhatikan encoding. Sebagian library menerima rahasia sebagai teks, yang lain mengharapkan byte mentah dalam Base64. Jika Anda mendekodenya menjadi byte, pilih Base64 atau Base64URL di sini; jika library Anda memakai string apa adanya, hex adalah pilihan paling aman.
  • Mengganti rahasia membuat semua orang keluar. Setiap token yang ditandatangani dengan rahasia lama tidak lagi lolos verifikasi, jadi rencanakan penggantian dan jangan terburu-buru.
  • Uji sebelum deploy. "Uji di JWT Decoder" membuka decoder dengan contoh token yang ditandatangani dengan rahasia ini, sehingga Anda bisa melihat seperti apa tanda tangan yang valid.

Pertanyaan yang sering diajukan

Bagaimana cara membuat kunci rahasia JWT?
Pilih algoritma yang dipakai server Anda, dan rahasia dengan panjang yang tepat langsung dibuat. Pilih encoding yang diharapkan library Anda, lalu salin rahasia atau baris .env yang sudah jadi. Tekan Buat ulang untuk mendapatkan yang baru.
Berapa panjang rahasia JWT untuk HS256?
Minimal 32 byte, yaitu 256 bit: 64 karakter hex atau 43 karakter Base64URL. Rahasia yang lebih pendek lebih lemah daripada hash SHA-256 yang dipakai bersamanya.
Apakah aman membuat rahasia di browser?
Ya. Kunci berasal dari crypto.getRandomValues, pembangkit kriptografis yang sama yang dipakai browser untuk TLS, dan dibuat di perangkat Anda. Kunci tidak dikirim ke server, dicatat, atau disimpan.
Sebaiknya pakai hex atau Base64 untuk rahasia JWT?
Keduanya berisi byte acak yang sama. Hex paling aman jika library Anda memperlakukan rahasia sebagai teks biasa; Base64 atau Base64URL tepat jika library Anda mendekode rahasia menjadi byte mentah terlebih dahulu, seperti yang diminta banyak opsi konfigurasi.
Bisakah saya memakai kata sandi sebagai rahasia JWT?
Sebaiknya jangan. Kata sandi pendek dan mudah ditebak dibandingkan 32 byte acak, dan siapa pun yang memegang salah satu token Anda bisa mencoba menebak rahasianya secara offline, secepat yang diizinkan perangkat kerasnya.