ENCRYPTBYASYMKEY (Transact-SQL)

Cifra datos con una clave asimétrica.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

  • Asym_Key_ID
    Id. de una clave asimétrica en la base de datos. int.

  • cleartext
    Cadena de datos que se cifrará con la clave asimétrica.

  • @plaintext
    Variable de tipo nvarchar, char, varchar, binary, varbinary o nchar que contiene datos que se van a cifrar con la clave asimétrica.

Tipos de valor devueltos

varbinary con un tamaño máximo de 8.000 bytes.

Notas

El cifrado/descifrado con una clave asimétrica es muy costoso si lo comparamos con el cifrado/descifrado con una clave simétrica. No es recomendable cifrar con una clave asimétrica grandes conjuntos de datos, como los datos de usuarios almacenados en tablas. En lugar de ello, se deben cifrar los datos con una clave simétrica segura y cifrar la clave simétrica con una clave asimétrica.

Ejemplos

En el ejemplo siguiente se cifra el texto almacenado en @cleartext con la clave asimétrica JanainaAsymKey02. Los datos cifrados se insertan en la tabla ProtectedData04.

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