VeraCrypt

Documentation >> Key Derivation Algorithms >> Argon2id

Argon2id

Argon2id is a memory-hard key derivation function designed to resist both time-memory trade-off attacks and side-channel attacks. It was selected as the winner of the Password Hashing Competition (PHC) in 2015 and is defined in RFC 9106. VeraCrypt supports Argon2id as an alternative to PBKDF2-HMAC for header key derivation.

Key Features

Argon2 Variants

Argon2 has three variants:

Parameters in VeraCrypt

VeraCrypt uses Argon2id with the following parameter configuration:

Memory Cost (m_cost)

The amount of memory used during the key derivation process, controlled by the PIM value:

Time Cost (t_cost)

The number of iterations performed during the key derivation process:

Parallelism

The number of parallel threads used during computation:

Advantages over PBKDF2

Usage Considerations

When using Argon2id in VeraCrypt:

Technical Specifications

Algorithm: Argon2id as defined in RFC 9106
Internal hash: BLAKE2b
Salt size: 512 bits (same as PBKDF2-HMAC)
Output length: Variable, depending on the encryption algorithm (e.g., 256 bits for AES-256, 768 bits for AES-Twofish-Serpent cascade)
Version: Argon2 version 0x13 (19 decimal)
For more information about PIM values and their effect on Argon2id parameters, see the Personal Iterations Multiplier (PIM) section.