digest(data text, type text) returns bytea;
não é uma sintaxe válida. Eu recomendo usar
bcrypt
em vez de. Nenhuma definição de função adicional é necessária:INSERT into "login" (login, password, employee_id)
VALUES ('email',crypt('password', gen_salt('bf'));
Mais tarde...
UPDATE table SET password = crypt('password',gen_salt('bf'))
E verificando a senha:
SELECT ... FROM table
WHERE password is NOT NULL
AND password = crypt('password-to-test',password);
Bcrypt é recomendado por Software Crafted e Jeff Atwood . Os documentos oficiais do pgcrypto também pode interessar.