Go implementation of password hashers used in Django
Implemented hashers:
pbkdf2_sha256pbkdf2_sha1sha1md5unsalted_sha1unsalted_md5
Unsalted hashers are not allowed by hashers.MakePassword function. You can use them just with hashers.CheckPassword.
Hashers based on bcrypt are not implemented because golang.org/x/crypto/bcrypt is not yet compatible with Python's bcrypt.
By default hashers.MakePassword is using pbkdf2_sha256 hasher.
If you really want to change it (i.e. when you want to have passwords compatible with Django 1.3 or older),
you can set hashers.DefaultHasher variable to one of supported hashers:
hashers.DefaultHasher = "sha1"go get -u github.com/meehow/go-django-hashers
Usage is quite straightforward and simple.
Check example files: