EncryptByCert (Transact-SQL)
Chiffre des données au moyen de la clé publique d'un certificat.
Conventions de la syntaxe de Transact-SQL
Syntaxe
EncryptByCert ( certificate_ID , { 'cleartext' | @cleartext } )
Arguments
- certificate_ID
ID d'un certificat de la base de données. int.
- cleartext
Chaîne de données chiffrées avec le certificat.
- @cleartext
Variable de type nvarchar, char, varchar, binary, varbinary ou nchar dont les données seront chiffrées avec la clé publique du certificat.
Notes
Cette fonction chiffre des données au moyen de la clé publique d'un certificat. Seule la clé privée correspondante peut déchiffrer le texte chiffré. De telles transformations asymétriques sont coûteuses par rapport au chiffrement/déchiffrement avec une clé symétrique. Par conséquent, le chiffrement asymétrique n'est pas recommandé avec des ensembles de données volumineux tels que les données utilisateur dans des tables.
Type des valeurs renvoyées
Variable binaire varbinary de 8 000 octets au maximum.
Exemples
Cet exemple chiffre le texte en clair stocké dans @cleartext
avec le certificat JanainaCert02
. Les données chiffrées sont insérées dans la table ProtectedData04
.
INSERT INTO [AdventureWorks].[ProtectedData04]
values( N'data encrypted by certificate ''Shipping04''',
EncryptByCert(Cert_ID('JanainaCert02'), @cleartext) );
GO
Voir aussi
Référence
DecryptByCert (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
DROP CERTIFICATE (Transact-SQL)
BACKUP CERTIFICATE (Transact-SQL)