Sdílet prostřednictvím


DECRYPTBYCERT (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Tato funkce využívá soukromý klíč certifikátu k dešifrování šifrovaných dat.

Transact-SQL konvence syntaxe

Syntaxe

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

Arguments

certificate_ID
ID certifikátu v databázi. certificate_ID má typ dat INT .

Ciphertext
Řetězec dat zašifrovaný veřejným klíčem certifikátu.

@ciphertext
Proměnná typu varbinární obsahující data zašifrovaná certifikátem.

cert_password
Heslo použité k šifrování privátního klíče certifikátu. cert_password musí mít datový formát Unicode.

@cert_password
Proměnná typu nchar nebo nvarchar obsahující heslo použité k zašifrování soukromého klíče certifikátu. @cert_password musí mít datový formát Unicode.

Návratové typy

varbinary, s maximální velikostí 8 000 bajtů.

Poznámky

Tato funkce dešifruje data pomocí soukromého klíče certifikátu. Kryptografické transformace využívající asymetrické klíče spotřebovávají značné zdroje. Proto doporučujeme vývojářům vyhnout se používání souborů ENCRYPTBYCERT a DECRYPTBYCERT pro rutinní šifrování / dešifrování uživatelských dat.

Povolení

DECRYPTBYCERT vyžaduje na certifikátu povolení CONTROL.

Examples

Tento příklad vybírá řádky z označených [AdventureWorks2022].[ProtectedData04] jako data původně zašifrovaná certifikátem JanainaCert02. Příklad nejprve dešifruje soukromý klíč certifikátu JanainaCert02 heslem k certifikátu pGFD4bb925DGvbd2439587y. Poté příklad dešifruje šifrovaný text tímto soukromým klíčem. Příklad převádí dešifrovaná data z varbinárních na nvarchar.

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

Viz také

ENCRYPTBYCERT (Transact-SQL)
VYTVOŘIT CERTIFIKÁT (Transact-SQL)
ALTERŮV CERTIFIKÁT (Transact-SQL)
CERTIFIKÁT ODHOĎTE (Transact-SQL)
BACKUP CERTIFICATE (Transact-SQL)
Hierarchie šifrování