Compartir a través de


DECRYPTBYASYMKEY (Transact-SQL)

Descifra datos con una clave asimétrica.

Icono de vínculo a temas Convenciones de sintaxis de Transact-SQL

Sintaxis

DecryptByAsymKey (Asym_Key_ID , { 'ciphertext' | @ciphertext } 
    [ , 'Asym_Key_Password' ] )

Argumentos

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

  • ciphertext
    Cadena de datos cifrados con la clave asimétrica.

  • @ciphertext
    Variable de tipo varbinary que contiene datos cifrados con la clave asimétrica.

  • Asym_Key_Password
    Contraseña utilizada para cifrar la clave asimétrica en la base de datos.

Tipos de valor devueltos

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

Comentarios

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 el uso de una clave asimétrica cuando trabaje con grandes conjuntos de datos, por ejemplo, datos de usuario en las tablas.

Permisos

Requiere el permiso CONTROL en la clave asimétrica.

Ejemplos

En el ejemplo siguiente se descifra texto cifrado con la clave asimétrica JanainaAsymKey02, almacenada en AdventureWorks2012.ProtectedData04. Los datos devueltos se descifran con la clave asimétrica JanainaAsymKey02, que se ha descifrado con la contraseña pGFD4bb925DGvbd2439587y. El texto simple se convierte al tipo nvarchar.

SELECT CONVERT(nvarchar(max),
    DecryptByAsymKey( AsymKey_Id('JanainaAsymKey02'), 
    ProtectedData, N'pGFD4bb925DGvbd2439587y' )) 
AS DecryptedData 
FROM [AdventureWorks2012].[Sales].[ProtectedData04] 
WHERE Description = N'encrypted by asym key''JanainaAsymKey02''';
GO

Vea también

Referencia

ENCRYPTBYASYMKEY (Transact-SQL)

CREATE ASYMMETRIC KEY (Transact-SQL)

ALTER ASYMMETRIC KEY (Transact-SQL)

DROP ASYMMETRIC KEY (Transact-SQL)

Conceptos

Elegir un algoritmo de cifrado

Jerarquía de cifrado