如何使用pgcrypto addon加密postgres数据库中的列?
我正在使用postgres 9.3,我需要加密我的一个专栏,postgres是否也支持Aes加密或任何意思我可以实现它?
是的,Postgres pgcrypto
模块支持AES
.所有详细信息都可以在这里找到.至于样品用法:
-- add extension CREATE EXTENSION pgcrypto; -- sample DDL CREATE TABLE test_encrypt( value TEXT ); INSERT INTO test_encrypt VALUES ('testvalue'); -- encrypt value WITH encrypted_data AS ( SELECT crypt('PasswordToEncrypt0',gen_salt('md5')) as hashed_value ) UPDATE test_encrypt SET value = (SELECT hashed_value FROM encrypted_data);
验证密码:
SELECT (value = crypt('PasswordToEncrypt0', value)) AS match FROM test_encrypt;
返回:
match ------- t (1 row)