DECRYPTBYASYMKEY (Transact-SQL)
Odszyfrowuje dane z kluczasymetrycznego.
Składnia
DecryptByAsymKey (Asym_Key_ID , { 'ciphertext' | @ciphertext }
[ , 'Asym_Key_Password' ] )
Argumenty
Asym_Key_ID
Jest to identyfikator klucz asymetrycznego w bazie danych.Asym_Key_IDis int.ciphertext
Jest to ciąg danych niezaszyfrowanych z kluczasymetrycznego.@ dekodującym
Jest zmienną typu varbinary zawierający dane, które zostały zaszyfrowane z kluczasymetrycznego.Asym_Key_Password
To hasło, które zostało użyte do zaszyfrowania klucz asymetrycznego w bazie danych.
Zwracane typy
varbinaryMaksymalny rozmiar 8000 bajtów.
Uwagi
Szyfrowania lub odszyfrowywania z klucz asymetrycznego jest bardzo kosztowne w porównaniu z /decryption szyfrowaniesymetrycznego klucz.Nie zaleca się używania klucz asymetrycznego, podczas pracy z dużych zestawów danych, takich jak dane użytkownika w tabelach.
Uprawnienia
Wymaga uprawnienie Kontrola kluczasymetrycznego.
Przykłady
Poniższy przykład odszyfrowuje tekstu, który został zaszyfrowany za pomocą kluczasymetrycznegoJanainaAsymKey02, które są przechowywane w AdventureWorks2008R2.ProtectedData04. Zwrócone dane są odszyfrowywane przy użyciu kluczasymetrycznegoJanainaAsymKey02, odszyfrowaniu hasłem pGFD4bb925DGvbd2439587y. zwykły tekst jest konwertowany na wpisz nvarchar.
SELECT CONVERT(nvarchar(max),
DecryptByAsymKey( AsymKey_Id('JanainaAsymKey02'),
ProtectedData, N'pGFD4bb925DGvbd2439587y' ))
AS DecryptedData
FROM [AdventureWorks2008R2].[Sales].[ProtectedData04]
WHERE Description = N'encrypted by asym key''JanainaAsymKey02''';
GO