Pembuat kata sandi

Buat kata sandi acak yang kuat dengan pilihan set karakter. Pembuat Kata Sandi menampilkan entropi dalam bit dan berjalan sepenuhnya di browser Anda.

Semua perhitungan dijalankan di browser. Tidak ada yang Anda masukkan yang dikirim ke server.

01 kalkulator

Hasil

    Mode
    Mode
    Kumpulan karakter
    Pengubah

    Pembuat Kata Sandi menghasilkan kata sandi acak dari set karakter yang Anda pilih dan melaporkan kekuatan setiap kata sandi dalam bit entropi, bukan label samar. Panjang berkisar 4 hingga 128 karakter, dengan opsi mengecualikan karakter ambigu dan tanda kurung, serta mode frasa sandi yang membentuk kata sandi multi-kata yang mudah diingat.

    Setiap kata sandi dibuat di browser menggunakan generator angka acak kriptografis sistem operasi. Tidak ada yang dikirim, dicatat, atau disimpan.

    Buat kata sandi acak

    Concept diagram: Masukan leads to Buat kata sandi acak leads to HasilMasukanBuat kata sandi acakHasil
    Buat kata sandi acak.

    Atur panjang, pilih set karakter sumber, dan generator langsung mengembalikan kata sandi. Buat ulang sebanyak yang Anda mau; setiap tekan memberi hasil baru dari pool yang sama, dan tidak ada yang direkam.

    Enam belas karakter dari keempat set adalah default wajar untuk apa pun yang melindungi uang atau identitas. Dua belas cukup jika layanan membatasi percobaan login. Di bawah dua belas, kata sandi hanya seaman pertahanan situs sendiri, dan itu tidak bisa Anda verifikasi.

    Panjang lebih penting daripada kompleksitas. Menambah satu karakter pada pool 94 karakter mengalikan ruang pencarian dengan 94. Menukar huruf kecil dengan simbol pada kata sandi panjang tetap jauh lebih sedikit dampaknya. Jika situs membatasi panjang kata sandi ke 16, gunakan semua 16.

    Pilih set karakter yang disertakan

    Concept diagram: Masukan leads to Pilih set karakter yang disertakan leads to HasilMasukanPilih set karakter yangdisertakanHasil
    Pilih set karakter yang disertakan.

    Empat set tersedia, dan setiap set yang diaktifkan memperlebar pool tempat setiap karakter diambil.

    SetKarakterJumlah
    Huruf kecila-z26
    Huruf besarA-Z26
    Angka0-910
    Simbol`!"#$%&'()*+,-./:;<=>?@[\]^_{\}~``32

    Keempat set memberi pool 94 karakter. Tiga modifier mempersempitnya:

    Kecualikan karakter ambigu menghapus i I l 1 L |, o O 0, dan tanda kutip serta tanda baca yang mirip. Berguna untuk kata sandi yang Anda baca di layar lalu ketik di perangkat lain, atau ucapkan lewat telepon. Entropi sedikit berkurang, tetapi frustrasi nyata terhindar.

    Kecualikan tanda kurung menghapus < > ( ) [ ] { }. Beberapa sistem lama menangani mereka salah di formulir login, dan beberapa lingkungan shell memperlakukan mereka khusus saat kata sandi dipakai dalam skrip.

    Tanpa karakter berulang menjamin setiap karakter muncul sekali. Ini terdengar lebih kuat dan sedikit lebih lemah: pool mengecil setiap karakter ditempatkan, dan panjang kata sandi dibatasi ukuran pool. Gunakan hanya jika kebijakan menuntutnya.

    Ada juga pilihan antara mengambil setiap karakter dari pool gabungan, atau menjamin minimal satu karakter dari setiap set terpilih. Opsi kedua ada karena banyak kebijakan kata sandi perusahaan mewajibkannya. Memaksa satu dari tiap set sedikit menurunkan entropi, karena beberapa kombinasi valid dihilangkan.

    Ukur kekuatan kata sandi dalam bit entropi

    Concept diagram: Masukan leads to Ukur kekuatan kata sandi dalam bit… leads to HasilMasukanUkur kekuatan katasandi dalam bit…Hasil
    Ukur kekuatan kata sandi dalam bit entropi.

    Entropi mengukur berapa tebakan yang dibutuhkan penyerang, dinyatakan sebagai pangkat dua. Ini satu-satunya cara bermakna untuk membandingkan kata sandi, karena pengukur yang menulis "kuat" tidak menjelaskan kuat terhadap apa.

    Entropi (bit) = panjang × log₂(ukuran pool)
    Kombinasi     = ukuran pool ^ panjang

    Bit bersifat aditif dan setiap bit menggandakan pekerjaan. Kata sandi 60 bit butuh waktu dua kali lipat untuk dipecahkan dibanding 59 bit, dan 1.024 kali lipat dibanding 50 bit. Itulah mengapa penambahan panjang kecil memberi peningkatan keamanan besar.

    Ambang kasar, dan alasan masing-masing penting:

    • Di bawah 40 bit: bisa dipecahkan dalam menit oleh siapa pun dengan GPU konsumen. Tidak cukup untuk hal yang penting.
    • 50 hingga 60 bit: menahan serangan kasual, runtuh pada serangan offline yang tekun. Cukup untuk login forum.
    • 70 hingga 80 bit: aman terhadap serangan offline realistis hari ini. Target wajar untuk kebanyakan akun.
    • Di atas 100 bit: di luar kemampuan brute-force perangkat keras yang terlihat. Cocok untuk kata sandi utama pengelola kata sandi dan kunci enkripsi.

    Hitung entropi kata sandi 16 karakter

    Concept diagram: Masukan leads to Hitung entropi kata sandi 16 karak… leads to HasilMasukanHitung entropi katasandi 16 karak…Hasil
    Hitung entropi kata sandi 16 karakter.

    Kata sandi 16 karakter dari keempat set membawa sekitar 105 bit entropi. Berikut aritmetiknya. 1. Jumlahkan pool. 26 huruf kecil + 26 huruf besar + 10 angka + 32 simbol = 94 karakter 2. Bit per karakter. log₂(94) = 6,55 bit

    3. Kalikan dengan panjang. 16 × 6,55 = 104,9 bit

    4. Nyatakan sebagai jumlah. 94¹⁶ ≈ 3,7 × 10³¹ kemungkinan kata sandi

    Perpendek ke 12 karakter dan entropi turun ke 78,6 bit, dengan 4,7 × 10²³ kombinasi. Masih kuat, dan kira-kira 68 miliar kali lebih mudah diserang dibanding versi 16 karakter. Hapus set simbol dari kata sandi 16 karakter dan pool turun ke 62, memberi 95,3 bit, kerugian lebih kecil dibanding memendek empat karakter.

    Perbandingan itu perlu dicermati. Menghapus empat karakter lebih mahal daripada menghapus seluruh set simbol. Panjang adalah tuas utamanya.

    Pahami berapa lama kata sandi dibobol

    Process with 3 steps: Enter how long a password takes…; Read the main result; Check the breakdown1Enter how long apassword takes…2Read the main result3Check the breakdown
    Pahami berapa lama kata sandi dibobol.

    Angka "waktu bobol" tunggal tidak bermakna tanpa menyebut serangannya. Kata sandi yang sama jatuh dalam detik atau bertahan lebih lama dari matahari sepenuhnya tergantung cara penyerang menebak, jadi generator melaporkan dua skenario dan menamai keduanya.

    Tebakan diharapkan = 2^(entropi − 1)
    Waktu               = tebakan diharapkan / tebakan per detik

    Serangan online, kira-kira 10³ tebakan per detik. Penyerang mengirim tebakan ke formulir login aktif. Pembatasan laju, penguncian, dan latensi jaringan membatasi kecepatan. Sebagian besar serangan nyata terhadap satu akun terlihat seperti ini, dan hampir semua kata sandi yang dihasilkan bertahan tanpa batas waktu.

    Serangan offline, kira-kira 10¹² tebakan per detik. Layanan bocor dan penyerang memegang hash kata sandi. Dengan kluster GPU dan hash cepat seperti MD5 atau SHA-1 tanpa salt, tebakan berjalan triliun per detik atau lebih. Ini skenario yang penting, karena yang tidak bisa Anda pengaruhi.

    Pada 10¹² tebakan per detik, kata sandi 78 bit butuh sekitar 4.800 tahun dan kata sandi 105 bit lebih lama dari usia alam semesta dengan banyak orde magnitud. Kata sandi 40 bit jatuh di bawah satu detik.

    Satu catatan yang angka ini sembunyikan: angka ini mengasumsikan penyerang menebak secara buta. Kata sandi dari kata, tanggal, atau pola keyboard jatuh jauh lebih cepat daripada jumlah karakter menunjukkan, karena penyerang menebak kandidat yang mungkin dulu. Itulah mengapa kata sandi di sini diambil secara acak, bukan dirangkai dari sesuatu yang mudah diingat.

    Gunakan frasa sandi, bukan string acak

    Concept diagram: Masukan leads to Gunakan frasa sandi, bukan string … leads to HasilMasukanGunakan frasa sandi,bukan string …Hasil
    Gunakan frasa sandi, bukan string acak.

    Frasa sandi adalah beberapa kata acak digabungkan. Entropinya mendekati string acak sambil tetap bisa diingat dan diketik, cocok untuk sedikit kata sandi yang tidak bisa disimpan di pengelola.

    Entropi = jumlah kata × log₂(ukuran daftar kata)

    Dengan daftar 7.776 kata, setiap kata memberi log₂(7776) = 12,9 bit.

    KataEntropiSetara dengan
    451,7 bitKata sandi acak 8 karakter
    564,6 bitKata sandi acak 10 karakter
    677,5 bitKata sandi acak 12 karakter
    790,4 bitKata sandi acak 14 karakter

    Enam kata memberi 77,5 bit, kuat terhadap serangan offline, dan kebanyakan orang bisa menghafalnya setelah beberapa kali ulang. Bandingkan mengetik correct-horse-battery-staple-mountain-glass dengan K7#mQ2vX@pL9. Keduanya kuat; hanya satu yang bisa diingat dan diketik di remote TV.

    Dua aturan menjaga frasa sandi aman. Kata harus dipilih acak oleh mesin, bukan oleh Anda; pilihan manusia berkumpul di kosakata umum dan asosiasi tema. Dan kata tidak boleh membentuk frasa yang sudah ada di mana pun, karena lirik lagu yang dikutip hampir tanpa entropi berapa pun jumlah katanya.

    Gunakan frasa sandi untuk kata sandi utama pengelola kata sandi, login perangkat, dan akun email. Gunakan string acak, disimpan di pengelola, untuk sisanya.

    Pahami mengapa generator ini memakai crypto.getRandomValues

    Concept diagram: Masukan leads to Pahami mengapa generator ini memak… leads to HasilMasukanPahami mengapagenerator ini memak…Hasil
    Pahami mengapa generator ini memakai crypto.getRandomValues.

    Pembuat Kata Sandi mengambil setiap karakter dari crypto.getRandomValues(), generator angka acak kriptografis browser, yang di-seed dari pool entropi sistem operasi. Generator tidak memakai Math.random(), dan perbedaan itu memisahkan kata sandi dari kesan kata sandi.

    Math.random() adalah generator pseudorandom cepat untuk simulasi dan game. State internalnya kecil, browser mendokumentasikannya tidak layak untuk keamanan, dan keluarannya dapat diprediksi siapa pun yang mengamati cukup banyak atau yang tahu implementasi dan kira-kira kapan nilai dihasilkan. Generator kata sandi berbasis Math.random() menghasilkan kata sandi yang bisa direkonstruksi, bukan ditebak, dan jumlah karakter tidak melindungi sama sekali.

    Ada persyaratan kedua yang lebih halus. Memetakan byte acak ke set karakter dengan operasi sisa biasa menimbulkan bias: 2³² tidak habis dibagi 94, jadi karakter awal dalam set muncul sedikit lebih sering. Skew tidak terlihat pada satu kata sandi dan terukur pada cukup banyak, serta menurunkan entropi nyata di bawah angka terhitung. Generator ini memakai rejection sampling: nilai di ekor tidak merata dibuang dan diambil ulang, sehingga distribusi benar-benar seragam.

    Tidak ada seed ditampilkan untuk kata sandi, dan itu disengaja. Randomizer lain di situs ini menampilkan seed agar hasil bisa direproduksi dan diverifikasi. Kata sandi yang bisa direproduksi adalah kata sandi yang bocor, jadi tidak ada seed disimpan, ditampilkan, atau bisa diperoleh di sini.

    Semua terjadi di browser. Tidak ada kata sandi dikirim ke server, ditulis ke penyimpanan, atau dimasukkan ke peristiwa analitik.

    Simpan kata sandi dengan aman

    Concept diagram: Masukan leads to Simpan kata sandi dengan aman leads to HasilMasukanSimpan kata sandidengan amanHasil
    Simpan kata sandi dengan aman.

    Kata sandi yang dihasilkan hanya membantu jika dipakai sekali dan disimpan di tempat Anda bisa mengambilnya. Penggunaan ulang adalah kegagalan yang membatalkan segalanya: saat satu layanan bocor, penyerang mencoba kredensial yang didapat di mana-mana, dan kata sandi 105 bit dipakai ulang di sepuluh situs tidak melindungi satupun setelah yang paling lemah jatuh.

    Empat praktik, urut menurut pentingnya:

    Gunakan pengelola kata sandi. Menghilangkan kebutuhan mengingat atau mengetik ulang, sehingga insentif memakai ulang atau menyederhanakan hilang. Lindungi dengan frasa sandi panjang, dan simpan catatan offline frasa itu dan kunci pemulihan di tempat fisik aman.

    Aktifkan autentikasi dua faktor di mana ditawarkan, dan pilih aplikasi autentikator atau kunci perangkat keras daripada SMS. Kode SMS bisa dicegat lewat SIM swapping. Faktor kedua menjaga akun aman meski kata sandi diketahui.

    Ganti kata sandi jika ada alasan. Rotasi terjadwal setiap sembilan puluh hari tidak lagi direkomendasikan NIST, karena mendorong variasi yang mudah ditebak. Ganti segera pada tanda kebocoran, kecurigaan, dan kata sandi yang Anda tahu pernah dipakai ulang.

    Periksa alamat Anda terhadap kebocoran yang diketahui. Layanan yang memungkinkan mencari email Anda terhadap data kebocoran publik memberi tahu akun mana perlu perhatian sekarang, lebih berguna daripada mengganti semuanya terjadwal.

    Pertanyaan yang sering diajukan

    Seberapa panjang kata sandi sebaiknya?

    Enam belas karakter adalah default baik untuk akun yang melindungi uang, identitas, atau komunikasi, memberi sekitar 105 bit entropi dari set karakter penuh. Dua belas karakter, sekitar 79 bit, cukup untuk akun bernilai lebih rendah. Jika situs mengizinkan lebih, gunakan lebih; setiap karakter tambahan mengalikan ruang pencarian dengan ukuran pool.

    Apa yang membuat kata sandi kuat?

    Keacakan dan panjang, dalam urutan itu. Kata sandi kuat diambil tidak terduga dari pool karakter besar dan cukup panjang sehingga total kemungkinan tidak praktis dicari. Substitusi seperti p@ssw0rd hampir tidak menambah apa pun, karena penyerang menebak pola itu dulu. Entropi dalam bit mengukur kekuatan nyata; label "kuat" tidak.

    Apakah kata sandi yang dihasilkan di sini aman dipakai?

    Ya. Setiap kata sandi dihasilkan di browser oleh crypto.getRandomValues(), generator angka acak kriptografis sistem operasi, dengan rejection sampling agar distribusi karakter seragam. Tidak ada kata sandi dikirim, dicatat, atau disimpan, dan tidak ada skrip pihak ketiga dengan akses halaman di sini.

    Apakah kata sandi saya dikirim ke mana pun?

    Tidak. Pembuatan sepenuhnya di browser dan tidak ada nilai yang dihasilkan meninggalkannya. Tidak ada yang ditulis ke penyimpanan browser, dimasukkan ke tautan berbagi, atau dibawa dalam peristiwa analitik. Menutup tab membuang kata sandi permanen, jadi salin ke pengelola kata sandi sebelum pergi.

    Apa arti entropi dalam bit?

    Entropi dalam bit menyatakan berapa tebakan yang dibutuhkan penyerang, sebagai pangkat dua. Kata sandi 60 bit membutuhkan sekitar 2⁵⁹ tebakan diharapkan. Setiap bit tambahan menggandakan kesulitan, sehingga angka tumbuh cepat dengan panjang: 16 karakter dari pool 94 karakter memberi 104,9 bit, atau kira-kira 3,7 × 10³¹ kemungkinan.

    Haruskah saya sertakan simbol dalam kata sandi?

    Sertakan jika situs menerimanya, tetapi jangan pilih simbol di atas panjang. Menambah set simbol 32 karakter ke kata sandi 16 karakter menaikkan entropi dari 95,3 ke 104,9 bit. Menambah empat karakter ke kata sandi tanpa simbol menaikkannya dari 95,3 ke 119,1. Panjang adalah tuas yang lebih kuat.

    Apa frasa sandi dan apakah sekuat kata sandi acak?

    Frasa sandi adalah beberapa kata dipilih acak digabungkan. Enam kata dari daftar 7.776 kata memberi 77,5 bit, setara kata sandi acak 12 karakter, dan jauh lebih mudah diingat dan diketik. Harus dipilih mesin dan tidak boleh membentuk frasa yang sudah ada, karena kutipan yang dikenal hampir tanpa entropi.

    Bisakah saya memakai ulang kata sandi kuat di banyak akun?

    Tidak. Penggunaan ulang adalah kebiasaan kata sandi paling merusak, dan kekuatan kata sandi tidak melindungi darinya. Saat satu layanan bocor, penyerang mencoba kredensial yang didapat di setiap situs besar. Setiap akun butuh kata sandi unik sendiri, masalah yang pengelola kata sandi ada untuk menyelesaikannya.

    Seberapa sering saya harus ganti kata sandi?

    Ganti jika ada alasan: kebocoran diketahui atau dicurigai, kata sandi dibagi atau dipakai ulang, atau perangkat yang tidak lagi Anda kendalikan. NIST menarik panduan rotasi terjadwal karena perubahan paksa rutin mendorong variasi mudah ditebak seperti menambah angka, yang melemahkan keamanan.

    Apa modulo bias dan mengapa penting?

    Modulo bias adalah skew saat byte acak dipetakan ke set karakter dengan sisa biasa, karena rentang byte jarang habis dibagi ukuran set. Beberapa karakter muncul sedikit lebih sering, menurunkan entropi nyata di bawah angka terhitung. Generator ini membuang dan menggambar ulang nilai di ekor tidak merata agar distribusi benar-benar seragam.

    Ringkasan

    Pembuat Kata Sandi mengambil kata sandi dari pool hingga 94 karakter memakai generator angka acak kriptografis browser, dengan rejection sampling agar distribusi karakter seragam, dan melaporkan kekuatan sebagai entropi bit, bukan label.

    Panjang adalah faktor terkuat: kata sandi 16 karakter dari set penuh membawa sekitar 105 bit, dan memendek empat karakter lebih mahal entropinya daripada menghapus seluruh set simbol. Angka waktu bobol diberikan untuk serangan online 10³ tebakan per detik dan offline 10¹², karena satu angka tanpa konteks tidak bermakna. Mode frasa sandi mencapai kekuatan setara sambil tetap mudah diingat, cocok untuk sedikit kata sandi yang tidak bisa di pengelola. Setiap kata sandi dibuat lokal dan tidak ada yang dikirim, dicatat, atau disimpan.

    Catatan build

    • crypto.getRandomValues() only. Math.random() in this file is a shipped vulnerability. Rejection sampling is required; test uniformity with a chi-squared fit over 10M draws on a 94-item set.
    • Entropy figures are test fixtures: 16 chars / 94 pool = 104.9 bits; 12 / 94 = 78.6; 16 / 62 = 95.3; 20 / 62 = 119.1; 6 words / 7776 = 77.5.
    • No seed displayed, stored or derivable on this page. The receipt panel states the CSPRNG and the no-transmission guarantee only.
    • The no-transmission line in the lead is a promise. No analytics event may carry a generated value; no third-party script with DOM access may load here.
    • No password history, no persistence, no localStorage.
    • NIST rotation guidance reference is SP 800-63B. Cite it if a citation is added; do not invent a version number.
    • Word count 2,090.