DECRYPTBYASYMKEY (Transact-SQL)
Déchiffre les données à l'aide d'une clé asymétrique.
Syntaxe
DecryptByAsymKey (Asym_Key_ID , { 'ciphertext' | @ciphertext }
[ , 'Asym_Key_Password' ] )
Arguments
Asym_Key_ID
ID d'une clé asymétrique de la base de données. L'argument Asym_Key_ID est de type int.ciphertext
Chaîne de données chiffrée avec la clé asymétrique.@ciphertext
Variable de type varbinary contenant des données qui ont été chiffrées avec la clé asymétrique.Asym_Key_Password
Mot de passe utilisé pour chiffrer la clé asymétrique dans la base de données.
Types des valeurs renvoyées
Variable binaire varbinary de 8 000 octets au maximum.
Notes
Le chiffrement et le déchiffrement avec une clé asymétrique sont coûteux par rapport au chiffrement et au déchiffrement avec une clé symétrique. Il n'est pas recommandé d'utiliser une clé asymétrique avec des ensembles de données volumineux par exemple, avec des données utilisateur issues de tables.
Autorisations
Requiert l'autorisation CONTROL sur la clé asymétrique.
Exemples
Le code exemple suivant déchiffre le texte chiffré avec la clé asymétrique JanainaAsymKey02, stockée dans AdventureWorks.ProtectedData04. Les données renvoyées sont déchiffrées à l'aide de la clé asymétrique JanainaAsymKey02, qui a été déchiffrée avec le mot de passe pGFD4bb925DGvbd2439587y. Le texte brut est converti en type nvarchar.
SELECT CONVERT(nvarchar(max),
DecryptByAsymKey( AsymKey_Id('JanainaAsymKey02'),
ProtectedData, N'pGFD4bb925DGvbd2439587y' ))
AS DecryptedData
FROM [AdventureWorks].[Sales].[ProtectedData04]
WHERE Description = N'encrypted by asym key''JanainaAsymKey02''';
GO