Apa itu Generator Token Acak?

Hasilkan token acak dalam format hex, base64, alfanumerik, URL-safe, angka saja, dengan simbol, atau set karakter yang sepenuhnya kustom menggunakan Web Crypto API. Gunakan untuk kunci API, token sesi, token CSRF, PIN dan kode OTP numerik, serta tautan reset kata sandi yang membutuhkan keacakan kriptografis.

Semua byte berasal dari crypto.getRandomValues, sumber yang sama yang dipakai browser untuk membuat kunci TLS. Pilih panjang 16, 32, 48, 64, atau 128 byte mentah, dan panel entropi menampilkan berapa bit keacakan yang dihasilkan di format pilihanmu. Bisa membuat hingga 20 token sekaligus dan diunduh sebagai .txt untuk distribusi massal.

Cara menggunakan

  1. Pilih format token (hex, base64, alfanumerik, URL-safe, angka saja, dengan simbol, atau karakter kustom Anda sendiri) dan panjang yang diinginkan.
  2. Klik tombol generate untuk membuat token acak yang aman secara kriptografis dalam sekejap.
  3. Salin token atau buat beberapa token sekaligus untuk penggunaan massal.

Kapan menggunakan

  • Menerbitkan API key, secret untuk menandatangani webhook, atau token auth antar layanan.
  • Membuat tautan reset kata sandi, token konfirmasi email, atau URL login sekali pakai.
  • Mengisi data uji dengan ID acak realistis yang tidak bentrok.

Hasil

Hasilkan token hex 256-bit (64 karakter) untuk digunakan sebagai kunci API: 'a3f8b2c1d4e5f6...', dengan entropi penuh dari crypto.getRandomValues.

FAQ

Berapa entropi yang sebenarnya dibutuhkan sebuah API key?
128 bit adalah batas minimum praktis untuk kredensial jangka panjang dan brute force jauh di luar jangkauan. Untuk kunci tanda tangan atau operasi kriptografi pakai 32 byte (256 bit). 16 byte cukup untuk token sesi yang cepat kedaluwarsa.
Apa beda format base64 dan URL-Safe?
Base64 memakai + dan / serta padding =, yang rusak begitu ditempel ke URL atau nama berkas. URL-Safe menggantinya dengan - dan _ serta menghilangkan padding. Token yang masuk ke query string, path, atau header HTTP sebaiknya pakai URL-Safe.
Kenapa entropi format alfanumerik lebih rendah daripada hex pada jumlah byte yang sama?
Hex dan base64 menaruh seluruh 8 bit per byte langsung ke karakter. Alfanumerik memetakan tiap byte ke salah satu dari 62 karakter via modulo, kehilangan sekitar 2 bit per byte dan membawa sedikit bias. Cocok untuk ID, lemah untuk secret kripto.
Apakah Math.random() bisa dipakai sebagai cadangan kalau Web Crypto tidak tersedia?
Tidak. Math.random() adalah PRNG yang bisa diprediksi; penyerang yang melihat beberapa keluaran bisa menghitung yang berikutnya. Web Crypto ada di semua browser sejak 2014 dan di Node.js modern. Kalau tidak ada, jangan bangkitkan secret-nya.
Mungkinkah token yang sama muncul dua kali di aplikasi saya?
Pada 16 byte, kamu harus menerbitkan sekitar 2^64 token sebelum tabrakan mulai mungkin (batas ulang tahun). Untuk beban kerja nyata sampai miliaran token, tabrakan secara statistik nol dan tidak perlu pengecekan keunikan.

Alat terkait