ENCRYPTBYASYMKEY(Transact-SQL)
비대칭 키를 사용하여 데이터를 암호화합니다.
구문
EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )
인수
Asym_Key_ID
데이터베이스에 있는 비대칭 키의 ID입니다. int입니다.cleartext
비대칭 키로 암호화될 데이터 문자열입니다.@plaintext
비대칭 키로 암호화될 데이터가 들어 있는 nvarchar, char, varchar, binary, varbinary 또는 nchar 유형의 변수입니다.
반환 형식
최대 크기가 8,000바이트인 varbinary
주의
비대칭 키로 암호화 및 암호 해독을 수행하면 대칭 키로 암호화 및 암호 해독을 수행하는 것보다 비용이 훨씬 많이 듭니다. 테이블의 사용자 데이터와 같은 큰 데이터 집합을 암호화하는 경우 비대칭 키를 사용하지 않는 것이 좋습니다. 대신 강력한 대칭 키를 사용하여 데이터를 암호화하고 비대칭 키를 사용하여 대칭 키를 암호화해야 합니다.
예
다음 예에서는 @cleartext에 저장된 텍스트를 비대칭 키 JanainaAsymKey02로 암호화합니다. 암호화된 데이터는 ProtectedData04 테이블에 삽입됩니다.
INSERT INTO [AdventureWorks].[Sales].[ProtectedData04]
values( N'data encrypted by asymmetric key ''JanainaAsymKey02''',
EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) )
GO