ENCRYPTBYASYMKEY (Transact-SQL)

Chiffre les données avec une clé asymétrique.

Icône Lien de rubriqueConventions de la syntaxe Transact-SQL

Syntaxe

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

Arguments

  • Asym_Key_ID
    ID d'une clé asymétrique dans la base de données. int.

  • cleartext
    Chaîne de données qui seront chiffrées avec la clé asymétrique.

  • @plaintext
    Variable de type nvarchar, char, varchar, binary, varbinary ou nchar qui contient les données devant être chiffrées avec la clé asymétrique.

Type des valeurs renvoyées

Variable binaire varbinary dont la taille maximale est de 8 000 octets.

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 est déconseillé d'utiliser une clé asymétrique pour chiffrer des ensembles de données volumineux ; par exemple, des données utilisateur issues de tables. Utilisez plutôt une clé symétrique forte pour chiffrer les données, et chiffrez la clé symétrique à l'aide d'une clé asymétrique.

Exemple

L'exemple suivant chiffre le texte stocké dans @cleartext à l'aide de la clé asymétrique JanainaAsymKey02. Les données chiffrées sont insérées dans la table ProtectedData04.

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