ENCRYPTBYASYMKEY (Transact-SQL)

Criptografa dados com uma chave assimétrica.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )

Argumentos

  • Asym_Key_ID
    É a ID de uma chave assimétrica no banco de dados. int.

  • cleartext
    É uma cadeia de caracteres de dados que será criptografada com a chave assimétrica.

  • @plaintext
    É uma variável do tipo nvarchar, char, varchar, binary, varbinary ou nchar que contém dados a serem criptografados com a chave assimétrica.

Tipos de retorno

varbinary com no máximo 8.000 bytes.

Comentários

A criptografia e descriptografia com uma chave assimétrica é muito dispendiosa comparada à criptografia e descriptografia com uma chave simétrica. Recomendamos que você não criptografe conjuntos de dados grandes, como dados de usuário em tabelas, usando uma chave assimétrica. Em vez disso, criptografe os dados usando uma chave simétrica forte e criptografe a chave simétrica usando uma chave assimétrica.

Exemplos

O exemplo a seguir criptografa o texto armazenado em @cleartext com o a chave assimétrica JanainaAsymKey02. Os dados criptografados são inseridos na tabela ProtectedData04.

INSERT INTO [AdventureWorks2008R2].[Sales].[ProtectedData04] 
    values( N'data encrypted by asymmetric key ''JanainaAsymKey02''',
    EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) )
GO