ENCRYPTBYCERT (SQL bertransaksi)

Berlaku untuk:yes SQL Server (semua versi yang didukung) YesAzure SQL Database YesAzure SQL Managed Instance

Mengenkripsi data dengan kunci publik sertifikat.

Topic link iconKonvensi Sintaksis T-SQL

Sintaks

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

Catatan

Untuk melihat sintaks transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

certificate_ID
ID sertifikat dalam database. int.

teks kosong
String data yang akan dienkripsi dengan sertifikat.

@cleartext
Variabel dari salah satu jenis berikut yang berisi data yang akan dienkripsi dengan kunci umum sertifikat:

  • nvarchar
  • char
  • varchar
  • binary
  • varbinary
  • nchar

Jenis Pengembalian

varbinary dengan ukuran maksimum 8.000 byte.

Keterangan

Fungsi ini mengenkripsi data dengan kunci umum sertifikat. Ciphertext hanya dapat didekripsi dengan kunci privat yang sesuai. Transformasi asimetris ini mahal jika dibandingkan dengan enkripsi dan dekripsi menggunakan kunci simetris. Dengan demikian, enkripsi asimetris tidak disarankan saat bekerja dengan himpunan data besar.

Contoh

Contoh ini mengenkripsi teks biasa yang disimpan dengan @cleartext sertifikat yang disebut JanainaCert02. Data terenkripsi dimasukkan ke dalam tabel ProtectedData04.

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

Lihat juga

DECRYPTBYCERT (SQL bertransaksi)
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
HILANGKAN SERTIFIKAT (SQL Bertransaksi)
SERTIFIKAT CADANGAN (SQL Bertransaksi)
Hierarki Enkripsi