I have some problems with encoding passwords,how can I do it. Type of encoding md5
digest(data text, type text) returns bytea;
CREATE OR REPLACE FUNCTION md(bytea) returns text AS $$
SELECT encode(digest($1, 'sha1'), 'md5')
$$ LANGUAGE SQL STRICT IMMUTABLE;
INSERT INTO "login"(login, password, employee_id)
VALUES ( 'email',crypt('password', md('md5')), 1);
*** Error ***
ERROR: syntax error at or near "digest"
SQL state: 42601
Character: 1
digest(data text, type text) returns bytea;
is not valid syntax.I recommend using
bcrypt
instead. No additional function definitions are required:Later...
And checking the password:
Bcrypt is recommended by Crafted Software and Jeff Atwood. The official pgcrypto docs may also be of interest.