ENCRYPTBYCERT (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Krypterar data med den publika nyckeln till ett certifikat.

Transact-SQL syntaxkonventioner

Syntax

EncryptByCert ( certificate_ID , { 'cleartext' | @cleartext } )  

Arguments

certificate_ID
ID:t för ett certifikat i databasen. int.

Klartext
En datasträng som kommer att krypteras med certifikatet.

@cleartext
En variabel av följande typer som innehåller data som kommer att krypteras med certifikatets publika nyckel:

  • nvarchar
  • tecken
  • varchar
  • binary
  • varbinary
  • nchar

Returtyper

varbinär med en maximal storlek på 8 000 byte.

Anmärkningar

Denna funktion krypterar data med certifikatets publika nyckel. Chiffertexten kan endast dekrypteras med motsvarande privata nyckel. Dessa asymmetriska transformationer är kostsamma jämfört med kryptering och dekryptering med en symmetrisk nyckel. Därför rekommenderas inte asymmetrisk kryptering när man arbetar med stora datamängder.

Examples

Detta exempel krypterar klartexten som lagras i @cleartext med certifikatet kallat JanainaCert02. Den krypterade datan infogas i tabellen ProtectedData04.

INSERT INTO [AdventureWorks2022].[ProtectedData04]   
    VALUES ( N'Data encrypted by certificate ''Shipping04''',  
    EncryptByCert(Cert_ID('JanainaCert02'), @cleartext) );  
GO  

Se även

DECRYPTBYCERT (Transact-SQL)
SKAPA CERTIFIKAT (Transact-SQL)
ALTER-CERTIFIKAT (Transact-SQL)
SLÄPP CERTIFIKAT (Transact-SQL)
SÄKERHETSKOPIERINGSCERTIFIKAT (Transact-SQL)
Krypteringshierarki