ENCRYPTBYASYMKEY(Transact-SQL)

비대칭 키를 사용하여 데이터를 암호화합니다.

항목 링크 아이콘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