Post List

2015년 1월 9일 금요일

MS-SQL Password 암호화 하여 저장하기, 비교하기

MS-SQL 에서 특정 문자열을 암호화 하여 저장하고, 비교하는 기능이 있습니다.

물론 단방향이라서 저장된 값의 원래 암호가 무엇인지 알아 낼 수는 없습니다.

암호화 하는 함수는 PWDENCRYPT('문자열') 이며,
암호문을 비교하는 함수는 PWDCOMPARE( '문자열', 저장된 Column ) 입니다.

참고로 암호문이 저장될 Column은 VARBINARY(128) 로 선언 되어야 합니다.

예시)
암호 저장

INSERT INTO TB_USER ( ID, Password )
           VALUES ( 'SysUser' , PWDENCRYPT('QWERT1234') );

암호 비교

SELECT PWDCOMPARE('QWERT1234', Password) FROM TB_USER
  WHERE ID = 'SysUser'




=> 결과값이 0 이면 저장된 암호랑 다른 것이고, 1 이면 같은 것입니다.

댓글 없음:

댓글 쓰기