db/schema/010_hashed_text.sql
2023-06-10 13:03:25 -05:00

22 lines
453 B
PL/PgSQL

select create_newtype_text('public.hashed_text');
create function hash_text(plain text)
returns hashed_text
language plpgsql
immutable
as $$
begin
return hashed_text_of_string(crypt(plain, gen_salt('bf')));
end;
$$;
create function hashed_text_matches(plain text, hashed hashed_text)
returns boolean
language plpgsql
immutable
as $$
begin
return hashed_text_to_string(hashed) = crypt(plain, hashed_text_to_string(hashed));
end;
$$;