Comment crypter la colonne dans la base de données PostgreSQL en utilisant l'addon pgcrypto?
J'utilise postgres 9.3 et j'ai besoin de crypter une de mes colonnes, est-ce que postgres prend également en charge le cryptage Aes ou par tout moyen je peux y parvenir?
Oui, le module Postgres pgcrypto
prend en charge AES
. Tous les détails avec des exemples peuvent être trouvés ici. Quant à l'exemple d'utilisation:
-- 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);
Valider le mot de passe:
SELECT (value = crypt('PasswordToEncrypt0', value)) AS match FROM test_encrypt;
Retour:
match
-------
t
(1 row)