1 2 3 4 5 6 7 8 9 10 11 12 | DELIMITER //
CREATE FUNCTION django_password(
pass VARCHAR(32)
) RETURNS VARCHAR(128)
DETERMINISTIC
BEGIN
DECLARE salt char(5);
DECLARE hash VARCHAR(40);
SET salt = MID(RAND(), 3, 5);
SET hash = SHA(CONCAT(salt, pass));
RETURN CONCAT('sha1$', salt, '$', hash);
END//
|
More like this
- Debug middleware for displaying sql queries and template loading info when ?debug=true by SEJeff 2 years, 1 month ago
- Old MySQL Password Hash by tback 4 years ago
- Serializing booleans correctly when doing dumpdata from a MySQL database using Django 0.96 by chrj 4 years, 9 months ago
- Friendly ID by willhardy 4 years, 5 months ago
- Use crypt instead of sha1 as password hash algorithm by akaihola 5 years, 9 months ago
Comments
Note the deterministic behaviour from the manual:
#
How would you make use of this inside of Django (and Django Admin) i.e. where would you add the SQL?
#