MS-SQL/Query
MSSQL HASHBYTE 함수를 이용한 단방향 암호화
Hwoarang757
2014. 12. 22. 22:01
MSSQL HASHBYTE 함수를 이용한 단방향 암호화
특별한 일방향 암호화 모듈이 없을시 설정해주면 유용할 것 같습니다.
HASHBYTES ( 'MD2 | MD4 | MD5 | SHA | SHA1 | SHA2_256 | SHA2_512 중 선택' , '암호화 할 평문' )
주의할 점은 암호화 된 문장이 변수가 유니코드형과 값이 틀립니다.
아래 테스트
DECLARE @HashThis nvarchar(4000);
SET @HashThis = CONVERT(nvarchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HASHBYTES('SHA1', @HashThis);
go
DECLARE @HashThis varchar(4000);
SET @HashThis = CONVERT(varchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HASHBYTES('SHA1', @HashThis);
개인적인 생각으론 조금 더 보안을 강화한다면 별도의 SaltValue를 만들어 첨부하여 암호화 시키는 것이 좋을 것 같습니다.