Password Hashing Competition winner (2015) - hybrid variant combining Argon2d and Argon2i. RECOMMENDED for general password hashing. First half uses data-independent addressing (Argon2i), second half uses data-dependent (Argon2d), providing both side-channel resistance and GPU attack resistance.
| Property | Value |
|---|---|
| Category | Key Derivation Functions |
| Sub-category | Memory-Hard Password Hashing |
| Security status | 🛡️ Secure |
| Complexity | Advanced |
| Inventor | Alex Biryukov, Daniel Dinu, Dmitry Khovratovich |
| Year | 2015 |
| Origin | 🌐 International |
| Source | algorithms/kdf/argon2.js |
| Parameter | Supported values |
|---|---|
| Output sizes | 4 bytes (32 bits) to 1024 bytes (8192 bits) |
| Flag | Value |
|---|---|
SaltRequired |
Yes |
Status: 🛡️ Secure
No vulnerabilities are recorded for this implementation.
3 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 — Botan Official Test Vector - Argon2id (M=32, T=3, P=4)
| Field | Value |
|---|---|
password |
0101010101010101010101010101010101010101010101010101010101010101 |
salt |
02020202020202020202020202020202 |
secret |
0303030303030303 |
ad |
040404040404040404040404 |
M |
32 |
T |
3 |
P |
4 |
outputSize |
32 |
input |
0101010101010101010101010101010101010101010101010101010101010101 |
expected |
0d640df58d78766c08c037a34a8b53c9d01ef0452d75b65eb52520e96b01e659 |
Vector 2 — Botan Official Test Vector - Argon2id (M=64, T=3, P=4)
| Field | Value |
|---|---|
password |
0101010101010101010101010101010101010101010101010101010101010101 |
salt |
02020202020202020202020202020202 |
secret |
0303030303030303 |
ad |
040404040404040404040404 |
M |
64 |
T |
3 |
P |
4 |
outputSize |
32 |
input |
0101010101010101010101010101010101010101010101010101010101010101 |
expected |
4275ee5ad887fe3270e82f01e97db8af3cf63fc7f2102bfea84b305f416a4544 |
Vector 3 — Botan Official Test Vector - Argon2id (M=128, T=3, P=4)
| Field | Value |
|---|---|
password |
0101010101010101010101010101010101010101010101010101010101010101 |
salt |
02020202020202020202020202020202 |
secret |
0303030303030303 |
ad |
040404040404040404040404 |
M |
128 |
T |
3 |
P |
4 |
outputSize |
32 |
input |
0101010101010101010101010101010101010101010101010101010101010101 |
expected |
8ec72f253bd35d55c3e49c587c77665c9c7fcff26cb3cabe179039b7c4281a48 |