환경


  • CentOS 6.4
  • Postgresql 9.1


Extenstion 설치


CREATE EXTENSION [모듈 명]

CREATE EXTENSION pgcrypto;


해당 모듈을 찾을 수 없다는 메시지가 난다면 아래 경로에서 모듈명과 같은 파일이 존재하는지 확인.

경로 : Postgresql 설치경로/share/extension

설치패키지 : postgresql-contrib



Extention 사용



사용방법 샘플
SELECT CRYPT('암호화할 문자열', gen_salt('암호화방식'));


Pgcrypto를 이용해 MD5방식으로 암호화하고, 검증하기

1. 암호화하여 저장하기

INSERT INTO tb_user(user_id, user_pw)
VALUES( 'wonzopein', CRYPT('abc123', GEN_SALT('md5')))

2. 패스워드 검증하기

SELECT user_id
FROM tb_user
WHERE user_pw = CRYPT('abc123', user_pw) -- 'abc1234' 입력받은 패스워드

지원하는 암호화 알고리즘

자세한 내용은 아래 관련문서 링크를 참조하자.




관련문서 링크


PostgreSQL 8.3.23 Documentation - F.20. pgcrypto

PostgreSQL Additional Supplied Modules