Udostępnij za pomocą


ENCRYPTBYCERT (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Szyfruje dane kluczem publicznym certyfikatu.

Transact-SQL konwencje składni

Składnia

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

Arguments

certificate_ID
ID certyfikatu w bazie danych. int.

Tekst jawny
Ciąg danych, który zostanie zaszyfrowany certyfikatem.

@cleartext
Zmienna jednego z następujących typów, która zawiera dane zaszyfrowane kluczem publicznym certyfikatu:

  • nvarchar
  • Char
  • varchar
  • binary
  • varbinary
  • nchar

Typy zwracane

warbinary o maksymalnym rozmiarze 8 000 bajtów.

Uwagi

Funkcja ta szyfruje dane kluczem publicznym certyfikatu. Szyfrogram można odszyfrować tylko za pomocą odpowiadającego mu klucza prywatnego. Te asymetryczne transformacje są kosztowne w porównaniu z szyfrowaniem i deszyfrowaniem za pomocą klucza symetrycznego. Dlatego szyfrowanie asymetryczne nie jest zalecane przy pracy z dużymi zbiorami danych.

Przykłady

Ten przykład szyfruje tekst jawny przechowywany w z @cleartext certyfikatem o nazwie JanainaCert02. Zaszyfrowane dane są wstawiane do tabeli ProtectedData04.

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

Zobacz też

DECRYPTBYCERT (Transact-SQL)
UTWÓRZ CERTYFIKAT (Transact-SQL)
CERTYFIKAT ALTERA (Transact-SQL)
CERTYFIKAT DROP (Transact-SQL)
certyfikat kopii zapasowej (Transact-SQL)
Hierarchia szyfrowania