WorkaHolic/MSSQL

MSSQL 2005 암호화 지원

2010. 2. 25. 16:38
반응형

이전 버전(SQL Server 2000)에서는 데이터를 암호화(Encrypt) 하고 암호를 해독(Decrypt)하는데 있어서,
자체 개발이나 Third Party Vender의 솔루션을 이용해야 했습니다.
이런 문제점을 해결하기 위해 2005에서는 SQL Server 자체적으로 지원하고 있습니다.


1. EncryptByKey 또는 DecryptByKey
   - 대칭 키를 사용하여 데이터를 암호화 또는 복호화 합니다.
     대칭 암호화 및 암호 해독은 비교적 속도가 빠르며 대량의 데이터 작업 시 적합합니다.


2. EncryptByAsymKey 또는 DecryptByAsymKey
   - 비대칭 키를 사용하여 데이터를 암호화 또는 복호화 합니다.
     대칭 키로 암호화/복호화를 수행하는 것 보다 비용이 훨씬 많이 듭니다.
     큰 데이터의 집합으로 작업할 경우에는 비대칭 키를 사용하지 않는 것이 좋습니다.


3. EncryptByCert 또는 DecryptByCert
   - 인증서의 공개 키를 사용하여 데이터를 암호화 또는 복호화 합니다.
     대칭 키로 암호화/복호화를 수행하는 것 보다 비용이 훨씬 많이 듭니다.
     큰 데이터의 집합으로 작업할 경우에는 비대칭 키를 사용하지 않는 것이 좋습니다.


4. EncryptByPassPhrase 또는 DecryptByPassPhrase
   - 전달 구(대칭 키)로 데이터를 암호화 또는 복호화 합니다.
     전달 구에는 상대적으로 긴 문자열 대신 의미 있는 구나 문장이 사용되므로 기억하기가 쉽습니다.

 

 

 테스트해 보면서 알게 된 사실 하나는…
   실제로는 EncryptByAsymKey라는 명령어로 사용되는 것을, 도움말 또는 핑크색으로 표현되는 예약어 목록에
   EncryptByAsmKey로 잘못 기재되어 있다는 사실입니다. DecryptByAsymKey도 마찬가지였습니다.
   일종의 버그로 판단되는데요. SP2에서도 수정이 안되었는데, 과연 다음 서비스팩에서는 수정이 될까요? 의문이군요…

 

http://msdn2.microsoft.com/ko-kr/library/ms173744.aspx

출처: 탁이의 넋두리 http://blog.taks.pe.kr/20

반응형