ENCRYPTBYCERT (Transact-SQL)
Dane są szyfrowane przy użyciu klucz publicznego z certyfikat.
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, które będą szyfrowane przy użyciu klucz publicznego z certyfikat.
Zwracane typy
varbinary Maksymalny rozmiar 8000 bajtów.
Remarks
Ta funkcja szyfruje dane za pomocą klucz publicznego z certyfikat.Szyfrowany mogą być odszyfrowane tylko za pomocą odpowiedniego klucz prywatnego.Takie asymetrycznego przekształceń są bardzo kosztowne w porównaniu do szyfrowanie i odszyfrowywania klucz zawartości.Szyfrowanie asymetryczne z tego względu nie zaleca się 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 przechowywanych w @cleartext przy użyciu certyfikat o nazwie JanainaCert02. Do tabela zostanie wstawiony zaszyfrowanych danych ProtectedData04.
INSERT INTO [AdventureWorks].[ProtectedData04]
values( N'data encrypted by certificate ''Shipping04''',
EncryptByCert(Cert_ID('JanainaCert02'), @cleartext) );
GO