DECRYPTBYASYMKEY (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Cette fonction utilise une clé asymétrique pour déchiffrer les données chiffrées.

Conventions de la syntaxe Transact-SQL

Syntaxe

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

Arguments

Asym_Key_ID
ID d’une clé asymétrique dans la base de données. Asym_Key_ID a le type de données int.

ciphertext
Chaîne de données chiffrées avec la clé asymétrique.

@ciphertext
Variable de type varbinary contenant des données 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 de retour

varbinary d’une taille maximale de 8 000 octets.

Notes

Le chiffrement/déchiffrement à clé asymétrique a un coût élevé par rapport au chiffrement/déchiffrement à clé symétrique. Pour les jeux de données volumineux (par exemple, des données utilisateur stockées dans des tables), nous recommandons aux développeurs d’éviter le chiffrement/déchiffrement à clé symétrique.

Autorisations

DECRYPTBYASYMKEY nécessite l’autorisation CONTROL sur la clé asymétrique.

Exemples

Cet exemple déchiffre le texte chiffré à l’origine avec la clé asymétrique JanainaAsymKey02. Cette clé asymétrique était stockée dans AdventureWorks2022.ProtectedData04. L’exemple déchiffrait les données retournées avec la clé asymétrique JanainaAsymKey02. L’exemple utilisait le mot de passe pGFD4bb925DGvbd2439587y pour déchiffrer cette clé asymétrique. L’exemple convertissait le texte en clair retourné en type nvarchar.

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

Voir aussi

ENCRYPTBYASYMKEY (Transact-SQL)
CREATE ASYMMETRIC KEY (Transact-SQL)
ALTER ASYMMETRIC KEY (Transact-SQL)
DROP ASYMMETRIC KEY (Transact-SQL)
Choisir un algorithme de chiffrement
Hiérarchie de chiffrement