Detektor Kekuatan Kata Sandi

Deteksi kekuatan kata sandi, nilai entropi, dan kelemahan umum. Semua deteksi dilakukan secara lokal di browser Anda.

Deteksi Kekuatan

Nilai Entropi
Kekuatan:
Perkiraan waktu pemecahan offline (GPU berkecepatan tinggi)
Perkiraan waktu pemecahan online (terbatas kecepatan)
Hasil Deteksi
  • Panjang
  • Huruf Kecil
  • Huruf Besar
  • Angka
  • Simbol
  • Urutan
  • Pengulangan
  • Daftar Hitam
  • Mode Keyboard
  • Tanggal
  • Periode
Konfigurasi Kebijakan
Dipisahkan dengan koma, tidak membedakan huruf besar - kecil. Mendukung normalisasi Leet (misalnya Pa$$w0rd → password).
Saran Optimasi
Penjelasan Privasi: Deteksi dilakukan sepenuhnya di browser Anda secara lokal, kata sandi tidak akan diunggah.

Cara Penggunaan

Analisis kata sandi secara lokal dan dapatkan saran optimasi yang dapat dijalankan.
1) Masukkan atau tempel kata sandi; hasil akan diperbarui secara real-time.
2) Sesuaikan kebijakan (panjang minimum/persyaratan tipe karakter) sesuai kebutuhan.
3) Tambahkan kata lemah umum ke daftar hitam untuk membantu identifikasi (didukung normalisasi Leet).
4) Gunakan impor/ekspor untuk berbagi pengaturan kebijakan.

Fitur Unggulan

  • 100% analisis lokal, prioritas perlindungan privasi.
  • Pendeteksi tingkat lanjut: pola keyboard, tanggal, pengulangan berkala, urutan, pengulangan, dll.
  • Pencocokan daftar hitam normalisasi Leet (misalnya Pa$$w0rd → password).
  • Kebijakan fleksibel: panjang minimum dan persyaratan jenis karakter.
  • Impor/ekspor kebijakan JSON dengan satu tombol.
  • Analisis di detektor dengan satu tombol

Perbandingan Kata Sandi

Hasil perbandingan
Entropi (A): Entropi (B):

Pertanyaan Umum

Apakah kata sandi saya akan diunggah?
Tidak. Semua analisis hanya dilakukan di browser Anda.
Apa artinya "entropi"?
Secara umum, menunjukkan berapa kali percobaan yang diperlukan untuk menebak. Kekuatan sebenarnya akan menurun jika ada struktur.
Mengapa skornya menurun?
Pola seperti urutan, tanggal, atau pola keyboard akan mengurangi kekuatan kata sandi.

Laporan

Laporan tidak menyertakan teks kata sandi Anda, hanya berisi indikator dan pengaturan.

Pengetahuan Terkait
Entropi

Entropi digunakan untuk memperkirakan ukuran ruang pencarian berdasarkan himpunan karakter dan panjang. Jika ada struktur (pola, kata), entropi efektif akan berkurang meskipun bit aslinya terlihat tinggi.

Penjelasan Deteksi
  • Urutan berurutan, seperti abcde atau 12345.
  • Pengulangan panjang karakter yang sama (seperti aaaa).
  • Cocok dengan kata/pola lemah umum dalam daftar hitam kustom.
  • Polanya pergerakan keyboard atau urutan tombol bersebelahan (seperti qwerty, asdf).
  • Gaya tanggal (seperti YYYYMMDD, dd-mm-yyyy).
  • Substring berulang (seperti abcabc, 121212).
  • Normalisasi Leet dilakukan sebelum pencocokan daftar hitam (seperti Pa$$w0rd → password).
Perhatian Waktu Pecah

Waktu pecah hanya perkiraan kasar. Serangan sebenarnya akan menggunakan kamus, mask, dan GPU. Kata sandi pendek dan dengan struktur jelas sering jauh lebih lemah daripada entropi tampaknya.

Praksis Terbaik
  • Pilih frasa kunci acak yang lebih panjang (lebih dari 4 kata) atau kata sandi yang dihasilkan oleh pengelola kata sandi.
  • Hindari informasi pribadi, tanggal, dan struktur yang dapat diprediksi.
  • Gunakan pengelola kata sandi, dan aktifkan otentikasi multi-faktor (MFA) sebaik mungkin.
  • Jangan gunakan kata sandi yang sama berulang kali; ganti hanya jika terjadi kebocoran.

Cara Mendeteksi Kekuatan Kata Sandi Melalui Bahasa Pemrograman

Berikut adalah contoh minimum menggunakan pustaka komunitas yang teruji, pilih sesuai tumpukan teknologi Anda.

JavaScript
<!-- CDN -->
<script src="https://unpkg.com/[email protected]/dist/zxcvbn.js"></script>
<script>
  const res = zxcvbn('P@ssw0rd!');
  console.log(res.score, res.crack_times_display);
</script>
                        
Node.js
// npm i @zxcvbn-ts/core
import { zxcvbn } from '@zxcvbn-ts/core';

const result = zxcvbn('P@ssw0rd!');
console.log(result.score, result.guesses_log10);
                        
PHP
composer require bjeavons/zxcvbn-php
                        
<?php
require __DIR__ . '/vendor/autoload.php';

use ZxcvbnPhp\\Zxcvbn;

$zxcvbn = new Zxcvbn();
$res = $zxcvbn->passwordStrength('P@ssw0rd!');
echo $res['score'];
                        
Python
pip install zxcvbn
                        
from zxcvbn import zxcvbn

res = zxcvbn('P@ssw0rd!')
print(res['score'], res['crack_times_display'])
                        
Go
go get github.com/nbutton23/zxcvbn-go
                        
package main

import (
  "fmt"
  zxcvbn "github.com/nbutton23/zxcvbn-go"
)

func main() {
  res := zxcvbn.PasswordStrength("P@ssw0rd!", nil)
  fmt.Println(res.Score, res.Guesses)
}
                        
Rust
# Add dependency
cargo add zxcvbn
                        
use zxcvbn::zxcvbn;

fn main() {
    match zxcvbn("P@ssw0rd!", &[]) {
        Ok(estimate) => {
            println!("score: {}", estimate.score()); // 0..4
            if let Some(times) = estimate.crack_times() {
                println!("offline: {:?}", times.offline_slow_hashing_1e4_per_second());
            }
        }
        Err(err) => eprintln!("zxcvbn error: {err}"),
    }
}
                        

Keterangan: Pustaka - pustaka ini memberikan perkiraan kekuatan dan pola, mungkin sedikit berbeda dengan item deteksi di halaman ini.