Questo argomento non è stato ancora valutato - Valuta questo argomento

DECRYPTBYPASSPHRASE (Transact-SQL)

Esegue la decrittografia dei dati crittografati con una passphrase.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL


DecryptByPassPhrase ( { 'passphrase' | @passphrase } 
        , { 'ciphertext' | @ciphertext }
    [ , { add_authenticator | @add_authenticator }
        , { authenticator | @authenticator } ] )
passphrase

Passphrase che verrà utilizzata per generare la chiave per la decrittografia.

@passphrase

Variabile di tipo nvarchar, char, varchar o nchar contenente la passphrase da utilizzare per generare la chiave per la decrittografia.

'ciphertext'

Testo crittografato da decrittografare.

@ciphertext

Variabile di tipo varbinary contenente il testo crittografato. Le dimensioni massime sono pari a 8.000 byte.

add_authenticator

Indica se un autenticatore è stato crittografato insieme al testo normale. Il valore è 1 se è stato utilizzato un autenticatore. int.

@add_authenticator

Indica se un autenticatore è stato crittografato insieme al testo normale. Il valore è 1 se è stato utilizzato un autenticatore. int.

authenticator

Dati relativi all'autenticatore. sysname.

@authenticator

Variabile contenente i dati da cui derivare un autenticatore.

varbinary con un valore massimo di 8.000 byte.

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
Il documento è risultato utile?
(1500 caratteri rimanenti)

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
© 2013 Microsoft. Tutti i diritti riservati.