Udostępnij za pośrednictwem


ENCRYPTBYASYMKEY (Transact-SQL)

Szyfruje dane z kluczasymetrycznego.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )

Argumenty

  • Asym_Key_ID
    Jest to identyfikator klucz asymetrycznego w bazie danych.int.

  • cleartext
    Jest to ciąg danych, które będą zaszyfrowane za pomocą kluczasymetrycznego.

  • @zwykły tekst
    Jest zmienną typu nvarchar, char, varchar, binary, varbinary, lub nchar zawierający dane, które mają być szyfrowane za pomocą kluczasymetrycznego.

Zwracane typy

varbinaryMaksymalny rozmiar 8000 bajtów.

Uwagi

Szyfrowanie i odszyfrowywanie za klucz asymetrycznego jest bardzo kosztowne w porównaniu z szyfrowanie i odszyfrowywania symetrycznego klucz.Zaleca się, aby nie szyfrowania dużych zestawach danych, takich jak dane użytkownika w tabelach, przy użyciu kluczasymetrycznego.Należy szyfrować dane za pomocą silnego klucz symetrycznego i szyfrowania symetrycznego klucz przy użyciu kluczasymetrycznego.

Przykłady

Poniższy przykład szyfruje tekstu przechowywanego w @cleartext z kluczasymetrycznego JanainaAsymKey02.Zaszyfrowane dane jest wstawiany do ProtectedData04 tabela.

INSERT INTO [AdventureWorks2008R2].[Sales].[ProtectedData04] 
    values( N'data encrypted by asymmetric key ''JanainaAsymKey02''',
    EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) )
GO