#32275: Offer an scrypt based password hasher
----------------------------------------+------------------------
               Reporter:  Alex Gaynor   |          Owner:  nobody
                   Type:  New feature   |         Status:  new
              Component:  contrib.auth  |        Version:  master
               Severity:  Normal        |       Keywords:
           Triage Stage:  Unreviewed    |      Has patch:  0
    Needs documentation:  0             |    Needs tests:  0
Patch needs improvement:  0             |  Easy pickings:  0
                  UI/UX:  0             |
----------------------------------------+------------------------
 Currently django defaults to PBKDF2, with options (using third party
 libraries) for bcrypt and argon2 (and then a large number of legacy
 options that should be avoided).

 When PBKDF2 was originally chosen as the default, it was selected because
 it was the most secure option that could reasonably be implemented in pure
 Python with the stdlib.

 As of Python 3.6, scrypt is available in the stdlib. scrypt is also
 substantially more secure than PBKDF2, because it is memory hard. See
 https://www.tarsnap.com/scrypt/scrypt.pdf (page 14) for a table that
 assess the relative cost-to-brute-force of scrypt vs. PBKDF2 at the
 interactive latency.

 For these reasons, I think it'd be appropriate for Django to include an
 scrypt based hasher, and even to default to it for new installations.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/32275>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/047.2e98935a9af3714bcf6d1a5e9fc5b47b%40djangoproject.com.

Reply via email to