Hash/Kripto
Argon2 Hash + Verify
Hash kata sandi dengan Argon2 (pemenang Password Hashing Competition, RFC 9106) — varian d/i/id, dengan verifikasi terhadap hash yang sudah ada.
Argon2 is the Password Hashing Competition winner and the algorithm recommended in RFC 9106 for hashing passwords. Unlike bcrypt, it deliberately demands a lot of memory, not just CPU time, which makes attacks on specialized hardware (GPUs, ASICs) much harder.
How to use it
- Hash: enter a password, pick a variant (Argon2d, Argon2i, or Argon2id), and set the parameters (memory, iterations, parallelism) to get a hash.
- Verify: paste a password and an existing Argon2 hash to check whether they match, without hashing manually yourself.
- Argon2id is the recommended default for most applications — it combines the strengths of Argon2i and Argon2d.
Common uses
- Checking that a backend generates correct Argon2 hashes with the expected parameters before a release.
- Tuning memory and iteration parameters to fit within a server's response-time budget (typically 250-500ms).
- Comparing Argon2 against bcrypt or PBKDF2 when choosing an algorithm for a new project.
Things to keep in mind
The memory parameter is Argon2's main defense: the more memory hashing requires, the more expensive it is for an attacker to parallelize an attack on a GPU with limited fast memory per chip.
Argon2id is recommended for most cases: Argon2i resists side-channel attacks better, Argon2d resists GPU attacks better, and id combines both approaches.
Artikel tentang alat ini: Argon2: mengapa algoritma ini memenangkan kompetisi hashing kata sandi
Pertanyaan yang sering diajukan
Mengapa Argon2 direkomendasikan dibanding hash lama seperti MD5 atau SHA-256 untuk kata sandi?
Argon2 sengaja dibuat lambat dan membutuhkan banyak memori, membuat brute-force dan peretasan berbasis GPU/ASIC jauh lebih mahal, tidak seperti hash serbaguna cepat seperti MD5 atau SHA-256 yang tidak cocok untuk penyimpanan kata sandi.
Apa yang dikontrol oleh parameter memori, iterasi, dan paralelisme?
Biaya memori menentukan berapa banyak RAM yang dibutuhkan setiap percobaan hash, iterasi mengontrol berapa kali proses dijalankan, dan paralelisme menentukan jumlah thread — menaikkan salah satunya meningkatkan biaya peretasan namun memperlambat hashing.
Varian Argon2 mana yang harus saya gunakan — d, i, atau id?
Argon2id adalah default yang direkomendasikan untuk hashing kata sandi, karena menggabungkan ketahanan Argon2i terhadap serangan side-channel dengan ketahanan Argon2d terhadap peretasan GPU.
Dari mana asal Argon2 sebagai standar?
Argon2 memenangkan Password Hashing Competition tahun 2015 — kompetisi terbuka para kriptografer yang bertujuan menemukan algoritma terbaik untuk hashing kata sandi. Sejak itu, OWASP merekomendasikannya sebagai pilihan prioritas di atas bcrypt.
Apakah parameter paralelisme hanya mempercepat hashing?
Tidak, parameter yang sama juga mempercepat upaya brute force bagi penyerang dengan perangkat keras multi-core, sehingga paralelisme sebaiknya disesuaikan dengan jumlah core server yang sebenarnya, bukan dinaikkan tanpa perlu.