ENCRYPTBYASYMKEY (Transact-SQL)
Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance
Fungsi ini mengenkripsi data dengan kunci asimetris.
Sintaks
EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )
Argumen
asym_key_ID
ID kunci asimetris dalam database. asym_key_ID memiliki jenis data int.
cleartext
String data yang ENCRYPTBYASYMKEY
akan dienkripsi dengan kunci asimetris. cleartext dapat memiliki
- biner
- Char
- nchar
- nvarchar
- varbinary
or
- varchar
jenis data.
@plaintext
Variabel yang menyimpan nilai yang ENCRYPTBYASYMKEY
akan dienkripsi dengan kunci asimetris. @plaintext dapat memiliki
- biner
- Char
- nchar
- nvarchar
- varbinary
or
- varchar
jenis data.
Jenis Kembalian
varbinary, dengan ukuran maksimum 8.000 byte.
Keterangan
Operasi enkripsi dan dekripsi yang menggunakan kunci asimetris menggunakan sumber daya yang signifikan, sehingga menjadi mahal dibandingkan dengan enkripsi dan dekripsi kunci konten. Kami menyarankan agar pengembang menghindari enkripsi kunci asimetris dan operasi dekripsi pada himpunan data besar - misalnya, himpunan data pengguna yang disimpan dalam tabel database. Sebagai gantinya, kami menyarankan agar pengembang terlebih dahulu mengenkripsi data tersebut dengan kunci konten yang kuat, lalu mengenkripsi kunci konten tersebut dengan kunci asimetris.
Bergantung pada algoritma, ENCRYPTBYASYMKEY
mengembalikan NULL jika input melebihi jumlah byte tertentu. Batas tertentu:
- kunci RSA 512-bit dapat mengenkripsi hingga 53 byte
- kunci 1024-bit dapat mengenkripsi hingga 117 byte
- kunci 2048-bit dapat mengenkripsi hingga 245 byte
Di SQL Server, sertifikat dan kunci asimetris berfungsi sebagai pembungkus atas kunci RSA.
Contoh
Contoh ini mengenkripsi teks yang disimpan @cleartext
dengan kunci JanainaAsymKey02
asimetris . Pernyataan menyisipkan data terenkripsi ke ProtectedData04
dalam tabel.
INSERT INTO AdventureWorks2022.Sales.ProtectedData04
VALUES( N'Data encrypted by asymmetric key ''JanainaAsymKey02''',
EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) );
GO
Lihat Juga
DECRYPTBYASYMKEY (Transact-SQL)
MEMBUAT KUNCI ASIMETRIS (Transact-SQL)
Hierarki Enkripsi