Argon2
Argon2 is a password-hashing algorithm designed to securely transform passwords into stored values that are difficult for attackers to reverse. It won the 2015 Password Hashing Competition and is widely recommended for protecting passwords. It is built to be memory-hard, meaning it deliberately consumes significant memory to make large-scale password-cracking attacks more expensive.
Argon2 is a memory-hard function used for password hashing and key derivation, selected as the winner of the 2015 Password Hashing Competition (PHC) and specified in RFC 9106. It exists in three variants: Argon2d (data-dependent memory access, offering resistance to GPU cracking but greater vulnerability to side-channel attacks), Argon2i (data-independent memory access, intended to resist side-channel attacks), and Argon2id (a hybrid combining both approaches). Argon2 is parameterized, typically taking configurable memory cost, time (iteration) cost, and parallelism (degree of parallelism) inputs that tune its resource consumption for a given deployment. Note that Argon2 addresses secure credential storage and is distinct from authentication protocols and authorization decisions; specific parameter recommendations vary by deployment and are out of scope for this definition.
Why it matters
Password databases remain a primary target for attackers, and the security of stored credentials depends heavily on how they are hashed. When a credential store is breached, the difficulty an attacker faces in recovering the original passwords is determined by the hashing algorithm and its configured cost parameters. Argon2 was selected as the winner of the 2015 Password Hashing Competition specifically because it advanced the state of the art in resisting large-scale offline cracking, and it is widely recommended for protecting passwords at rest.
Argon2's defining property is that it is memory-hard: it deliberately consumes significant memory to make password-cracking attacks more expensive. This design directly targets the economics of modern cracking, which often relies on specialized hardware such as GPUs that can compute simple hashes in massive parallel batches. By forcing each hash computation to occupy substantial memory, Argon2 reduces the advantage attackers gain from such hardware, raising the cost of brute-force and dictionary attacks against a stolen credential store.
It is important to place Argon2 correctly in an IAM architecture. Argon2 addresses secure credential storage, how a password is transformed into a stored value, and is distinct from authentication protocols and authorization decisions. It does not verify who a user is or determine what they may access; it protects the confidentiality of the secrets that later feed into an authentication step. Choosing Argon2 does not by itself constitute a complete authentication strategy.
Who it's relevant to
Inside Argon2
Common questions
Answers to the questions practitioners most commonly ask about Argon2.
