DECRYPTBYPASSPHRASE (Transact-SQL)
Esegue la decrittografia dei dati crittografati con una passphrase.
Non sono necessarie autorizzazioni per eseguire questa funzione.
Restituisce NULL se viene utilizzata una passphrase non corretta o informazioni errate sull'autenticatore.
La passphrase viene utilizzata per generare una chiave di decrittografia, che non sarà persistente.
Se è stato incluso un autenticatore al momento della crittografia del testo non crittografato, l'autenticatore deve essere incluso anche in fase di decrittografia. Se il valore dell'autenticatore fornito in fase di decrittografia non corrisponde al valore dell'autenticatore crittografato con i dati, non sarà possibile completare la decrittografia.
Nell'esempio seguente viene decrittografato il record aggiornato in EncryptByPassPhrase.
USE AdventureWorks2008R2;
-- Get the pass phrase from the user.
DECLARE @PassphraseEnteredByUser nvarchar(128);
SET @PassphraseEnteredByUser
= 'A little learning is a dangerous thing!';
-- Decrypt the encrypted record.
SELECT CardNumber, CardNumber_EncryptedbyPassphrase
AS 'Encrypted card number', CONVERT(nvarchar,
DecryptByPassphrase(@PassphraseEnteredByUser, CardNumber_EncryptedbyPassphrase, 1
, CONVERT(varbinary, CreditCardID)))
AS 'Decrypted card number' FROM Sales.CreditCard
WHERE CreditCardID = '3681';
GO
