728x90
Ms-Sql의 컬럼을 암호화하기 위한 내장함수가 있다.
-PwdEncrypt : 컬럼의 데이터를 암호화한다. ex. PwdEncrypt('암호화할 데이터')
-PwdCompare : 암호화한 데이터를 비교해서 확인한다. ex. PwdCompare('데이터', 암호화컬럼)
간단 예제
create table TEST (
--password varchar(100) varbinary(500)
password varbinary(500) -- varbinary 타입으로 하자
);
테이블을 만든 후
insert into TEST values (PwdEncrypt('1111'));
데이터를 암호화하여 넣은 후 select해보자
select PwdCompare('1111', password) from TEST
결과 : 1
select PwdCompare('2222', password) from TEST
결과 : 0
PwdCompare의 결과는 1이나 0으로 리턴된다. 1이면 맞는거고 0이면 틀린것이다.
테이블을 만든 후
insert into TEST values (PwdEncrypt('1111'));
데이터를 암호화하여 넣은 후 select해보자
select PwdCompare('1111', password) from TEST
결과 : 1
select PwdCompare('2222', password) from TEST
결과 : 0
PwdCompare의 결과는 1이나 0으로 리턴된다. 1이면 맞는거고 0이면 틀린것이다.
MySQL 에서는 password()
1. PwdEncrypt - 암호화
PwdEncrypt('암호화문자')
ex) INSERT INTO members(user_id, password) VALUES('myid', PwdEncrypt('mypwd'))
2. PwdCompare - 비교
PwdCompare('비교대상문자', '암호화 된 문자')
->양쪽이 같으면 1을 리턴 다르면 0 리턴, 둘중하나가 NULL 이면 NULL 을 리턴
ex) SELECT PwdCompare('1234', password) FROM members WHERE user_id = 'myid'
728x90
'개발및업무 > SQL' 카테고리의 다른 글
[MS-SQL] 프로시저 내용검색 (0) | 2011.05.16 |
---|---|
MS SQL 2005 Linked Server 연결(연결된 서버) (0) | 2011.05.09 |
오류 0xc00470fe: 데이터 흐름 작업: 제품 수준이 구성 요소 "원본 - Sheet1$"(1)에 부족합니다. (0) | 2010.12.01 |
테이블 정의서 추출 쿼리 (0) | 2010.08.19 |
SQL 디스크립션 생성 및 수정 방법 (0) | 2010.08.19 |