Toolonit
  1. Beranda
  2. Enkripsi
  3. Argon2

Generator & Verifikasi Hash Argon2

Buat dan verifikasi hash kata sandi dengan Argon2id, standar modern untuk hashing kata sandi.

Hash kata sandi

Ketik kata sandi: hash-nya muncul di sini.

Parameter

Varian
Preset
Memori

m=19456 di hash (KiB)

Iterasi
Paralelisme

Jalur (lane) memori. Di sini jalur-jalur itu berjalan satu per satu; server mungkin menjalankannya secara paralel. Nilai ini mengubah hash, jadi samakan dengan server.

Panjang hash
Salt

16 byte acak baru untuk setiap hash.

Cek kata sandi dengan hash

String PHC: $argon2id$, $argon2i$, atau $argon2d$. Parameternya dibaca dari string itu.

Masukkan kata sandi dan hash untuk mengeceknya.

Argon2 memenangkan Password Hashing Competition dan distandarkan dalam RFC 9106. Ia sengaja dibuat lambat dan boros memori, sehingga menebak kata sandi dengan GPU menjadi mahal. Halaman ini membuat hash Argon2 dengan parameter pilihan Anda, sebagai string PHC yang disimpan library kata sandi ($argon2id$v=19$m=…,t=…,p=…$salt$hash) dan sebagai hex mentah, serta mengecek kata sandi terhadap string PHC yang sudah ada. Semuanya berjalan di browser Anda, jadi kata sandi tidak pernah keluar dari perangkat; gratis dan tanpa perlu mendaftar.

Cara membuat dan memverifikasi hash Argon2

  1. Ketik kata sandi. Hash muncul saat Anda mengetik, beserta lama prosesnya di perangkat Anda.
  2. Pilih preset, atau atur memori, iterasi, dan paralelisme agar sama dengan server Anda.
  3. Salin string PHC, atau hash dan salt mentahnya dalam hex.
  4. Untuk mengecek hash yang tersimpan, tempel hash tersebut beserta kata sandinya di bawah Cek kata sandi dengan hash: Anda akan melihat Cocok atau Tidak cocok.

Fitur

  • Argon2id (bawaan), Argon2i, dan Argon2d, versi 19
  • Preset: minimum OWASP (19 MiB, t=2, p=1), memori rendah RFC 9106 (64 MiB, t=3, p=4), dan Tinggi (256 MiB, t=3, p=4)
  • Memori 1 MiB–1 GiB, iterasi 1–16, paralelisme 1–16, panjang hash 4–128 byte
  • Salt acak 16 byte, atau salt Anda sendiri sebagai teks, hex, atau Base64 (8–1024 byte)
  • String PHC, ditambah hash dan salt mentah dalam hex, masing-masing dengan tombol Salin
  • Memverifikasi string $argon2id$, $argon2i$, dan $argon2d$ (v=19 atau v=16), dengan membaca parameternya dari hash

Apakah privasi terjaga?

Ya. Argon2 berjalan di browser Anda dengan WebAssembly, di worker latar belakang, dan salt berasal dari pembangkit acak aman milik browser Anda. Kata sandi tidak pernah diunggah atau disimpan.

Pertanyaan umum

Argon2id, Argon2i, atau Argon2d?

Gunakan Argon2id. RFC 9106 dan OWASP sama-sama merekomendasikannya untuk kata sandi: ia menggabungkan ketahanan Argon2i terhadap serangan side-channel dengan ketahanan Argon2d terhadap pembobolan dengan GPU. Pilih varian lain hanya untuk menyamakan dengan sistem yang sudah ada.

Berapa memori, iterasi, dan paralelisme yang sebaiknya dipakai?

Minimum OWASP untuk Argon2id adalah 19 MiB, 2 iterasi, 1 lane. RFC 9106 menyarankan 64 MiB, 3 iterasi, 4 lane jika memori terbatas. Memori yang lebih besar adalah perlindungan yang lebih kuat; naikkan sampai satu hash memakan waktu selama yang sanggup ditanggung server Anda untuk setiap login.

Argon2 atau bcrypt?

Argon2id untuk sistem baru. Keduanya sengaja lambat, tetapi Argon2 juga membutuhkan banyak memori, sehingga pembobolan dengan GPU menjadi mahal, dan ia tidak punya batas kata sandi 72 byte. Bcrypt lebih tua dan didukung hampir di mana-mana, dan masih pilihan yang wajar jika Argon2 tidak tersedia.

Apa itu string PHC $argon2id$?

Itulah cara implementasi referensi Argon2 menyimpan hash: varian, versi (v=19), memori dalam KiB (m), iterasi (t), lane (p), lalu salt dan hash dalam Base64 tanpa padding. String yang dibuat di sini sama persis, karakter demi karakter, dengan yang ditulis library referensi (libargon2) untuk input yang sama, dan crypto_pwhash_str_verify milik libsodium menerimanya (Argon2id dan Argon2i, dengan hash 16 byte atau lebih).

Mengapa saya tidak bisa memakai memori lebih dari 1 GiB?

Hash berjalan di dalam tab browser Anda, tempat memori WebAssembly terbatas: satu alokasi tidak bisa mencapai 2 GiB, dan ponsel sering menolak jauh lebih kecil dari itu. Karena itu halaman ini berhenti di 1 GiB, dan hash yang meminta lebih (seperti opsi 2 GiB dari RFC 9106) tidak bisa dibuat atau dicek di sini.

Alat terkait