ENCRYPTBYCERT (Transact-SQL)
Szyfruje dane za pomocą publicznego klucz certyfikat.
Składnia
EncryptByCert ( certificate_ID , { 'cleartext' | @cleartext } )
Argumenty
certificate_ID
Identyfikator certyfikat w bazie danych.int.cleartext
ciąg danych, które będą szyfrowane przy użyciu certyfikat.@zwykły tekst
Zmienna typu nvarchar, char, varchar, binary, varbinary, lub nchar zawierającego dane będą szyfrowane przy użyciu publicznego klucz certyfikat.
Zwracane typy
varbinaryMaksymalny rozmiar 8000 bajtów.
Uwagi
Ta funkcja szyfruje dane za pomocą publicznego klucz certyfikat.Szyfrowany można odszyfrować tylko z odpowiedniego kluczprywatnego.Takie asymetrycznego przekształcenia są bardzo kosztowne w porównaniu do szyfrowanie i odszyfrowywania przy użyciu kluczsymetrycznego.szyfrowanie asymetryczne w związku z tym nie jest zalecane podczas pracy z dużych zestawów danych, takich jak dane użytkownika w tabelach.
Przykłady
W tym przykładzie są szyfrowane zwykły tekst , przechowywane w @cleartext z certyfikat o nazwie JanainaCert02.Zaszyfrowane dane do tabelazostanie wstawionyProtectedData04.
INSERT INTO [AdventureWorks2008R2].[ProtectedData04]
values( N'data encrypted by certificate ''Shipping04''',
EncryptByCert(Cert_ID('JanainaCert02'), @cleartext) );
GO