Drupal 12 Adopts Argon2id for Default Password Hashing

Drupal 12 Adopts Argon2id for Default Password Hashing

Drupal 12 will use Argon2id as its default password hashing algorithm, replacing bcrypt and aligning the platform with current security recommendations from OWASP and NIST. The update, detailed by Drupal founder Dries Buytaert, strengthens protection against modern password cracking techniques while maintaining compatibility across hosting environments.

The change reflects Drupal’s continued focus on security for large-scale and sensitive deployments. Password hashing has evolved across major Drupal versions in response to advances in attack capabilities. Early versions relied on MD5 hashing, which is now considered insecure. Drupal 7 introduced a salted and iterated SHA-512 approach via the phpass library, while Drupal 10 adopted bcrypt as the default. The move to Argon2id continues this progression.

Argon2id introduces a key technical advantage over bcrypt through its “memory-hard” design. Each hash computation requires a configurable amount of memory, limiting the ability of attackers to run large numbers of parallel guesses using modern GPUs. While GPUs can efficiently execute many bcrypt operations simultaneously due to low memory requirements, Argon2id constrains parallelism by increasing per-operation memory usage, making large-scale attacks more expensive and less efficient.

The implementation is designed to be transparent for site owners and users. Existing passwords will be automatically rehashed using Argon2id the next time a user successfully logs in, eliminating the need for forced password resets or manual migration. If Argon2id support is unavailable in a given PHP environment, Drupal will fall back to bcrypt to ensure compatibility.

The update also reinforces Drupal’s “secure by default” approach. Many site administrators rely on default configurations for security-sensitive settings such as password storage. By adopting Argon2id, Drupal ensures stronger protection without requiring additional configuration or awareness from site owners.

Further technical details and context are available in Dries Buytaert’s original post: https://dri.es/drupal-12-switches-to-argon2id.

Reference: Drupal 12 switches to Argon2id (30 March 2026)

Disclosure: This content is produced with the assistance of AI.

Note: The vision of this web portal is to help promote news and stories around the Drupal community and promote and celebrate the people and organizations in the community. We strive to create and distribute our content based on these content policy. If you see any omission/variation on this please reach out to us at #thedroptimes channel on Drupal Slack and we will try to address the issue as best we can.

Related People

Upcoming Events