mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-27 08:39:28 +08:00
ab56022864
salt generation code. He also urged using better random source and making possible to choose using bcrypt and xdes rounds more easily. So, here's patch: * For all salt generation, use Solar Designer's own code. This is mostly due fact that his code is more fit for get_random_bytes() style interface. * New function: gen_salt(type, rounds). This lets specify iteration count for algorithm. * random.c: px_get_random_bytes() function. Supported randomness soure: /dev/urandom, OpenSSL PRNG, libc random() Default: /dev/urandom. * Draft description of C API for pgcrypto functions. New files: API, crypt-gensalt.c, random.c Marko Kreen
66 lines
1.8 KiB
MySQL
66 lines
1.8 KiB
MySQL
|
|
-- drop function digest(bytea, text);
|
|
-- drop function digest_exists(text);
|
|
-- drop function hmac(bytea, bytea, text);
|
|
-- drop function hmac_exists(text);
|
|
-- drop function crypt(text, text);
|
|
-- drop function gen_salt(text);
|
|
-- drop function gen_salt(text, int4);
|
|
-- drop function encrypt(bytea, bytea, text);
|
|
-- drop function decrypt(bytea, bytea, text);
|
|
-- drop function encrypt_iv(bytea, bytea, bytea, text);
|
|
-- drop function decrypt_iv(bytea, bytea, bytea, text);
|
|
-- drop function cipher_exists(text);
|
|
|
|
|
|
|
|
CREATE FUNCTION digest(bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_digest' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION digest_exists(text) RETURNS bool
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_digest_exists' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION hmac(bytea, bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_hmac' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION hmac_exists(text) RETURNS bool
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_hmac_exists' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION crypt(text, text) RETURNS text
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_crypt' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION gen_salt(text) RETURNS text
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_gen_salt' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION gen_salt(text, int4) RETURNS text
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_gen_salt_rounds' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION encrypt(bytea, bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_encrypt' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION decrypt(bytea, bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_decrypt' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION encrypt_iv(bytea, bytea, bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_encrypt_iv' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION decrypt_iv(bytea, bytea, bytea, text) RETURNS bytea
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_decrypt_iv' LANGUAGE 'C';
|
|
|
|
CREATE FUNCTION cipher_exists(text) RETURNS bool
|
|
AS '@MODULE_FILENAME@',
|
|
'pg_cipher_exists' LANGUAGE 'C';
|
|
|
|
|