PwdEncrypt() 의 암호문 만들기
웹서핑 중 재미난 걸 찾았다..ㅡㅡ (원래는 다른것을 검색중이었지만...;;;;;)
뭐...이제 찾았다고 신나할것은 아니지만...(여러가지 의미로...)
혹시 유용할 수 있을지도 몰라 저장!!!
MS-SQL에서의 암호는 그 암호문을 바이러리 형식으로 저장한다고 함.
디비에 바이너리 형식으로 테이블 필드명생성
password varbinary(256) Not null
create table member(
userID varchar(30),
UserPwd varbinary(256)
)
insert into tmp_bbs
(UserID, UserPwd )
values
('aaaa', PwdEncrypt('123456789'))
하고 데이터를 입력하고 나서 Select 해보면
'123456789' 라는 값이
'0x01009D6707191EDB07CCC4BCF0A82E4CAFF0567E395735C52A481EDB07CCC4BCF0A82E4CAFF0567E395735C52A48
' 라는 요상한 값으로 디비에 저장되는것을 확인할 수 있다.
이 값을 확인하고 싶을때는 뭐 따로 디코딩같은걸 해주는게 아니라 체크만 해주는 함수가 있더군...
PwdCompare(문자값, 필드명)
select PwdCompare('123456789', UserPwd ) from member
하게되면 문자값과 같으면 1을 출력
틀리면 0을 출력해준다.
뭐..꽤 편하기는 한 거 같은데...이거...2002년도에 뚫렸다더군..
(http://blog.naver.com/gun0626?Redirect=Log&logNo=40020538589)
(http://www.theregister.co.uk/2002/07/08/cracking_ms_sql_server_passwords/)
회원 비번같은 귀중한 데이터 암호화는 서버에서 따로 해서 보내주는게 안전할 듯...-_ ㅡ
뭐..이렇게 기록해두면 언젠가 사용할 날이 있지 않을까 싶다...뭐..언젠가...ㅇ_ㅇ