Поделиться через


DecryptByCert (Transact-SQL)

Расшифровывает данные при помощи закрытого ключа сертификата.

Значок ссылки на разделСоглашения о синтаксисе в Transact-SQL

Синтаксис

DecryptByCert ( 
                            certificate_ID , 
              { 'ciphertext' | @ciphertext } 
              [ , { 'cert_password' | @cert_password } ]
                            )

Аргументы

  • certificate_ID
    Идентификатор сертификата в базе данных. int.
  • ciphertext
    Строка данных, которая была зашифрована при помощи открытого ключа сертификата.
  • @ciphertext
    Переменная типа varbinary. Содержит данные, которые были зашифрованы с помощью сертификата.
  • cert_password
    Пароль, который использовался для шифрования закрытого ключа сертификата. Должен быть в Юникоде.
  • @cert_password
    Переменная типа nchar или nvarchar, содержащая пароль, который использовался для шифрования закрытого ключа сертификата. Должна быть в Юникоде.

Типы возвращаемых данных

varbinary с максимальным размером 8 000 байт.

Замечания

Эта функция расшифровывает данные при помощи закрытого ключа сертификата. Криптографические преобразования с использованием асимметричных ключей требуют значительных ресурсов. Поэтому функции EncryptByCert и DecryptByCert не подходят для операций шифрования пользовательских данных.

Примеры

В следующем примере производится выборка строк из таблицы [AdventureWorks].[ProtectedData04], помеченных как data encrypted by certificate JanainaCert02. Пример дешифрует зашифрованный текст с помощью закрытого ключа сертификата JanainaCert02, который сначала дешифруется с помощью пароля сертификата, pGFD4bb925DGvbd2439587y. Расшифрованные данные преобразуются из типа varbinary в тип nvarchar.

SELECT convert(nvarchar(max), DecryptByCert(Cert_Id('JanainaCert02'),
    ProtectedData, N'pGFD4bb925DGvbd2439587y'))
FROM [AdventureWorks].[ProtectedData04] 
WHERE Description 
    = N'data encrypted by certificate '' JanainaCert02''';
GO

См. также

Справочник

EncryptByCert (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
DROP CERTIFICATE (Transact-SQL)
BACKUP CERTIFICATE (Transact-SQL)

Другие ресурсы

Иерархия средств шифрования

Справка и поддержка

Получение помощи по SQL Server 2005